Страница 1 из 1

The requested Style can not be used with this layer

Добавлено: 09 сен 2010, 03:14
vasiko
Люди! Использую geoserver 2.0.1.
Я пытаюсь создать стиль для geoserver'a с использованием фильтров (примерно то, что в arcview в легенде уникальное значение по полю).
При попытке вставить в описание слоя конструкцию типа:
<ogc:Filter>
<ogc:PropertyIsEqualTo>
<ogc:PropertyName>v1</ogc:PropertyName>
<ogc:Literal>a</ogc:Literal>
</ogc:PropertyIsEqualTo>
</ogc:Filter>

получаю сообщение "The requested Style can not be used with this layer. The style specifies an attribute ", не подскажете, чем лечится? и лечится ли?
Создалось впечатление, что конструкции из ogc не воспринимаются как правильные...

Re: Начало работы с GeoServer

Добавлено: 17 сен 2010, 14:33
Mavka
Пример стиля для точечного слоя. В базе есть поле 'type' с числовым значением 0 или 1.

Код: Выделить всё

<sld:UserStyle xmlns="http://www.opengis.net/sld"
               xmlns:sld="http://www.opengis.net/sld"
               xmlns:ogc="http://www.opengis.net/ogc"
               xmlns:gml="http://www.opengis.net/gml">

    <sld:Name>sample_layer</sld:Name>
    <sld:Title>geoserver style</sld:Title>
    <sld:FeatureTypeStyle>
        <sld:FeatureTypeName>Feature</sld:FeatureTypeName>
        <sld:SemanticTypeIdentifier>generic:geometry</sld:SemanticTypeIdentifier>

        <!-- 00 -->
        <sld:Rule>
            <sld:Name>style_0</sld:Name>
            <sld:Title>00</sld:Title>
            <ogc:Filter>
                <ogc:PropertyIsEqualTo>
                    <ogc:PropertyName>type</ogc:PropertyName>
                    <ogc:Literal>0</ogc:Literal>
                </ogc:PropertyIsEqualTo>
            </ogc:Filter>
            <sld:PointSymbolizer>
                <!-- твое описание стиля, например, кружок -->
            </sld:PointSymbolizer>
        </sld:Rule>

        <!-- 01 -->
        <sld:Rule>
            <sld:Name>style_1</sld:Name>
            <sld:Title>01</sld:Title>
            <ogc:Filter>
                <ogc:PropertyIsEqualTo>
                    <ogc:PropertyName>type</ogc:PropertyName>
                    <ogc:Literal>1</ogc:Literal>
                </ogc:PropertyIsEqualTo>
            </ogc:Filter>
            <sld:PointSymbolizer>
                <!-- твое описание стиля, например, квадрат -->
            </sld:PointSymbolizer>
        </sld:Rule>

    </sld:FeatureTypeStyle>
</sld:UserStyle>