Failure reprojecting bbox in a WFS 1.1 request
----------------------------------------------

                 Key: GEOS-3130
                 URL: http://jira.codehaus.org/browse/GEOS-3130
             Project: GeoServer
          Issue Type: Bug
    Affects Versions: 1.7.2
            Reporter: Andrea Aime
            Assignee: Andrea Aime
             Fix For: 1.7.5


The following WFS 1.1 request

{code}
<wfs:GetFeature xmlns:wfs="http://www.opengis.net/wfs"; service="WFS" 
maxFeatures="1" version="1.1.0" startPosition="0">
<wfs:Query xmlns:fgdc="http://www.fgdc.gov/NWI"; typeName="fgdc:wetlands">
<Filter xmlns="http://www.opengis.net/ogc";>
<BBOX>
<PropertyName 
xmlns:fgdc="http://www.fgdc.gov/NWI";>fgdc:wkb_geometry</PropertyName>
<gml:Envelope xmlns:gml="http://www.opengis.net/gml"; 
srsName="urn:x-ogc:def:crs:EPSG:4326">
<gml:lowerCorner>39.03454 -75.84575</gml:lowerCorner>
<gml:upperCorner>39.05433 -75.81777</gml:upperCorner>
</gml:Envelope>
</BBOX>
</Filter>
</wfs:Query>
</wfs:GetFeature>
{code}

triggers the following stack trace:

{code}
<ows:ExceptionReport version="1.0.0" 
xsi:schemaLocation="http://www.opengis.net/ows 
http://149.165.228.100:8080/geoserver/schemas/ows/1.0.0/owsExceptionReport.xsd";>
&#8722;
<ows:Exception exceptionCode="NoApplicableCode">
&#8722;
<ows:ExceptionText>
Error occurred getting features Had
      troubles handling filter reprojection... Could not
      decode srs &apos;EPSG:4326&apos; null
</ows:ExceptionText>
<ows:ExceptionText>Details:</ows:ExceptionText>
&#8722;
<ows:ExceptionText>
org.geoserver.wfs.WFSException: Error
      occurred getting features  at
      org.geoserver.wfs.GetFeature.run(GetFeature.java:382)
      at
      
org.geoserver.wfs.DefaultWebFeatureService.getFeature(DefaultWebFeatureService.java:134)
      at
      sun.reflect.GeneratedMethodAccessor360.invoke(Unknown
      Source)  at
      
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at
      
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
      at
      
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
      at
      
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
      at
      org.geoserver.ows.util.EMFLogger.invoke(EMFLogger.java:51)
      at
      
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
      at
      
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      at $Proxy16.getFeature(Unknown Source)  at
      sun.reflect.GeneratedMethodAccessor359.invoke(Unknown
      Source)  at
      
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at
      
org.geoserver.security.OperationSecurityInterceptor.invoke(OperationSecurityInterceptor.java:41)
      at
      org.geoserver.ows.Dispatcher.execute(Dispatcher.java:582)
      at
      org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:211)
      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.doPost(FrameworkServlet.java:511)
      at
      javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
      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.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: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:47)
      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$SocketProcessor.run(JIoEndpoint.java:354)
      at
      
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at
      
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:619) Caused by:
      org.geotools.data.DataSourceException: Had troubles
      handling filter reprojection...  at
      
org.vfny.geoserver.global.GeoServerFeatureSource.reprojectFilter(GeoServerFeatureSource.java:387)
      at
      
org.vfny.geoserver.global.GeoServerFeatureSource.getFeatures(GeoServerFeatureSource.java:332)
      at
      org.geoserver.wfs.GetFeature.getFeatures(GetFeature.java:448)
      at
      org.geoserver.wfs.GetFeature.run(GetFeature.java:353)
      ... 67 more Caused by: java.lang.RuntimeException:
      Could not decode srs 'EPSG:4326'  at
      
org.geoserver.feature.ReprojectingFilterVisitor.visit(ReprojectingFilterVisitor.java:107)
      at
      org.geotools.filter.spatial.BBOXImpl.accept(BBOXImpl.java:133)
      at
      
org.vfny.geoserver.global.GeoServerFeatureSource.reprojectFilter(GeoServerFeatureSource.java:381)
      ... 70 more Caused by:
      java.util.NoSuchElementException  at
      java.util.Collections$EmptySet$1.next(Collections.java:2912)
      at
      
org.geoserver.feature.ReprojectingFilterVisitor.visit(ReprojectingFilterVisitor.java:102)
      ... 72 more 
</ows:ExceptionText>
</ows:Exception>
</ows:ExceptionReport>
{code}

Mind the line where this is failing is:

srs = targetCrs.getIdentifiers().iterator().next().toString();

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
OpenSolaris 2009.06 is a cutting edge operating system for enterprises 
looking to deploy the next generation of Solaris that includes the latest 
innovations from Sun and the OpenSource community. Download a copy and 
enjoy capabilities such as Networking, Storage and Virtualization. 
Go to: http://p.sf.net/sfu/opensolaris-get
_______________________________________________
Geoserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Reply via email to