Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)

Не знаете, где задать вопрос? Задавайте здесь.
Ответить
kasik
Интересующийся
Сообщения: 17
Зарегистрирован: 27 янв 2017, 17:02
Репутация: 0

Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)

Сообщение kasik » 27 янв 2017, 17:46

Доброго времени суток всем!

Я занимаюсь разработкой гис-модуля для нашей платформы(далее платформа). На уровне модели платформа работает с так называемыми бизнес-объектами(БО), у каждого БО есть его экземпляры. К любому экземпляру БО системы могут быть привязаны список геообъектов(маркер, полигон, полилиния и тд), хранящиеся в некой внутренней структуре.

Мне было поручено разработка сервисов для интеграции с внешними системами. Рядом с сервером приложения платформы развернуты osm-сервер с картой России(в данный момент используется как тейловый сервер) и geoserver(пока точно непонятно нужен он ля платформы или нет).

На данный момент более интересен WFS-сервер, который позволяет так же кроме отдачи векторных данных, так же их редактировать.

Посмотрел примеры, посмотрел спецификацию, почитал статьи...

И первый низкоуровневый вопрос, как разработчика - мне получается нужно вручную, при обращении в моему wfs сервису, формировать xml и отправлять кленту? и главное что бы были разделы:wfs:WFS_Capabilities, FeatureTypeList, FeatureType, если это касается реквеста GetCapabilities. Но это как то не здорово, или я горожу велосипед. Или есть какой то стандартный шаблон, на который я натравляю только свои данные и получается xml стандартного для сервиса вида?

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

И по поводу передачи версии сервиса в запросе: в чем его смысл вообще, если я отдам то что отдам и не зависимо от того какую версию запрашивают хоть 10-ю.

Это что касается WFS.

Теперь WMS - передача растровых данных. Читал в статье что можно сделать что бы отдавался растровый участок карты полученный из склейки какого то дефолтного тейла и векторных данных. Каким образом это реализовать? Я так понимаю это делается в osm-сервере.

Заранее спасибо за ответ

ericsson
Гуру
Сообщения: 3321
Зарегистрирован: 27 июл 2009, 19:26
Репутация: 748
Ваше звание: Вредитель полей

Re: Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)

Сообщение ericsson » 27 янв 2017, 19:19

Из чего вы сделали вывод, что ответ на GetCapabilities нужно предварительно написать вручную? Он создается сервером на основании конфигурации. У вас очень странные представления о том, как все это работает. Может стоит почитать документацию, а не изучать методом тыка?

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)

Сообщение Denis Rykov » 27 янв 2017, 23:19

Да, если вы пишите свой сервис, то нужно иметь некоторые шаблоны ответов, который должны быть заполнены в соответствии с запрашиваемыми параметрами. Вот исходники одно WFS сервера, посмотрите, может понятнее станет как оно работает: https://github.com/mapserver/tinyows
Spatial is now, more than ever, just another column- The Geometry Column.

kasik
Интересующийся
Сообщения: 17
Зарегистрирован: 27 янв 2017, 17:02
Репутация: 0

Re: Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)

Сообщение kasik » 30 янв 2017, 10:54

ericsson писал(а):Из чего вы сделали вывод, что ответ на GetCapabilities нужно предварительно написать вручную? ...
Я и пишу сервер... И конфигурацию определяю сам в соответствии с запросом пользователя.
Denis Rykov писал(а):Да, если вы пишите свой сервис, то нужно иметь некоторые шаблоны ответов, ...
Спасибо, примерно так я и делаю... Просто формирование самого шаблона получается из спека только? Нет нигде стандартного шаблона для использования... В целом понятно.
И фильтры я сам реализовываю я так понимаю и они могут быть любые(или как то жестко регламентированы), так?

А про WMS сервис нет никакой информации со стороны разработки?

Спасибо

kuzkok
Интересующийся
Сообщения: 34
Зарегистрирован: 21 янв 2011, 08:31
Репутация: 7
Откуда: Пермь

Re: Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)

Сообщение kuzkok » 30 янв 2017, 13:03

Все сервисы стандартизированы OGC, например WMS, или фильтры. Конечно ничего не мешает вам реализовывать свои фильтры, но стандарта желательно придерживаться, чтобы была возможность работать с вашим сервисом и не вашему ПО(тот же QGIS, uDig, etc)

kasik
Интересующийся
Сообщения: 17
Зарегистрирован: 27 янв 2017, 17:02
Репутация: 0

Re: Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)

Сообщение kasik » 30 янв 2017, 14:23

kuzkok писал(а):... чтобы была возможность работать с вашим сервисом и не вашему ПО(тот же QGIS, uDig, etc)
Для этого все и затевается. Понятно

kasik
Интересующийся
Сообщения: 17
Зарегистрирован: 27 янв 2017, 17:02
Репутация: 0

Re: Создание своего стека сервисов OWS(WFS, WMS, WCS, WPS)

Сообщение kasik » 08 фев 2017, 13:46

Вообщем не благодарное это дело - писать самому эти стандартизированные сервисы. Самое лучшее решение переложить это на плечи например geoserver, который все это умеет делать и просто интегрировать его со своей системой. Или через geojson либо через scripting(WPS).

Так что вот такие выводы!

Всем удачи

Ответить

Вернуться в «Я новичок!»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость