GeoServer, проблема с кодировкой

Mapserver, GeoServer, MapGuide, Google и другое ПО для веб-картографии
Ответить
taskmgr
Интересующийся
Сообщения: 18
Зарегистрирован: 16 апр 2010, 06:52
Репутация: 0

GeoServer, проблема с кодировкой

Сообщение taskmgr » 16 апр 2010, 10:11

Пытаюсь разобраться с геосервером, возникли проблемы с кодировкой семантики шейп-файлов.
Исходные DBF в кодировке 1251 (пробовал и в CP866), при импорте указываю эту кодировку.
При выводе на WMS картинку получаются надписи с апокрифами и тильдами всякими.
Весия сервера 2.0.*, пытался вчера ставить последнюю ночную сборку, не помогло.
Не подскажете, в чем дело или куда копать?

taskmgr
Новоприбывший

oxch
Участник
Сообщения: 53
Зарегистрирован: 04 мар 2010, 11:30
Репутация: 0
Откуда: Комсомольск-на-Амуре
Контактная информация:

Re: GeoServer, проблема с кодировкой

Сообщение oxch » 21 апр 2010, 09:31

У меня Geoserver работает со слоями, хранящимися в таблицах PostgreSQL.
Кодировка данных в shp-файлах win1251, кодировка в postgresql - utf8.
На сайте с данными работаю через OpenLayers и все хорошо.

В начале страницы указываю кодировку:
<head>
<meta http-equiv="Content-Type" content="text/html" charset="utf-8" />
</head>

главное при выгрузе shp-файлов указать из какой кодировке выгружать.
а shp2sql сам сделает конвертацию данных в кодировку сервера.
Чудес на свете не бывает, они просто случаются.
Знать - значит уметь использовать.
Интерактивная карта-схема Хабаровского края

taskmgr
Интересующийся
Сообщения: 18
Зарегистрирован: 16 апр 2010, 06:52
Репутация: 0

Re: GeoServer, проблема с кодировкой

Сообщение taskmgr » 21 апр 2010, 18:06

Ну, видимо, PostgreSQL выдает правильные данные, а чтение из DBF файлов происходит в GeoServer некорректно.
Когда задается новый источник данных Store типа Shapefile, то у него в свойствах есть charset, но, похоже, что это кодировка самого шейпфайла, а не соответствующего DBF-файла с атрибутами.
Проблему решило бы указание кодировки в стиле, что нибудь вроде такого
<TextSymbolizer>
<Label>
<ogc:PropertyName encoding="cp866">MyDBF_FieldName</ogc:PropertyName>
</Label>
</TextSymbolizer>
Но, к сожалению, не нашел ничего подобного.
А указание кодировки HTML-страницы в тэге <meta> вообще никак не может повлиять на отображаемый растровый рисунок, генерируемый сервером, поэтому в данном случае это точно не поможет.

oxch
Участник
Сообщения: 53
Зарегистрирован: 04 мар 2010, 11:30
Репутация: 0
Откуда: Комсомольск-на-Амуре
Контактная информация:

Re: GeoServer, проблема с кодировкой

Сообщение oxch » 23 апр 2010, 11:21

в разделе Global Settings Geoserver'а можно указать кодировку в которой он работает.
Если у вас все данные в DBF в одной кодировке, то попробуйте указать её же для
Geoserver'а.
Чудес на свете не бывает, они просто случаются.
Знать - значит уметь использовать.
Интерактивная карта-схема Хабаровского края

taskmgr
Интересующийся
Сообщения: 18
Зарегистрирован: 16 апр 2010, 06:52
Репутация: 0

Re: GeoServer, проблема с кодировкой

Сообщение taskmgr » 23 апр 2010, 12:54

Спасибо, попробую!

bms
Интересующийся
Сообщения: 16
Зарегистрирован: 12 дек 2009, 16:35
Репутация: 0
Откуда: Москва

Re: GeoServer, проблема с кодировкой

Сообщение bms » 25 янв 2011, 14:25

Та же проблема.
В Global Settings геосервера стоит charset UTF-8, файл *.dbf был перекодирован из cp1251 в utf-8 c помощью библиотеки dbf2py, как было описано здесь. В QGis шейп открывается в кодировке utf-8 и нет никаких проблем, но геосервер никак не хочет отображать кириллицу. Изначально шейп был создан в QGis из-под винды, геосервер 2.0.2 же работает на linux

demin.eugene
Новоприбывший
Сообщения: 6
Зарегистрирован: 29 дек 2010, 15:31
Репутация: 0

Re: GeoServer, проблема с кодировкой

Сообщение demin.eugene » 15 фев 2011, 14:35

Скорей всего проблема связана с неверной кодировкой установленной в датасорсе или воркплейсе (не помню где точно она ставится)

bms
Интересующийся
Сообщения: 16
Зарегистрирован: 12 дек 2009, 16:35
Репутация: 0
Откуда: Москва

Re: GeoServer, проблема с кодировкой

Сообщение bms » 16 фев 2011, 09:10

к сожалению нет, там UTF-8 прописывал сразу же

Аватара пользователя
Mavka
Гуру
Сообщения: 2060
Зарегистрирован: 14 мар 2008, 17:36
Репутация: 9

Re: GeoServer, проблема с кодировкой

Сообщение Mavka » 16 фев 2011, 10:31

геосервер никак не хочет отображать кириллицу
Попросите у GeoServer по WFS данные и посмотрите в какой они кодировке они на выходе. Определите какие преобразования нужно провести для приведения их в порядок.
лангольеры под окном жрали время ом-ном-ном

Kulikovpavel
Новоприбывший
Сообщения: 13
Зарегистрирован: 16 июн 2015, 11:34
Репутация: 0

Re: GeoServer, проблема с кодировкой

Сообщение Kulikovpavel » 16 июл 2015, 15:35

У меня тоже возникла эта проблема.
Есть шейп-файлы, dbf в кодировке UTF-8, в Геосервере везде установлена UTF-8, POstgresql - UTF-8
В результате импорта плагином Geoserverа в базу попадает кодировка iso8859-1, и на выходе обратно получается тарабарщина вроде
Непонятно направление кабелей, надо проверить.

Как бороться?
Geoserver через Tomcat7, если это имеет значение.

Я так понял, проблема именно с плагином импорта, потому что если сохранять данные через WFS - всё работает как надо, читает правильно.


Update - тот же плагин на тех же настройках нормально загрузил KML-файл. Значит проблема в плагине импорта и как минимум с shape-файлами. Напишу багрепорт им.

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

Re: GeoServer, проблема с кодировкой

Сообщение Филиппов Владислав » 21 июл 2015, 07:22

когда создаёте Хранилище (Store) из шейпов точно есть возможность выбрать кодировку. Дефолтная ISO-8859-1

Ответить

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

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

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