Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)
-
- Интересующийся
- Сообщения: 17
- Зарегистрирован: 27 янв 2017, 17:02
- Репутация: 0
Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)
Доброго времени суток всем!
Я занимаюсь разработкой гис-модуля для нашей платформы(далее платформа). На уровне модели платформа работает с так называемыми бизнес-объектами(БО), у каждого БО есть его экземпляры. К любому экземпляру БО системы могут быть привязаны список геообъектов(маркер, полигон, полилиния и тд), хранящиеся в некой внутренней структуре.
Мне было поручено разработка сервисов для интеграции с внешними системами. Рядом с сервером приложения платформы развернуты osm-сервер с картой России(в данный момент используется как тейловый сервер) и geoserver(пока точно непонятно нужен он ля платформы или нет).
На данный момент более интересен WFS-сервер, который позволяет так же кроме отдачи векторных данных, так же их редактировать.
Посмотрел примеры, посмотрел спецификацию, почитал статьи...
И первый низкоуровневый вопрос, как разработчика - мне получается нужно вручную, при обращении в моему wfs сервису, формировать xml и отправлять кленту? и главное что бы были разделы:wfs:WFS_Capabilities, FeatureTypeList, FeatureType, если это касается реквеста GetCapabilities. Но это как то не здорово, или я горожу велосипед. Или есть какой то стандартный шаблон, на который я натравляю только свои данные и получается xml стандартного для сервиса вида?
Я посомтрел что возвращает geoserver и там очень много информации, по мимо контактной информации, разные поддерживаемые форматы и фильтры и много чего еще. И это формирование вручную очень напряжно как мне кажется, что то должно быть проще...
И по поводу передачи версии сервиса в запросе: в чем его смысл вообще, если я отдам то что отдам и не зависимо от того какую версию запрашивают хоть 10-ю.
Это что касается WFS.
Теперь WMS - передача растровых данных. Читал в статье что можно сделать что бы отдавался растровый участок карты полученный из склейки какого то дефолтного тейла и векторных данных. Каким образом это реализовать? Я так понимаю это делается в osm-сервере.
Заранее спасибо за ответ
Я занимаюсь разработкой гис-модуля для нашей платформы(далее платформа). На уровне модели платформа работает с так называемыми бизнес-объектами(БО), у каждого БО есть его экземпляры. К любому экземпляру БО системы могут быть привязаны список геообъектов(маркер, полигон, полилиния и тд), хранящиеся в некой внутренней структуре.
Мне было поручено разработка сервисов для интеграции с внешними системами. Рядом с сервером приложения платформы развернуты osm-сервер с картой России(в данный момент используется как тейловый сервер) и geoserver(пока точно непонятно нужен он ля платформы или нет).
На данный момент более интересен WFS-сервер, который позволяет так же кроме отдачи векторных данных, так же их редактировать.
Посмотрел примеры, посмотрел спецификацию, почитал статьи...
И первый низкоуровневый вопрос, как разработчика - мне получается нужно вручную, при обращении в моему wfs сервису, формировать xml и отправлять кленту? и главное что бы были разделы:wfs:WFS_Capabilities, FeatureTypeList, FeatureType, если это касается реквеста GetCapabilities. Но это как то не здорово, или я горожу велосипед. Или есть какой то стандартный шаблон, на который я натравляю только свои данные и получается xml стандартного для сервиса вида?
Я посомтрел что возвращает geoserver и там очень много информации, по мимо контактной информации, разные поддерживаемые форматы и фильтры и много чего еще. И это формирование вручную очень напряжно как мне кажется, что то должно быть проще...
И по поводу передачи версии сервиса в запросе: в чем его смысл вообще, если я отдам то что отдам и не зависимо от того какую версию запрашивают хоть 10-ю.
Это что касается WFS.
Теперь WMS - передача растровых данных. Читал в статье что можно сделать что бы отдавался растровый участок карты полученный из склейки какого то дефолтного тейла и векторных данных. Каким образом это реализовать? Я так понимаю это делается в osm-сервере.
Заранее спасибо за ответ
-
- Гуру
- Сообщения: 3321
- Зарегистрирован: 27 июл 2009, 19:26
- Репутация: 748
- Ваше звание: Вредитель полей
Re: Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)
Из чего вы сделали вывод, что ответ на GetCapabilities нужно предварительно написать вручную? Он создается сервером на основании конфигурации. У вас очень странные представления о том, как все это работает. Может стоит почитать документацию, а не изучать методом тыка?
- Denis Rykov
- Гуру
- Сообщения: 3376
- Зарегистрирован: 11 апр 2008, 21:09
- Репутация: 529
- Ваше звание: Author
- Контактная информация:
Re: Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)
Да, если вы пишите свой сервис, то нужно иметь некоторые шаблоны ответов, который должны быть заполнены в соответствии с запрашиваемыми параметрами. Вот исходники одно WFS сервера, посмотрите, может понятнее станет как оно работает: https://github.com/mapserver/tinyows
Spatial is now, more than ever, just another column- The Geometry Column.
-
- Интересующийся
- Сообщения: 17
- Зарегистрирован: 27 янв 2017, 17:02
- Репутация: 0
Re: Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)
Я и пишу сервер... И конфигурацию определяю сам в соответствии с запросом пользователя.ericsson писал(а):Из чего вы сделали вывод, что ответ на GetCapabilities нужно предварительно написать вручную? ...
Спасибо, примерно так я и делаю... Просто формирование самого шаблона получается из спека только? Нет нигде стандартного шаблона для использования... В целом понятно.Denis Rykov писал(а):Да, если вы пишите свой сервис, то нужно иметь некоторые шаблоны ответов, ...
И фильтры я сам реализовываю я так понимаю и они могут быть любые(или как то жестко регламентированы), так?
А про WMS сервис нет никакой информации со стороны разработки?
Спасибо
-
- Интересующийся
- Сообщения: 34
- Зарегистрирован: 21 янв 2011, 08:31
- Репутация: 7
- Откуда: Пермь
-
- Интересующийся
- Сообщения: 17
- Зарегистрирован: 27 янв 2017, 17:02
- Репутация: 0
Re: Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)
Для этого все и затевается. Понятноkuzkok писал(а):... чтобы была возможность работать с вашим сервисом и не вашему ПО(тот же QGIS, uDig, etc)
-
- Интересующийся
- Сообщения: 17
- Зарегистрирован: 27 янв 2017, 17:02
- Репутация: 0
Re: Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)
Вообщем не благодарное это дело - писать самому эти стандартизированные сервисы. Самое лучшее решение переложить это на плечи например geoserver, который все это умеет делать и просто интегрировать его со своей системой. Или через geojson либо через scripting(WPS).
Так что вот такие выводы!
Всем удачи
Так что вот такие выводы!
Всем удачи
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость