[Geoserver-users] WFS GetFeature and BBOX Filter

Hi all,

I'm trying to build a Query for a set of features, that lie within a specified Box and additional filtered by an attribute.
Following the WFS-Specification-Document from the OGC this is the result from my hard work :wink:

http://kataster1/geoserver/wfs?request=GetFeature&TYPENAME=kvla:str_geom_erw&VERSION=1.0.0&SERVICE=WFS&Filter=&lt;Filter&gt;&lt;And&gt;&lt;PropertyIsEqualTo&gt;&lt;PropertyName&gt;str\_name&lt;/PropertyName&gt;&lt;Literal&gt;F\*&lt;/Literal&gt;&lt;/PropertyIsEqualTo&gt;&lt;Within&gt;&lt;PropertyName&gt;the\_geom&lt;/PropertyName&gt;&lt;gml:Box&gt;&lt;gml:coordinates&gt;4505000,6005000 4507500,6006600>/gml:coordinates></gml:Box></Within></And></Filter>

But I only get this error message :
( I use GeoServer-1.6.0RC1 )

cheers!
Ronald

*<ServiceExceptionReport version="1.2.0" xsi:schemaLocation="http://www.opengis.net/ogc http://schemas.opengis.net/wfs/1.0.0/OGC-exception.xsd&quot;&gt;
*<ServiceException locator="org.vfny.geoserver.util.requests.readers.XmlRequestReader">
org.xml.sax.SAXException: Attempted to construct illegal filter - I dont understand the tag: gml:Box. HINT: tags are case-sensitive!
org.xml.sax.SAXException: Attempted to construct illegal filter - I dont understand the tag: gml:Box. HINT: tags are case-sensitive!
Details:
org.vfny.geoserver.ServiceException: org.xml.sax.SAXException: Attempted to construct illegal filter - I dont understand the tag: gml:Box. HINT: tags are case-sensitive!
  at org.geoserver.wfs.kvp.FilterKvpParser.parseXMLFilterWithOldParser(FilterKvpParser.java:119)
  at org.geoserver.wfs.kvp.FilterKvpParser.parse(FilterKvpParser.java:72)
  at org.geoserver.ows.Dispatcher.parseKVP(Dispatcher.java:959)
  at org.geoserver.ows.Dispatcher.init(Dispatcher.java:212)
  at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:168)
  at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:139)
  at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
  at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:684)
  at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:625)
  at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:392)
  at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:347)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
  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.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
  at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
  at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:178)
  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:215)
  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
  at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
  at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
  at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
  at org.apache.catalina.connector.CoyoteAdap
ter.service(CoyoteAdapter.java:151)
  at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
  at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
  at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
  at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
  at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
  at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
  at java.lang.Thread.run(Thread.java:595)
Caused by: org.xml.sax.SAXException: Attempted to construct illegal filter - I dont understand the tag: gml:Box. HINT: tags are case-sensitive!
  at org.geotools.filter.FilterFilter.startElement(FilterFilter.java:138)
  at org.geotools.gml.GMLFilterGeometry.startElement(GMLFilterGeometry.java:171)
  at org.geotools.gml.GMLFilterDocument.startElement(GMLFilterDocument.java:164)
  at org.xml.sax.helpers.ParserAdapter.startElement(ParserAdapter.java:597)
  at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
  at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
  at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
  at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
  at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
  at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
  at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
  at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
  at org.xml.sax.helpers.ParserAdapter.parse(ParserAdapter.java:405)
  at org.geoserver.wfs.kvp.FilterKvpParser.parseXMLFilterWithOldParser(FilterKvpParser.java:116)
  ... 46 more

</ServiceException>
</ServiceExceptionReport>

You can pass the bbox values in the request parameter BBOX instead of specifiing it in the filter

request should then be:
http://kataster1/geoserver/wfs?request=GetFeature&TYPENAME=kvla:str_geom_erw&VERSION=1.0.0&SERVICE=WFS&BBOX=4505000,6005000,4507500,6006600Filter=str_nameF*

I didnt test the request so there maybe a bug in it.

Succes

Kris

“Ronald Woita” Ronald.Woita@anonymised.com 12/06/07 11:19 >>>

Hi all,

I’m trying to build a Query for a set of features, that lie within a specified Box and additional filtered by an attribute.
Following the WFS-Specification-Document from the OGC this is the result from my hard work :wink:

http://kataster1/geoserver/wfs?request=GetFeature&TYPENAME=kvla:str_geom_erw&VERSION=1.0.0&SERVICE=WFS&Filter=<Filter>str_nameF*the_geomgml:Boxgml:coordinates4505000,6005000 4507500,6006600>/gml:coordinates></gml:Box>

But I only get this error message :
( I use GeoServer-1.6.0RC1 )

cheers!
Ronald

*<ServiceExceptionReport version=“1.2.0” xsi:schemaLocation="http://www.opengis.net/ogc http://schemas.opengis.net/wfs/1.0.0/OGC-exception.xsd">
*
org.xml.sax.SAXException: Attempted to construct illegal filter - I dont understand the tag: gml:Box. HINT: tags are case-sensitive!
org.xml.sax.SAXException: Attempted to construct illegal filter - I dont understand the tag: gml:Box. HINT: tags are case-sensitive!
Details:
org.vfny.geoserver.ServiceException: org.xml.sax.SAXException: Attempted to construct illegal filter - I dont understand the tag: gml:Box. HINT: tags are case-sensitive!
at org.geoserver.wfs.kvp.FilterKvpParser.parseXMLFilterWithOldParser(FilterKvpParser.java:119)
at org.geoserver.wfs.kvp.FilterKvpParser.parse(FilterKvpParser.java:72)
at org.geoserver.ows.Dispatcher.parseKVP(Dispatcher.java:959)
at org.geoserver.ows.Dispatcher.init(Dispatcher.java:212)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:168)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:139)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:684)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:625)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:392)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:347)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
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.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:178)
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:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdap
ter.service(CoyoteAdapter.java:151)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
at java.lang.Thread.run(Thread.java:595)
Caused by: org.xml.sax.SAXException: Attempted to construct illegal filter - I dont understand the tag: gml:Box. HINT: tags are case-sensitive!
at org.geotools.filter.FilterFilter.startElement(FilterFilter.java:138)
at org.geotools.gml.GMLFilterGeometry.startElement(GMLFilterGeometry.java:171)
at org.geotools.gml.GMLFilterDocument.startElement(GMLFilterDocument.java:164)
at org.xml.sax.helpers.ParserAdapter.startElement(ParserAdapter.java:597)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.xml.sax.helpers.ParserAdapter.parse(ParserAdapter.java:405)
at org.geoserver.wfs.kvp.FilterKvpParser.parseXMLFilterWithOldParser(FilterKvpParser.java:116)
… 46 more


SF.Net email is sponsored by: The Future of Linux Business White Paper
from Novell. From the desktop to the data center, Linux is going
mainstream. Let it simplify your IT future.
http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4


Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

De disclaimer van toepassing op e-mail van de gemeente Den Haag vindt u op:

http://www.denhaag.nl/disclaimer