Практики кодирования дополнительного модуля Server object (Объект сервера)
Для создания дополнительного модуля объекта картографического сервиса или сервиса изображений сервера (SOE), вы обычно пишите код, который применяет некоторые необходимые интерфейсы и реализует вашу бизнес-логику. Если вы работаете в Java, то можете начать создание SOE с использованием встроенного мастера Eclipse. Мастер обеспечивает внедрение SOE необходимых интерфейсов и возможность ответа на запросы веб-сервисов REST или SOAP с использованием классов в SOESupport.
Подробные инструкции о кодировании SOE вы можете найти в ArcObjects SDK:
Справка по написанию SOE на Java
Работа с картографическими сервисами
SOEs поддерживаются только для расширения картографических сервисов и сервисов изображений. Так как картографические сервисы и сервисы изображений используют файл определения сервиса и не осуществляют прямого доступа к документу карты (MXD), имеются некоторые классы, которых следует избегать и другие классы, которые предпочтительны при написании SOEs.
Избегайте использование ArcObjects из библиотеки Carto, которая специально разработана для использования с MXD. К ним относятся IMap, ILayer и элементы фреймов данных и компоновок страницы. Вместо этого используйте ArcObjects, разработанные для работы с картографическими сервисами, например, MapServer, MapLayerInfos и MapDescription. Используйте IMapServerDataAccess для доступа к набору данных, который лежит под каждым слоем в вашей карте.
Библиотеки, непосредственно не связанные с документом карты, такие как com.esri.arcgis.geometry и com.esri.arcgis.geodatabase, всегда допустимы для использования в SOEs.
Создание файла .soe
Начиная с ArcGIS 10.1 for Server, SOEs встроены в файл .soe. Если вы используете .NET, то файл .soe создается при построении проекта из шаблона SOE. Если вы используете Java, то будете создавать файл .soe с использованием встроенного мастера Eclipse. Файл .soe содержит всю информацию, необходимую для регистрации вашего SOE при помощи ArcGIS Server.