[Geoserver-users] Exception creating filter

Not sure if this is a bug but I am trying to create a WMS layer in Geoserver
with data from a WFS servlet that I have written.

When I get the WFS configured in Geoserver and generate a demo map I then
click on an icon expecting to see GetFeatureInfo data (from the WFS via the
WMS) I get the following error.

I am using Geoserver 1.7.4.

At this point no GetFeature request has come to the WFS so there is
something going amiss in the Geoserver processing of the WFS GetFeature
response it has already cached I suspect.

Thanks for any help.

org.geotools.xml.filter.UnsupportedFilterException: Exception creating
filter
        at
org.geotools.xml.filter.FilterEncodingPreProcessor.visit(FilterEncodingPreProcessor.java:222)
        at
org.geotools.filter.FilterVisitorFilterWrapper.visitLogicFilter(FilterVisitorFilterWrapper.java:68)
        at
org.geotools.filter.FilterVisitorFilterWrapper.visit(FilterVisitorFilterWrapper.java:100)
        at org.geotools.filter.AndImpl.accept(AndImpl.java:61)
        at
org.geotools.filter.AbstractFilter.accept(AbstractFilter.java:202)
        at org.geotools.filter.Filters.accept(Filters.java:250)
        at
org.geotools.data.wfs.v1_0_0.StrictWFSStrategy.wrapWithFilteringFeatureReader(StrictWFSStrategy.java:74)
        at
org.geotools.data.wfs.v1_0_0.NonStrictWFSStrategy.getFeatureReader(NonStrictWFSStrategy.java:77)
        at
org.geotools.data.wfs.v1_0_0.WFS_1_0_0_DataStore.getFeatureReader(WFS_1_0_0_DataStore.java:740)
        at
org.geotools.data.DefaultFeatureResults.reader(DefaultFeatureResults.java:210)
        at
org.geotools.data.DefaultFeatureResults.getCount(DefaultFeatureResults.java:327)
        at
org.geotools.data.store.DataFeatureCollection.size(DataFeatureCollection.java:270)
        at
org.geotools.feature.collection.DecoratingFeatureCollection.size(DecoratingFeatureCollection.java:166)
        at
org.vfny.geoserver.wms.responses.featureInfo.HTMLTableFeatureInfoResponse.writeTo(HTMLTableFeatureInfoResponse.java:117)
        at
org.vfny.geoserver.wms.responses.GetFeatureInfoResponse.writeTo(GetFeatureInfoResponse.java:175)
        at
org.geoserver.ows.adapters.ResponseAdapter.write(ResponseAdapter.java:60)
        at org.geoserver.ows.Dispatcher.response(Dispatcher.java:712)
        at
org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:216)
        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:875)
        at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
        at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
        at
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)
        at
org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
        at
org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
        at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
        at
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)
        at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
        at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:229)
        at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
        at
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)
        at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:163)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:41)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
        at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
        at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ClassCastException: org.opengis.filter.IncludeFilter
cannot be cast to org.geotools.filter.Filter
        at
org.geotools.xml.filter.FilterEncodingPreProcessor.visit(FilterEncodingPreProcessor.java:192)
        ... 65 more
2009-05-19 17:08:12,697 DEBUG [xml.sax] - END: gml:featureMember

--
View this message in context: http://www.nabble.com/Exception-creating-filter-tp23611186p23611186.html
Sent from the GeoServer - User mailing list archive at Nabble.com.

Steve Cameron ha scritto:

Not sure if this is a bug but I am trying to create a WMS layer in Geoserver
with data from a WFS servlet that I have written.

When I get the WFS configured in Geoserver and generate a demo map I then
click on an icon expecting to see GetFeatureInfo data (from the WFS via the
WMS) I get the following error.

>
  >

I am using Geoserver 1.7.4.

At this point no GetFeature request has come to the WFS so there is
something going amiss in the Geoserver processing of the WFS GetFeature
response it has already cached I suspect.

Hum, this is happening while the WFS datastore is trying to build a
GetFeature request, it cannot deal with Filter.INCLUDE filter.
I believe this is going to happen on any WMS GetFeatureInfo call
hitting a WFS datastore, does not look specific to your case, I
bet it would fail even cascading another GeoServer.

Can you open a jira issue about this? (jira.codehaus.org)
Cheers
Andrea

--
Andrea Aime
OpenGeo - http://opengeo.org
Expert service straight from the developers.