Skip To Content

Настройка автономной среды для JavaScript Viewer

Доступно с лицензией Workflow Manager.

JavaScript Viewer может быть настроен на использование локальных ресурсов в автономной среде, когда отсутствует подключение к интернету или оно запрещено вашей организацией.

Следующие элементы должны быть настроены на локальные ресурсы для автономного развертывания JavaScript Viewer:

  • ArcGIS Maps SDK for JavaScript
  • Сервисы ArcGIS:
    • Карты
    • Сервис геометрии
    • Сервисы локаторов
  • Font Awesome CDN

Более подробно о настройке ресурсов и сервисов на отключенном портале

Загрузка и изменение версии ArcGIS Maps SDK for JavaScript

Выполните следующие шаги, чтобы загрузить и изменить версию Maps SDK for JavaScript:

  1. Откройте файл index.html и определите, какая версия Maps SDK for JavaScript совместима с JavaScript Viewer.
  2. Загрузите соответствующую версию Maps SDK for JavaScript и разверните ее на вашем веб-сервере.
    Примечание:

    Версия Maps SDK for JavaScript предустановлена вместе с Portal for ArcGIS на Https://[hostname].[domain]/portal/jsapi/jsapi/.Если версия Maps SDK for JavaScript не соответствует версии, указанной в файле index.html, загрузите и установите соответствующую версию.

  3. Отредактируйте файл index.html с помощью текстового редактора и замените ссылки, приведенные ниже, версиями, установленными локально.

    Ссылки для замены:

    <link rel="stylesheet" href="//js.arcgis.com/[version]/esri/css/esri.css"> 
    <script type="text/javascript" src="//js.arcgis.com//[version]/"></script>

    На:

    <link rel="stylesheet" href="//[your-server].[domain]/jsapi/esri/css/esri.css"> 
    <script type="text/javascript" src="//[hostname].[domain]/jsapi/"></script>

    Или:

    <link rel="stylesheet" href="//[your-server].[domain]/portal/jsapi/jsapi/esri/css/esri.css"> 
    <script type="text/javascript" src="//[hostname].[domain]/portal/jsapi/jsapi/"></script>

Сервисы ArcGIS

Измените файл js/app/WorkflowManager/config/AppConfig.js так, чтобы он указывал на локальные сервисы.

Картографические сервисы

Чтобы использовать карты в автономном режиме, измените раздел map, чтобы он ссылался на локальные сервисы. В следующих таблицах описаны свойства для настройки кэшированных и не кэшированных картографических сервисов для автономных сред:

Галерея базовых картОписание
map.basemapGallery

Следующие свойства позволяют вам настроить кэшированный картографический сервис в качестве базовой карты для JavaScript Viewer. Виджет поддерживает только кэшированные картографические сервисы.

Более подробно о поддерживаемых типах базовых карт

  • isEnabled – задайте этот параметр, чтобы включить или отключить галерею карт для выбора базовых карт.
  • showArcGISBasemaps - для автономной среды задайте для этого параметра значение false. По умолчанию для этого свойства установлено значение true, что позволяет ссылаться на картографические сервисы в ArcGIS Online.
  • defaultBasemap - обновите это свойство именем вашей пользовательской базовой карты. Этот параметр задает базовую карту по умолчанию для галереи базовых карт.
  • customBasemaps – Обновите это свойство, чтобы оно указывало на ваши локальные сервисы базовых карт. Удалите улицы, гибридные и топографические базовые карты, ссылающиеся на сервисы ArcGIS Online. Ниже приведен пример:

    customBasemaps : [
      {
        id: “localbasemap",
        title: "localbasemap",
        layers: [{
          url: "https://[hostname].[domain]/arcgis/rest/services/[localbasemap]/MapServer"
        }],
        thumbnailUrl: "js/widget/gis/BasemapGallery/images/localbasemap.jpg"
      }
    ]

Пользовательская базовая картаОписание
map.customBasemap

Следующие свойства позволяют вам настроить не кэшированный картографический сервис в качестве базовой карты для JavaScript Viewer. Используйте эту конфигурацию, если опция basemapGallery не включена.

  • type - обновите это свойство типом некэшированного картографического сервиса, используемого вашей пользовательской базовой картой. Поддерживаемые типы включают динамические сервисы и сервисы изображений.
  • url — Обновите это свойство на REST URL вашего картографического сервиса.
  • options.id — Обновите это свойство идентификатором (ID) вашего картографического сервиса.
  • options.opacity – определяет непрозрачность картографического сервиса.
Примечание:

Доступны и другие конфигурации свойств. Обратитесь к конфигурации соответствующего слоя картографического сервиса, чтобы ознакомиться с дополнительными опциями.

Сервис геометрии

Обновите параметр geometryServiceURL, чтобы использовать локальный сервис геометрии, установленный вместе с ArcGIS Server. Например, http://[hostname].[domain]/arcgis/rest/services/Utilities/Geometry/GeometryServer.

Сервисы локаторов

Сервис локатора по умолчанию настроен на использование ArcGIS Online и недоступен в автономной среде. Используйте параметр locatorSources, чтобы предоставить ваши собственные сервисы локаторов для автономного развертывания.

ОписаниеСервисы локаторов
locatorSources

Массив пользовательских источников локаторов, которые будут использоваться при поиске.

Более подробно о настройке источников локаторов с помощью виджета поиска

Загрузите и разверните Font Awesome

JavaScript Viewer использует шрифт Font Awesome CDN. Вам необходимо загрузить инструментарий шрифта Font Awesome и развернуть его локально для автономных сред.

  1. Загрузить версию 3.2.1 Font Awesome
  2. Распакуйте файл архива и скопируйте папку в директорию развертывания вашего веб-приложения, например, C:\Inetpub\wwwroot\wmviewer\font-awesome\ArcGIS\Portal\apps\workflow\font-awesome.
  3. Откройте развернутый файл index.html в текстовом редакторе.
  4. Замените ссылку на шрифт Font Awesome CDN:

    Ссылки для замены:

    <link rel="stylesheet" type="text/css" href="//netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css">

    На:

    <link rel="stylesheet" type="text/css" href="//[hostname].[domain]/wmviewer/workflow/font-awesome/css/font-awesome.css">

    Или:

    <link rel="stylesheet" type="text/css" href="//[hostname].[domain]/portal/apps/workflow/font-awesome/css/font-awesome.css">