В данном руководстве описывается, как опубликовать сервис Web Feature Service (WFS) на ArcGIS Server с помощью ArcMap. Спецификация WFS опубликована Open Geospatial Consortium, Inc. (OGC), для предоставления географических объектов через интернет. Если картографический сервис или сервис геоданных публикуется через WFS, то данные будут доступны с помощью клиентов WFS, совместимых со спецификациями OGC, включая дополнительный модуль ArcGIS Data Interoperability extension for Desktop вArcGIS Desktop. Эти клиенты WFS могут также отслеживать последние изменения данных. Если необходимо получить дополнительные сведения о сервисах WFS до работы с этим руководством, см. раздел Сервисы WFS.
Действия перед выполнением этого руководства
Если вы только что установили ArcGIS Server, то прежде, чем вы сможете подключиться к серверу и публиковать сервисы, вам необходимо выполнить некоторые подготовительные действия:
- Подробные инструкции по настройке вашего сайта ArcGIS Server см. в разделе Приступая к работе после установки данной справочной системы.
- Сведения о том, как сделать данные, на которые ссылается ресурс ГИС, доступными на сервере, см. в разделе Предоставление доступа к данным в ArcGIS Server.
Выбор между сервисом геоданных или картографическим сервисом
При использовании сервисов WFS появляется возможность публикации сервиса геоданных или картографического сервиса. Существует ряд различий, о которых следует помнить при выборе создаваемого типа сервиса. В следующих разделах приводятся общие сведения о функциональных возможностях, доступных в картографическом сервисе и сервисе геоданных, что позволит понять, какой тип сервиса более всего соответствует текущим требованиям.
Сервис геоданных
Сервис геоданных WFS позволяет получить доступ к базе геоданных рабочей группы, предприятия или файловой базе геоданных через Интернет или с помощью любого OGC-совместимого клиента WFS. При создании сервиса WFS на основе сервиса геоданных важно учитывать то, что все классы объектов в базе геоданных будут представлены в этом сервисе.
Сервисы геоданных удобно использовать, если необходимо получить доступ к удаленным базам геоданных. К примеру, компания может создать многопользовательские базы геоданных для управления данными в своих отделениях в Лос-Анджелесе и Нью-Йорке. После создания своей многопользовательской базы геоданных отделение может опубликовать ее в Интернете с помощью сервиса геоданных.
Картографический сервис
Картографический сервис WFS представляет собой документ карты, который доступен другим пользователям в Интернете или в любом клиенте WFS, совместимом с требованиями OGC. Картографические сервисы с функциональностью WFS обеспечивают большую степень управления данными, опубликованными в сервисе. Ниже приведены распространенные причины использования картографического сервиса:
- В отличие от сервиса геоданных, картографический сервис может включать данные из различных источников, в том числе из нескольких баз геоданных и шейп-файлов.
- Можно выбрать, какие классы объектов будут доступны в картографическом сервисе.
- Можно переименовать классы объектов в документе карты, чтобы сервис не предоставлял фактические названия и имена из источника данных.
Существуют также некоторые ограничения, связанные с картографическими сервисами WFS. При публикации сервиса WFS из документа карты учитывайте следующее:
- Документ карты представляет собой спецификацию слоев, которые будут доступны в сервисе WFS. Символы, определения запросов и псевдонимы полей, определенные на уровне слоя, не будет передаваться в сервис WFS, так как целью этого сервиса является предоставление доступа к объектам данных. Чтобы предоставить доступ к визуальным свойствам карты с использованием спецификаций OGC, используйте сервис WMS.
- Два и более слоя карты не могут иметь одинаковое имя.
- Так как WFS работает только с объектами, любые растровые слои карты будут исключены из сервиса.
- Непространственные таблицы не предоставляются.
- Если необходимо, чтобы сервис WFS поддерживал транзакции редактирования (WFS-T), исходные данные для всех слоев карты должны находиться в одном рабочем пространстве, например в одной многопользовательской базе геоданных.
Публикация сервиса WFS в ArcGIS Server
Чтобы начать публикацию сервиса WFS, выполните следующие шаги:
- Следуйте указаниям, приведенным в следующей таблице, основанным на типе сервиса, который вы хотите опубликовать на сервере:
Опция Описание Для публикации картографического сервиса WFS...
...откройте документ карты в ArcMap, выберите Файл > Опубликовать как > Сервис > Опубликовать сервис и щелкните Далее.
Для публикации сервиса геоданных WFS...
...перейдите к базе геоданных рабочей группы, предприятия или файловой базе геоданных в ArcCatalog или окне Каталог, щелкните ее правой кнопкой мыши и выберите Опубликовать как сервис геоданных.
- В диалоговом окне Опубликовать как сервис выберите Опубликовать сервис и щелкните Далее.
Появится диалоговое окно Публикация сервиса.
- В диалоговом окне Опубликовать сервис щелкните Подключиться к ArcGIS Server для создания нового подключения к серверу.
Откроется окно Добавить ArcGIS Server.
- В окне Добавить ArcGIS Server выберите Опубликовать ГИС-сервисы и щелкните Далее.
- Введите URL сайта ArcGIS Server, к которому нужно подключиться, в поле URL сервера. Например, http://gisserver.domain.com:6080/arcgis.
- В раскрывающемся списке Тип сервера выберите ArcGIS Server.
- Во время публикации создается файл определения сервиса, который затем временно сохраняется на локальном диске. Когда процесс публикации завершается, определение сервиса загружается на сервер, а локальный файл удаляется. Для этого упражнения примите папку размещения по умолчанию и продолжайте.
- Если администратор безопасности включил функции безопасности для сайта, введите Имя пользователя и Пароль и щелкните Готово.
- При необходимости в окне Опубликовать сервис введите новое имя сервиса. Имя может содержать только цифры, буквы, подчеркивания и не может быть длиннее 120 символов. Щелкните Далее.
- По умолчанию сервисы публикуются в корневой папке (root) в ArcGIS Server. Сервисы могут размещаться во вложенных папках корневой папки. Выберите папку, в которой требуется опубликовать сервис, или создайте новую папку для сервиса. Нажмите кнопку Продолжить.
- Появится Редактор сервисов. Редактор сервисов используется для выбора того, что пользователи могут делать с сервисом WFS, и управления предоставления доступа к сервису на сервере. Перейдите на вкладку Функции.
- По умолчанию, картирование и KML включены. Выберите WFS.
- На левой панели редактора сервисов щелкните WFS. Используйте эту панель для выбора метода настройки свойств сервиса WFS. При указании свойств сервиса WFS клиенты могут узнать больше об издателе сервиса.
- В поле URL отображается URL, используемый клиентами для доступа к сервису WFS. URL будет иметь следующий формат: http://gisserver.domain.com:6080/arcgis/rest/services/folder/service/MapServer/WFSServer.
Подсказка:
Скопируйте и сохраните URL сервиса WFS. Он понадобится для выполнения дополнительных действий в данном руководстве.
- Если вы хотите опубликовать сервис WFS с сгенерированными системой файлами функций, используйте опцию Ввести свойства сервиса ниже. Поля Name, Title и OnlineResource заполняются автоматически и их не следует изменять. При необходимости можно заполнить дополнительные свойства с помощью полей в этом списке. Дополнительную информацию см. в разделе Доступные свойства сервиса WFS.
- Если вы хотите настроить сервис WFS для использования внешних файлов функций, выберите параметр Использовать внешний файл функций. Для использования этой опции должен быть создан файл функциональности WFS. Дополнительные сведения см. в разделе Использование внешних файлов функций с сервисами WFS.
- В поле URL отображается URL, используемый клиентами для доступа к сервису WFS. URL будет иметь следующий формат: http://gisserver.domain.com:6080/arcgis/rest/services/folder/service/MapServer/WFSServer.
- Щелкните Анализировать .Документ карты или база геоданных будет проанализирована на возможность публикации ее на сервере.
Подсказка:
Чтобы расширить область просмотра при настойке сервиса WFS, щелкните кнопку Свернуть , расположенную в верхней части Редактора сервисов.
- Исправьте все Ошибки в окне Подготовка; это необходимо сделать до публикации. При необходимости, можно разрешить предупреждения и информационные сообщения, чтобы улучшить производительность и внешний вид сервиса WFS. Дополнительные сведения об устранении этих неполадок см. в разделе Анализ ГИС-ресурса.
Примечание:
Можно зарегистрировать папки и базы геоданных на сайте ArcGIS Server, чтобы сервер мог распознать и использовать ваши данные. Если продолжить выполнение следующих действий, все данные, указанные в ГИС-ресурсе, взятые из незарегистрированной папки или базы геоданных, будут скопированы на сервер во время публикации. Это мера предосторожности, гарантирующая, что сервер может получить доступ ко всем данным, используемым сервисом. Подробные инструкции по регистрации папки или базы геоданных на сайте ArcGIS Server см. в разделе Регистрация данных на ArcGIS Server с помощью ArcGIS Desktop.
- При необходимости в Редакторе сервисов щелкните Предварительный просмотр. Это позволит увидеть, как сервис WFS будет выглядеть при просмотре в браузере. Дополнительные сведения см. в разделе Предварительный просмотр карты.
- После устранения ошибок в документе карты или базе геоданных щелкните Опубликовать .
Использование сервиса WFS
После публикации сервиса WFS его можно использовать в любом клиенте, поддерживающем WFS 1.0.0, 1.1.0 или 2.0.0 и профиль Simple Features GML, включая веб-браузеры. Браузер – это один из самых простых клиентов сервиса WFS. Информацию можно запрашивать по протоколу HTTP, а ответы или исключения получать через браузер.
Следуйте приведенным ниже действиям для получения доступа к сервисам WFS через веб-браузер:
- Откройте веб-браузер.
- Выполните запросы GetCapabilities, DescribeFeatureType и GetFeature, как показано в следующих разделах.
GetCapabilities
Этот запрос возвращает все типы объектов и функции, доступные через сервис, в формате GML. Чтобы использовать операцию GetCapabilities, скопируйте и вставьте URL сервиса WFS в адресную строку и добавьте ?request=getcapabilities в конец URL.
Пример URL: http://gisserver.domain.com:6080/arcgis/services/wfs_services/enterprise_wfs/MapServer/WFSServer?service=WFS&request=GetCapabilities
На следующем рисунке представлен пример функциональности, возвращаемой операцией GetCapabilities:
GetCapabilities также возвращает список всех доступных классов и таблиц объектов:
DescribeFeatureType
Этот запрос описывает сведения о полях одного или нескольких объектов в сервисе WFS. К ним относятся имена полей, типы полей, разрешенные минимальные и максимальные значения полей и другие ограничения, заданные для поля классов или таблиц объектов.
Чтобы использовать операцию DescribeFeatureType, скопируйте и вставьте URL сервиса WFS в адресную строку и добавьте ?SERVICE=WFS&REQUEST=DescribeFeatureType&VERSION=2.0.0 в конец URL-адреса. Этот запрос возвращает сведения о полях каждого типа объектов и таблиц, доступных в сервисе.
Пример URL: http://gisserver.domain.com:6080/arcgis/services/wfs_services/enterprise_wfs/MapServer/WFSServer?SERVICE=WFS&REQUEST=DescribeFeatureType&VERSION=2.0.0
Добавление фильтров
Вы также можете указать один класс объектов или одну таблицу, для которой требуется получить сведения о полях, добавив следующий запрос в конец URL с именем типа объекта или таблицы: ?SERVICE=WFS&REQUEST=DescribeFeatureType&TypeName=<enter feature type here>&VERSION=2.0.0.
Дополнительную информацию о различных фильтрах, доступных в сервисах WSF, см. в разделе Взаимодействие с WFS сервисом в браузере.
В следующем примере запрос DescribeFeatureType используется для определения информации о полях для типа объектов continent:
Пример URL: http://gisserver.domain.com:6080/arcgis/services/wfs_services/enterprise_wfs/MapServer/WFSServer?SERVICE=WFS&REQUEST=DescribeFeatureType&typeName=Continent&VERSION=2.0.0
GetFeature
Этот запрос возвращает информацию об определенных типах объектов, доступных через сервис WFS.
Чтобы использовать операцию GetFeature в браузере, скопируйте и вставьте URL сервиса WFS в адресную строку и добавьте ?request=getFeature&typename=<enter feature type here> в конец URL. Этот запрос возвращает сведения об атрибутах и геометрии каждого объекта или каждой строки в типе объектов.
Пример URL: http://gisserver.domain.com:6080/arcgis/services/wfs_services/enterprise_wfs/MapServer/WFSServer?service=WFS&request=GetFeature&typeName=cities
Добавление фильтров
Вы также можете добавить в запрос фильтры, чтобы уточнить возвращаемые результаты. Например, можно запросить все города, попадающие в указанный диапазон координат. В следующем примере два города попадают в указанный диапазон координат. Дополнительную информацию о различных фильтрах, доступных в сервисах WSF, см. в разделе Взаимодействие с WFS сервисом в браузере.
Пример URL: http://gisserver.domain.com:6080/arcgis/services/wfs_services/enterprise_wfs/MapServer/WFSServer?service=WFS&request=GetFeature&typeName=cities&BBOX=46.90,-76.21,42.12,-72.88
Использование модуля Data Interoperability для подключения к сервису WFS
Дополнительный модуль ArcGIS Data Interoperability extension for Desktop позволяет считывать и записывать данные в форматах, отличных от форматов ArcGIS. Для подключения напрямую к внешним форматам данных Esri, в том числе сервисам WSF, можно использовать инструмент Подключение Interoperability в ArcCatalog или в окне Каталога в ArcGIS Desktop. После создания подключения источник данных появится под записью Подключение Interoperability в дереве каталога. Подключение аналогично любому набору данных в том смысле, что можно добавить его в таблицу содержания или использовать в инструментах геообработки.