Страница 1 из 1
Удаленный SLD стиль для Mapserver
Добавлено: 28 сен 2011, 17:49
merc
Всем привет!
Никак не получается прикрутить стиль из удаленного SLD файла к нужному мне слою.
Подставлял в ссылку
http://server/cgi-bin/mapserver.exe.... ... ld.xml&...
Также прописывал в мап-файле
Код: Выделить всё
"wms_sld_url" "http://server2/path/to/sld.xml"
"wms_sld_body" "AUTO"
"ows_sld_enabled" "true"
Но эффекта никакого, выдает тот стиль что прописан поумолчанию в мапфайле CLASS ...END
Подскажите куда копать?
P.S SLD-стиль доступен по 80 порту, также проверялся на работоспособность с geoserver
Re: Удаленный SLD стиль для Mapserver
Добавлено: 29 сен 2011, 10:16
Mavka
Добавьте в map-файл:
Код: Выделить всё
CONFIG "MS_ERRORFILE" "/tmp/dbg.log"
DEBUG 5
При использовании
http://server/mapserver?...&SLD=http:// ... to/sld.xml&... и включенной отладке должен сохраняться временный map-файл с примененными стилями.
На всякий случай проверьте в файле SLD правильность тэга Name:
Код: Выделить всё
<sld:NamedLayer>
<se:Name>mylayer</se:Name>
P.S. Приведите заголовок своего стиля (до <sld:UserStyle>)
Re: Удаленный SLD стиль для Mapserver
Добавлено: 29 сен 2011, 13:34
merc
Спасибо mavka. Вот что выдают логи:
Код: Выделить всё
Thu Sep 29 14:18:57 2011].479000 CGI Request 1 on process 4880
[Thu Sep 29 14:18:58 2011].322000 msApplySLD(): Map file after SLD was applied /tmp/4e844612_1310_1._sld.map[Thu Sep 29 14:18:58 2011].322000 msWMSLoadGetMapParams(): enabling non-square pixels.
[Thu Sep 29 14:18:58 2011].322000 msDrawMap(): kicking into non-square pixel preserving mode.
[Thu Sep 29 14:18:58 2011].338000 msDrawMap(): WMS/WFS set-up and query, 0.016s
[Thu Sep 29 14:18:58 2011].697000 msDrawMap(): Layer 0 (moscow-roads-l), 0.359s
[Thu Sep 29 14:18:58 2011].697000 msDrawMap(): Drawing Label Cache, 0.000s
[Thu Sep 29 14:18:58 2011].697000 msDrawMap() total time: 0.375s
[Thu Sep 29 14:18:58 2011].728000 msSaveImage() total time: 0.031s
[Thu Sep 29 14:18:58 2011].728000 mapserv request processing time (msLoadMap not incl.): 1.249s
[Thu Sep 29 14:18:58 2011].728000 msFreeMap(): freeing map at 0228EFD8.
Файл стиля выложил тут:
http://pastebin.com/qQJq47r1
Во временном файле в части стиля выдает то же что и в базовом файле:
P.S 1)Должен ли я определять группы для стиля CLASSGROUP....NAME...GROUP...?
2)Расширение у файла стиля должен быть sld или xml? Обязательно ли добавлять в теги файла <sld:... NamedLayer? Тут такого я не нашел
http://mapserver.org/ogc/sld.html
Re: Удаленный SLD стиль для Mapserver
Добавлено: 29 сен 2011, 14:02
Mavka
1. Нет, это не нужно.
2. Расширение не имеет значения, любое.
3. Тэг sld не нужен, потому что вы его объявили как дефолтовый namespace:
и все что без ns, автоматически считается "sld:".
Поправил ошибки, документ теперь валидный:
Я просил уточнить содержимое NamedLayer. Судя по логу вы запрашиваете слой "moscow-roads-l", а в стиле его называете "style_osm_road". Они обязаны быть одинаковыми.
P.S. Форум поломал строку...