несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Mapserver, GeoServer, MapGuide, Google и другое ПО для веб-картографии
Аватара пользователя
Филиппов Владислав
Гуру
Сообщения: 1035
Зарегистрирован: 17 фев 2006, 06:28
Репутация: 144
Ваше звание: Геннадич
Откуда: Новосибирск
Контактная информация:

несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Филиппов Владислав »

Доброго всем дня.
У меня есть таблицы в PostGIS 2.0 с несколькими полями типа GEOMETRY. в geometry_columns они есть.
опубликованы в Geoserver 2.2 как слои.
сделано это как тут - http://docs.geoserver.org/stable/en/use ... ry-columns

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

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Denis Rykov »

А сам WMS слой нормально отображается? В любом случае можно сделать view с одним полем геометрии. Да, и что значит перестал работать, что приходит в ответ?
Spatial is now, more than ever, just another column- The Geometry Column.
Аватара пользователя
Филиппов Владислав
Гуру
Сообщения: 1035
Зарегистрирован: 17 фев 2006, 06:28
Репутация: 144
Ваше звание: Геннадич
Откуда: Новосибирск
Контактная информация:

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Филиппов Владислав »

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

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Denis Rykov »

То есть каждой поле геометрии опубликовано как отдельный слой? И все-таки что приходит от сервера в ответ?
Spatial is now, more than ever, just another column- The Geometry Column.
Аватара пользователя
Филиппов Владислав
Гуру
Сообщения: 1035
Зарегистрирован: 17 фев 2006, 06:28
Репутация: 144
Ваше звание: Геннадич
Откуда: Новосибирск
Контактная информация:

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Филиппов Владислав »

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

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Denis Rykov »

Я не знаток геосервера, но снаружи у вас этот слой RoadDraingeSegment выглядит как один слой, но по факту содержит несколько полей геометрий?
Spatial is now, more than ever, just another column- The Geometry Column.
Аватара пользователя
Филиппов Владислав
Гуру
Сообщения: 1035
Зарегистрирован: 17 фев 2006, 06:28
Репутация: 144
Ваше звание: Геннадич
Откуда: Новосибирск
Контактная информация:

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Филиппов Владислав »

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

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Denis Rykov »

А в чем проблема опубликовать его как 3 разных слоя? Мне кажется у такого подхода гораздо больше профита, плюс думаю это избавит вас от проблемы с GetFeatureInfo.
Spatial is now, more than ever, just another column- The Geometry Column.
Аватара пользователя
Филиппов Владислав
Гуру
Сообщения: 1035
Зарегистрирован: 17 фев 2006, 06:28
Репутация: 144
Ваше звание: Геннадич
Откуда: Новосибирск
Контактная информация:

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Филиппов Владислав »

я ж говорю, у меня 68 типов (таблиц), которые выгружаются из базы MS SQL Server'а, в которой в свою очередь в поле гометрии могут храниться любые геометрические типы. Ранее, при выгрузке в мою PostGIS, это приходило как ST_GeometryCollection. Визуализаторов в SLD для такого типа нет, нужно ятобы геометрия явно была типизирована. в документации к Geoserver'у я увидел решение этой проблемы - разделённые поля геометрии. Экспорт из MS SQL Server'а был переделан для разделения полей, я написал визуализаторы и всё получилось. НО! получить информацию с такого слоя пока невозможно. Ещё, при публикации слоя, автоматом не получается определить его экстент, скорее всего геосервер находит первое поле с точечной геометрией, а там NULL и он пишет нудевой экстент. Хотя если использовать функцию SELECT ST_Extent(geom_ln) as bextent FROM "RoadServiceSegment"; на поле с линейной геометрией, которая есть, то можно ручками прописать экстент при публикации слоя в геосервере и всё получается. Понимаю, извращённый случай, но таковы мои входные условия. В случае, если делать вью на каждый тип, то у меня будет 204 слоя - это здец полный!
Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Denis Rykov »

А разве нельзя не делая вью, в геосервере при создании WMS-слоя явно указать геометрию из какого поля ему следует брать? Ну или если у вас для одной записи только одно из полей геометрий заполнено, а остальные NULL, то и перенесите все геометрии в одно поле, а затем, наверное, следуя советам Styling mixed geometry types настройте их стили.
Spatial is now, more than ever, just another column- The Geometry Column.
Аватара пользователя
Филиппов Владислав
Гуру
Сообщения: 1035
Зарегистрирован: 17 фев 2006, 06:28
Репутация: 144
Ваше звание: Геннадич
Откуда: Новосибирск
Контактная информация:

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Филиппов Владислав »

можно меня ткнуть носом в сию фичу? даже если это возможно, например, как в QGIS при подключении WFS, он сам выбирает полюбившееся ему поле с геометрией и с ним он хорошо работает, но моя проблема не решится всё равно. у меня реально есть слои где 30/70 точки/полигоны, получается либо 30, либо 70 % инфы пропадёт, ну либо 200 слоёв.
Аватара пользователя
Филиппов Владислав
Гуру
Сообщения: 1035
Зарегистрирован: 17 фев 2006, 06:28
Репутация: 144
Ваше звание: Геннадич
Откуда: Новосибирск
Контактная информация:

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Филиппов Владислав »

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

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Denis Rykov »

Давайте определимся.
1) Вопрос изначально был про GetFeatureInfo, а это WMS и если вы сделаете одно поле с геометриями в PostGIS и настроите стиль, то этот WMS слой должен работать и в QGIS и в Web-клиенте, плюс в качестве бонуса вы получите рабочий не только GetMap запрос, но и GetFeatureInfo.
2) Теперь вы упоминаете WFS. Никаких проблем с отображением WFS в Web-клиенте вы не получите, а что касается QGIS - то тут такая модель данных - один тип геометрии = один слой, поэтому если вы подключитесь к своему WFS-слою или напрямую к постгис, то QGIS должен задетектить три разных слоя (по типу геометрии), хотя физически это будет один слой, добавляете эти три слоя в проект и все, не вижу проблем.
Spatial is now, more than ever, just another column- The Geometry Column.
Аватара пользователя
Филиппов Владислав
Гуру
Сообщения: 1035
Зарегистрирован: 17 фев 2006, 06:28
Репутация: 144
Ваше звание: Геннадич
Откуда: Новосибирск
Контактная информация:

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Филиппов Владислав »

вопрос про WMS.
про QGIS я в качестве примера сказал.

подключаться к PostGIS'у нельзя, всё должно быть WMS или WFS.
Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: несколько полей GEOMETRY и GetFeatueInfo от Geoserver

Сообщение Denis Rykov »

Вообщем объединение геометрий в одно поле - вот решение вашей проблемы, если нет возможности при публикации слоя явно указывать поле геометрии (хотя уверен, что такая возможность должна быть).
Spatial is now, more than ever, just another column- The Geometry Column.
Ответить

Вернуться в «Веб-картография»

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

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