[Geoserver-devel] [jira] (GEOS-6822) CSS Unable to extract scale range with more than two OR filters

Torsten Heinen created an issue

GeoServer / BugGEOS-6822

CSS Unable to extract scale range with more than two OR filters

Issue Type:

BugBug

Assignee:

Andrea Aime

Components:

CSS

Created:

08/Jan/15 7:24 AM

Priority:

MajorMajor

Reporter:

Torsten Heinen

CSS Translator is unable to extract scale range if rule has more than two OR’d filter.

/*
 * @title Restricted area
 * @abstract Restricted area layer
 */
restricted [cat='2'],[cat='3'],[cat='4'] [@scale <= 200000] [@scale > 100000] {
  fill: #EE0000;
}

Reproduce with style above on the default “sf:restricted” dataset and submit/validate or upload via REST. Exception:

java.lang.IllegalArgumentException: Failed to extract scale range from: Or [children=[And [children=[TypeName [name=restricted], OGCFilter [filter=cat = '3']]], And [children=[TypeName [name=restricted], ScaleRange [100000.0, 200000.0), OGCFilter [filter=cat = '4']]]]]
    at org.geotools.styling.css.util.ScaleRangeExtractor.getScaleRange(ScaleRangeExtractor.java:56)
    at org.geotools.styling.css.CssTranslator.flattenScaleRanges(CssTranslator.java:424)
    at org.geotools.styling.css.CssTranslator.translate(CssTranslator.java:290)
    at org.geoserver.community.css.web.CssHandler.convertToSLD(CssHandler.java:101)
    at org.geoserver.community.css.web.CssHandler.parse(CssHandler.java:75)
    at org.geoserver.config.GeoServerDataDirectory.parsedStyle(GeoServerDataDirectory.java:1248)
    at org.geoserver.catalog.ResourcePool.getStyle(ResourcePool.java:1722)
    at org.geoserver.catalog.impl.StyleInfoImpl.getStyle(StyleInfoImpl.java:102)
    at sun.reflect.GeneratedMethodAccessor225.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:483)
    at org.geoserver.catalog.impl.ModificationProxy.invoke(ModificationProxy.java:146)
    at com.sun.proxy.$Proxy12.getStyle(Unknown Source)
    at org.geoserver.wms.map.GetMapKvpRequestReader.getDefaultStyle(GetMapKvpRequestReader.java:499)
    at org.geoserver.wms.map.GetMapKvpRequestReader.read(GetMapKvpRequestReader.java:361)
    at org.geoserver.wms.map.GetMapKvpRequestReader.read(GetMapKvpRequestReader.java:83)
    at org.geoserver.ows.Dispatcher.parseRequestKVP(Dispatcher.java:1487)
    at org.geoserver.ows.Dispatcher.dispatch(Dispatcher.java:675)
    at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:270)
    ... 89 more

Add Comment

Add Comment

This message was sent by Atlassian JIRA (v6.1.6#6162-sha1:7af547c)

Atlassian logo