[Geoserver-devel] Properties of the output of a rendering transform cannot be used in Filters

Hi all,

I am having an issue with applying the PointStacker example SLD (http://dev.horizon.opengeo.org/opengeo-docs/cartography/rt/pointstacker.html) to one of my datasources.

I have built geoserver using the oracle,oracleDriver,wps,kml and feature-aggregate profiles. It also did not work w/o feature-aggregate. Geotools was built using –Dall. I have also had this issue on the 2.2.2 stable distribution.

My datasource (INCIDENTGEOM) is an Oracle spatial database table ( Oracle Database 10g Release 10.2.0.4.0), and I am using the master cut of Geoserver and master cut of Geotools (10-SNAPSHOT). If I click on KML (plain), in the LayerPreview screen, I get the following output on console :

08 Mar 12:09:58 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/it.geosolutions/wms]

08 Mar 12:09:58 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/it.geosolutions/wms]

08 Mar 12:09:58 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/it.geosolutions/wms]

08 Mar 12:09:58 DEBUG [ows.OWSHandlerMapping] - Mapping [/it.geosolutions/wms] to HandlerExecutionChain with handler [org.geoserver.ows.Dispatcher@anonymised.com] and 1 interceptor

08 Mar 12:09:58 INFO [geoserver.wms] -

Request: getServiceInfo

08 Mar 12:09:58 DEBUG [geoserver.ows] - Getting layers and styles from LAYERS and STYLES

08 Mar 12:09:58 DEBUG [geoserver.ows] - establishing stacked style for it.geosolutions:INCIDENTGEOM

08 Mar 12:09:58 DEBUG [geoserver.wms] - setting up map

08 Mar 12:09:58 INFO [geoserver.wms] -

Request: getMap

Time =

Format = application/vnd.google-earth.kml+xml

Filter = null

Buffer = 0

Width = 24750329

Filters = null

Height = 330

Palette = null

Tiled = false

SRS = EPSG:4326

FeatureVersion = null

Styles = [StyleImpl[ name=stacked]]

Layers = [org.geoserver.wms.MapLayerInfo@anonymised.com]

MaxFeatures = null

Bbox = ReferencedEnvelope[54.9999 : 70.0001, 69.9999 : 70.0001]

RemoteOwsType = null

RemoteOwsURL = null

Env = {}

FormatOptions = {}

Angle = 0.0

CQLFilter = null

Elevation =

FeatureId = null

StartIndex = null

ViewParams = null

Crs = GEOGCS[“WGS 84”,

DATUM[“World Geodetic System 1984”,

SPHEROID[“WGS 84”, 6378137.0, 298.257223563, AUTHORITY[“EPSG”,“7030”]],

AUTHORITY[“EPSG”,“6326”]],

PRIMEM[“Greenwich”, 0.0, AUTHORITY[“EPSG”,“8901”]],

UNIT[“degree”, 0.017453292519943295],

AXIS[“Geodetic longitude”, EAST],

AXIS[“Geodetic latitude”, NORTH],

AUTHORITY[“EPSG”,“4326”]]

BgColor = java.awt.Color[r=255,g=255,b=255]

Transparent = false

SldBody = null

ValidateSchema = false

Sld = null

SldVersion = null

TilesOrigin = null

Exceptions = SE_XML

Version = 1.1.0

Request = GetMap

RawKvp = {BBOX=54.9999,69.9999,70.0001,70.0001, VERSION=1.1.0, FORMAT=application/vnd.google-earth.kml+xml, SERVICE=WMS, HEIGHT=330, REQUEST=GetMap, LAYERS=it.geosolutions:INCIDENTGEOM, STYLES=, WIDTH=24750329, SRS=EPSG:4326}

Get = true

BaseUrl = http://localhost:9097/geoserver/

RequestCharset = UTF-8

08 Mar 12:09:58 DEBUG [geoserver.kml] - scale denominator = 240.95128850859533

08 Mar 12:09:58 ERROR [geoserver.ows] -

java.lang.IllegalArgumentException: Property ‘count’ could not be found in INCIDENTGEOM

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:787)

at org.geotools.filter.AttributeExpressionImpl.accept(AttributeExpressionImpl.java:381)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitBinaryComparisonOperator(PostPreProcessFilterSplittingVisitor.java:445)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:419)

at org.geotools.filter.IsLessThenOrEqualToImpl.accept(IsLessThenOrEqualToImpl.java:67)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitLogicOperator(PostPreProcessFilterSplittingVisitor.java:635)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:612)

at org.geotools.filter.NotImpl.accept(NotImpl.java:65)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitLogicOperator(PostPreProcessFilterSplittingVisitor.java:677)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:608)

at org.geotools.filter.AndImpl.accept(AndImpl.java:65)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitLogicOperator(PostPreProcessFilterSplittingVisitor.java:635)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:612)

at org.geotools.filter.NotImpl.accept(NotImpl.java:65)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitLogicOperator(PostPreProcessFilterSplittingVisitor.java:656)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:616)

at org.geotools.filter.OrImpl.accept(OrImpl.java:52)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitLogicOperator(PostPreProcessFilterSplittingVisitor.java:677)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:608)

at org.geotools.filter.AndImpl.accept(AndImpl.java:65)

at org.geotools.jdbc.JDBCFeatureSource.splitFilter(JDBCFeatureSource.java:375)

at org.geotools.jdbc.JDBCFeatureSource.splitFilter(JDBCFeatureSource.java:358)

at org.geotools.jdbc.JDBCFeatureSource.getBoundsInternal(JDBCFeatureSource.java:458)

at org.geotools.jdbc.JDBCFeatureStore.getBoundsInternal(JDBCFeatureStore.java:189)

at org.geotools.data.store.ContentFeatureSource.getBounds(ContentFeatureSource.java:426)

at org.geotools.data.store.ContentFeatureCollection.getBounds(ContentFeatureCollection.java:175)

at org.geoserver.kml.KMLVectorTransformer$KMLTranslator.encode(KMLVectorTransformer.java:105)

at org.geoserver.kml.KMLTransformer$KMLTranslator.encodeVectorLayer(KMLTransformer.java:219)

at org.geoserver.kml.KMLTransformer$KMLTranslator.encode(KMLTransformer.java:141)

at org.geotools.xml.transform.TransformerBase$XMLReaderSupport.parse(TransformerBase.java:977)

at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:484)

at org.geotools.xml.transform.TransformerBase$Task.run(TransformerBase.java:300)

at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:133)

at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:112)

at org.geoserver.wms.map.XMLTransformerMapResponse.write(XMLTransformerMapResponse.java:54)

at org.geoserver.wms.map.XMLTransformerMapResponse.write(XMLTransformerMapResponse.java:44)

at org.geoserver.ows.Dispatcher.response(Dispatcher.java:920)

at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:276)

at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)

at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)

at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)

at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)

at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)

at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)

at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)

at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:27)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:74)

at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:45)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:49)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:53)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:82)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)

at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:46)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173)

at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:103)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:75)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:47)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)

at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)

at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)

at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)

at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)

at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)

at org.mortbay.jetty.Server.handle(Server.java:324)

at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)

at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828)

at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)

at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)

at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)

at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)

08 Mar 12:09:58 DEBUG [geoserver.filters] - Compressing output for mimetype: application/vnd.ogc.se_xml; charset=UTF-8

08 Mar 12:09:58 DEBUG [filter.GeoServerSecurityContextPersistenceFilter$1] - SecurityContextHolder now cleared, as request processing completed

The SLD I used was :

<?xml version="1.0" encoding="ISO-8859-1"?>

<StyledLayerDescriptor version=“1.0.0”

xsi:schemaLocation=“http://www.opengis.net/sld StyledLayerDescriptor.xsd”

xmlns=“http://www.opengis.net/sld

xmlns:ogc=“http://www.opengis.net/ogc

xmlns:xlink=“http://www.w3.org/1999/xlink

xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”>

vol_stacked_point

Stacked Point

Styles volcanoes using stacked points

<ogc:Function name=“gs:PointStacker”>

<ogc:Function name=“parameter”>

ogc:Literaldata</ogc:Literal>

</ogc:Function>

<ogc:Function name=“parameter”>

ogc:LiteralcellSize</ogc:Literal>

ogc:Literal30</ogc:Literal>

</ogc:Function>

<ogc:Function name=“parameter”>

ogc:LiteraloutputBBOX</ogc:Literal>

<ogc:Function name=“env”>

ogc:Literalwms_bbox</ogc:Literal>

</ogc:Function>

</ogc:Function>

<ogc:Function name=“parameter”>

ogc:LiteraloutputWidth</ogc:Literal>

<ogc:Function name=“env”>

ogc:Literalwms_width</ogc:Literal>

</ogc:Function>

</ogc:Function>

<ogc:Function name=“parameter”>

ogc:LiteraloutputHeight</ogc:Literal>

<ogc:Function name=“env”>

ogc:Literalwms_height</ogc:Literal>

</ogc:Function>

</ogc:Function>

</ogc:Function>

rule1

Volcano

ogc:Filter

ogc:PropertyIsLessThanOrEqualTo

ogc:PropertyNamecount</ogc:PropertyName>

ogc:Literal1</ogc:Literal>

</ogc:PropertyIsLessThanOrEqualTo>

</ogc:Filter>

triangle

#FF0000

8

rule29

2-9 Volcanoes

ogc:Filter

ogc:PropertyIsBetween

ogc:PropertyNamecount</ogc:PropertyName>

ogc:LowerBoundary

ogc:Literal2</ogc:Literal>

</ogc:LowerBoundary>

ogc:UpperBoundary

ogc:Literal9</ogc:Literal>

</ogc:UpperBoundary>

</ogc:PropertyIsBetween>

</ogc:Filter>

circle

#AA0000

14

ogc:PropertyNamecount</ogc:PropertyName>

Arial

12

bold

0.5

0.8

2

#AA0000

0.9

#FFFFFF

1.0

rule10

> 10 Volcanoes

ogc:Filter

ogc:PropertyIsGreaterThan

ogc:PropertyNamecount</ogc:PropertyName>

ogc:Literal9</ogc:Literal>

</ogc:PropertyIsGreaterThan>

</ogc:Filter>

circle

#AA0000

22

ogc:PropertyNamecount</ogc:PropertyName>

Arial

12

bold

0.5

0.8

2

#AA0000

0.9

#FFFFFF

1.0

Any help greatly appreciated.

Cheers,

Michael Howells

Technical Application Engineer

GE Digital Energy

Australia and New Zealand

T - +61 3 8807 6847

E - Michael.Howells@anonymised.com

572 Swan Street

Richmond, VIC 3121, Australia

GE imagination at work

On Fri, Mar 8, 2013 at 2:14 AM, Howells, Michael (GE Global Operations) <Michael.Howells@anonymised.com> wrote:

Any help greatly appreciated.

Please open a bug report on jira.codeahus.org with details.
If you want to fast track the inclusion of a fix in the code base try to donate a patch yourself, or
if you prefer look into the commercial support section at geoserver.org

Cheers
Andrea

==
Our support, Your Success! Visit http://opensdi.geo-solutions.it for more information.

Ing. Andrea Aime
@geowolf
Technical Lead

GeoSolutions S.A.S.
Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 339 8844549

http://www.geo-solutions.it
http://twitter.com/geosolutions_it


See the note on the original version of that page:

https://github.com/opengeo/suite/blob/d035509e83bb1a3c292669b2f2328dcfb4240722/docs/usermanual/source/cartography/rt/pointstacker.rst

Due to a bug in the current release of the RenderingTransformation functionality, the input dataset must contains attributes with the names count and countUnique. The contents of the fields is not significant.

  • If the input is a file store, the file must be altered to contain columns with these names.
  • If the input is a database store, one way to provide the required columns is to define a SQL View with a query which includes extra columns with dummy values.

On Thu, Mar 7, 2013 at 5:14 PM, Howells, Michael (GE Global Operations) <Michael.Howells@anonymised.com> wrote:

Hi all,

I am having an issue with applying the PointStacker example SLD (http://dev.horizon.opengeo.org/opengeo-docs/cartography/rt/pointstacker.html) to one of my datasources.

I have built geoserver using the oracle,oracleDriver,wps,kml and feature-aggregate profiles. It also did not work w/o feature-aggregate. Geotools was built using –Dall. I have also had this issue on the 2.2.2 stable distribution.

My datasource (INCIDENTGEOM) is an Oracle spatial database table ( Oracle Database 10g Release 10.2.0.4.0), and I am using the master cut of Geoserver and master cut of Geotools (10-SNAPSHOT). If I click on KML (plain), in the LayerPreview screen, I get the following output on console :

08 Mar 12:09:58 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/it.geosolutions/wms]

08 Mar 12:09:58 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/it.geosolutions/wms]

08 Mar 12:09:58 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/it.geosolutions/wms]

08 Mar 12:09:58 DEBUG [ows.OWSHandlerMapping] - Mapping [/it.geosolutions/wms] to HandlerExecutionChain with handler [org.geoserver.ows.Dispatcher@anonymised.com] and 1 interceptor

08 Mar 12:09:58 INFO [geoserver.wms] -

Request: getServiceInfo

08 Mar 12:09:58 DEBUG [geoserver.ows] - Getting layers and styles from LAYERS and STYLES

08 Mar 12:09:58 DEBUG [geoserver.ows] - establishing stacked style for it.geosolutions:INCIDENTGEOM

08 Mar 12:09:58 DEBUG [geoserver.wms] - setting up map

08 Mar 12:09:58 INFO [geoserver.wms] -

Request: getMap

Time =

Format = application/vnd.google-earth.kml+xml

Filter = null

Buffer = 0

Width = 24750329

Filters = null

Height = 330

Palette = null

Tiled = false

SRS = EPSG:4326

FeatureVersion = null

Styles = [StyleImpl[ name=stacked]]

Layers = [org.geoserver.wms.MapLayerInfo@anonymised.com]

MaxFeatures = null

Bbox = ReferencedEnvelope[54.9999 : 70.0001, 69.9999 : 70.0001]

RemoteOwsType = null

RemoteOwsURL = null

Env = {}

FormatOptions = {}

Angle = 0.0

CQLFilter = null

Elevation =

FeatureId = null

StartIndex = null

ViewParams = null

Crs = GEOGCS[“WGS 84”,

DATUM[“World Geodetic System 1984”,

SPHEROID[“WGS 84”, 6378137.0, 298.257223563, AUTHORITY[“EPSG”,“7030”]],

AUTHORITY[“EPSG”,“6326”]],

PRIMEM[“Greenwich”, 0.0, AUTHORITY[“EPSG”,“8901”]],

UNIT[“degree”, 0.017453292519943295],

AXIS[“Geodetic longitude”, EAST],

AXIS[“Geodetic latitude”, NORTH],

AUTHORITY[“EPSG”,“4326”]]

BgColor = java.awt.Color[r=255,g=255,b=255]

Transparent = false

SldBody = null

ValidateSchema = false

Sld = null

SldVersion = null

TilesOrigin = null

Exceptions = SE_XML

Version = 1.1.0

Request = GetMap

RawKvp = {BBOX=54.9999,69.9999,70.0001,70.0001, VERSION=1.1.0, FORMAT=application/vnd.google-earth.kml+xml, SERVICE=WMS, HEIGHT=330, REQUEST=GetMap, LAYERS=it.geosolutions:INCIDENTGEOM, STYLES=, WIDTH=24750329, SRS=EPSG:4326}

Get = true

BaseUrl = http://localhost:9097/geoserver/

RequestCharset = UTF-8

08 Mar 12:09:58 DEBUG [geoserver.kml] - scale denominator = 240.95128850859533

08 Mar 12:09:58 ERROR [geoserver.ows] -

java.lang.IllegalArgumentException: Property ‘count’ could not be found in INCIDENTGEOM

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:787)

at org.geotools.filter.AttributeExpressionImpl.accept(AttributeExpressionImpl.java:381)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitBinaryComparisonOperator(PostPreProcessFilterSplittingVisitor.java:445)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:419)

at org.geotools.filter.IsLessThenOrEqualToImpl.accept(IsLessThenOrEqualToImpl.java:67)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitLogicOperator(PostPreProcessFilterSplittingVisitor.java:635)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:612)

at org.geotools.filter.NotImpl.accept(NotImpl.java:65)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitLogicOperator(PostPreProcessFilterSplittingVisitor.java:677)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:608)

at org.geotools.filter.AndImpl.accept(AndImpl.java:65)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitLogicOperator(PostPreProcessFilterSplittingVisitor.java:635)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:612)

at org.geotools.filter.NotImpl.accept(NotImpl.java:65)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitLogicOperator(PostPreProcessFilterSplittingVisitor.java:656)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:616)

at org.geotools.filter.OrImpl.accept(OrImpl.java:52)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visitLogicOperator(PostPreProcessFilterSplittingVisitor.java:677)

at org.geotools.filter.visitor.PostPreProcessFilterSplittingVisitor.visit(PostPreProcessFilterSplittingVisitor.java:608)

at org.geotools.filter.AndImpl.accept(AndImpl.java:65)

at org.geotools.jdbc.JDBCFeatureSource.splitFilter(JDBCFeatureSource.java:375)

at org.geotools.jdbc.JDBCFeatureSource.splitFilter(JDBCFeatureSource.java:358)

at org.geotools.jdbc.JDBCFeatureSource.getBoundsInternal(JDBCFeatureSource.java:458)

at org.geotools.jdbc.JDBCFeatureStore.getBoundsInternal(JDBCFeatureStore.java:189)

at org.geotools.data.store.ContentFeatureSource.getBounds(ContentFeatureSource.java:426)

at org.geotools.data.store.ContentFeatureCollection.getBounds(ContentFeatureCollection.java:175)

at org.geoserver.kml.KMLVectorTransformer$KMLTranslator.encode(KMLVectorTransformer.java:105)

at org.geoserver.kml.KMLTransformer$KMLTranslator.encodeVectorLayer(KMLTransformer.java:219)

at org.geoserver.kml.KMLTransformer$KMLTranslator.encode(KMLTransformer.java:141)

at org.geotools.xml.transform.TransformerBase$XMLReaderSupport.parse(TransformerBase.java:977)

at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:484)

at org.geotools.xml.transform.TransformerBase$Task.run(TransformerBase.java:300)

at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:133)

at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:112)

at org.geoserver.wms.map.XMLTransformerMapResponse.write(XMLTransformerMapResponse.java:54)

at org.geoserver.wms.map.XMLTransformerMapResponse.write(XMLTransformerMapResponse.java:44)

at org.geoserver.ows.Dispatcher.response(Dispatcher.java:920)

at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:276)

at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)

at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)

at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)

at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)

at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)

at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)

at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)

at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:27)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:74)

at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:45)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:49)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:53)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:82)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)

at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:46)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173)

at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:103)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:75)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:47)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)

at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)

at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)

at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)

at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)

at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)

at org.mortbay.jetty.Server.handle(Server.java:324)

at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)

at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828)

at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)

at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)

at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)

at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)

08 Mar 12:09:58 DEBUG [geoserver.filters] - Compressing output for mimetype: application/vnd.ogc.se_xml; charset=UTF-8

08 Mar 12:09:58 DEBUG [filter.GeoServerSecurityContextPersistenceFilter$1] - SecurityContextHolder now cleared, as request processing completed

The SLD I used was :

<?xml version="1.0" encoding="ISO-8859-1"?>

<StyledLayerDescriptor version=“1.0.0”

xsi:schemaLocation=“http://www.opengis.net/sld StyledLayerDescriptor.xsd”

xmlns=“http://www.opengis.net/sld

xmlns:ogc=“http://www.opengis.net/ogc

xmlns:xlink=“http://www.w3.org/1999/xlink

xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”>

vol_stacked_point

Stacked Point

Styles volcanoes using stacked points

<ogc:Function name=“gs:PointStacker”>

<ogc:Function name=“parameter”>

ogc:Literaldata</ogc:Literal>

</ogc:Function>

<ogc:Function name=“parameter”>

ogc:LiteralcellSize</ogc:Literal>

ogc:Literal30</ogc:Literal>

</ogc:Function>

<ogc:Function name=“parameter”>

ogc:LiteraloutputBBOX</ogc:Literal>

<ogc:Function name=“env”>

ogc:Literalwms_bbox</ogc:Literal>

</ogc:Function>

</ogc:Function>

<ogc:Function name=“parameter”>

ogc:LiteraloutputWidth</ogc:Literal>

<ogc:Function name=“env”>

ogc:Literalwms_width</ogc:Literal>

</ogc:Function>

</ogc:Function>

<ogc:Function name=“parameter”>

ogc:LiteraloutputHeight</ogc:Literal>

<ogc:Function name=“env”>

ogc:Literalwms_height</ogc:Literal>

</ogc:Function>

</ogc:Function>

</ogc:Function>

rule1

Volcano

ogc:Filter

ogc:PropertyIsLessThanOrEqualTo

ogc:PropertyNamecount</ogc:PropertyName>

ogc:Literal1</ogc:Literal>

</ogc:PropertyIsLessThanOrEqualTo>

</ogc:Filter>

triangle

#FF0000

8

rule29

2-9 Volcanoes

ogc:Filter

ogc:PropertyIsBetween

ogc:PropertyNamecount</ogc:PropertyName>

ogc:LowerBoundary

ogc:Literal2</ogc:Literal>

</ogc:LowerBoundary>

ogc:UpperBoundary

ogc:Literal9</ogc:Literal>

</ogc:UpperBoundary>

</ogc:PropertyIsBetween>

</ogc:Filter>

circle

#AA0000

14

ogc:PropertyNamecount</ogc:PropertyName>

Arial

12

bold

0.5

0.8

2

#AA0000

0.9

#FFFFFF

1.0

rule10

> 10 Volcanoes

ogc:Filter

ogc:PropertyIsGreaterThan

ogc:PropertyNamecount</ogc:PropertyName>

ogc:Literal9</ogc:Literal>

</ogc:PropertyIsGreaterThan>

</ogc:Filter>

circle

#AA0000

22

ogc:PropertyNamecount</ogc:PropertyName>

Arial

12

bold

0.5

0.8

2

#AA0000

0.9

#FFFFFF

1.0

Any help greatly appreciated.

Cheers,

Michael Howells

Technical Application Engineer

GE Digital Energy

Australia and New Zealand

T - +61 3 8807 6847

E - Michael.Howells@anonymised.com76…

572 Swan Street

Richmond, VIC 3121, Australia

GE imagination at work


Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester
Wave™: Endpoint Security, Q1 2013 and “remains a good choice” in the
endpoint security space. For insight on selecting the right partner to
tackle endpoint security challenges, access the full report.
http://p.sf.net/sfu/symantec-dev2dev


Geoserver-devel mailing list
Geoserver-devel@anonymised.comsts.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel