KMLTest remote resource breaks the build
----------------------------------------
Key: GEOS-2612
URL: http://jira.codehaus.org/browse/GEOS-2612
Project: GeoServer
Issue Type: Bug
Components: WMS
Reporter: Ben Caradoc-Davies
Assignee: Andrea Aime
Priority: Blocker
KMLTest uses a remote resource but is not an OnlineTestCase. It uses RemoteOWSTestSupport.isRemoteStatesAvailable() to contact http://demo.opengeo.org/geoserver/wfs and determine if it is available; sometimes it is available but something is broken enough for the test to fail.
I think this might be an intermittent failure. I have seen it before.
Looks like some transient failure local to the remote resource. The exception report contains this:
java.lang.RuntimeException: Could not
create crs: urn:x-ogc:def:crs:EPSG:6.11.2:4326 Could
not create crs: urn:x-ogc:def:crs:EPSG:6.11.2:4326
Database failure while creating a
'CoordinateReferenceSystem' object
for code "EPSG:4326". Connection is closed
Suggestions:
(1) Make the remote bit of KMLTest an OnlineTestCase.
(2) Fix RemoteOWSTestSupport.isRemoteStatesAvailable() to test harder.
(3) Use a mock remote resource.
Sample Eclipse console (breaks in Maven too):
DecribeFT URL for topp:states: http://demo.opengeo.org/geoserver/wfs?VERSION=1.1.0&TYPENAME=topp%3Astates&NAMESPACE=xmlns(topp%3Dhttp%3A%2F%2Fwww.openplans.org%2Ftopp)&REQUEST=DescribeFeatureType&SERVICE=WFS&=&
DecribeFT URL for topp:states: http://demo.opengeo.org/geoserver/wfs?VERSION=1.1.0&TYPENAME=topp%3Astates&NAMESPACE=xmlns(topp%3Dhttp%3A%2F%2Fwww.openplans.org%2Ftopp)&REQUEST=DescribeFeatureType&SERVICE=WFS&=&
Supported filter: [[ PERSONS > 20000000 ] AND [ the_geom bbox POLYGON ((-90 -180, -90 180, 90 180, 90 -180, -90 -180)) ]]
Unupported filter: Filter.INCLUDE
06 Feb 11:22:51 ERROR [geoserver.ows] -
java.io.IOException
at org.vfny.geoserver.wms.responses.map.kml.KMLMapProducer.writeTo(KMLMapProducer.java:124)
at org.vfny.geoserver.wms.responses.GetMapResponse.writeTo(GetMapResponse.java:612)
at org.geoserver.ows.adapters.ResponseAdapter.write(ResponseAdapter.java:60)
at org.geoserver.ows.Dispatcher.response(Dispatcher.java:702)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:215)
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:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.geoserver.test.GeoServerAbstractTestSupport.dispatch(GeoServerAbstractTestSupport.java:1039)
at org.geoserver.test.GeoServerAbstractTestSupport.dispatch(GeoServerAbstractTestSupport.java:1006)
at org.geoserver.test.GeoServerAbstractTestSupport.getAsServletResponse(GeoServerAbstractTestSupport.java:453)
at org.geoserver.test.GeoServerAbstractTestSupport.get(GeoServerAbstractTestSupport.java:434)
at org.geoserver.test.GeoServerAbstractTestSupport.getAsDOM(GeoServerAbstractTestSupport.java:708)
at org.geoserver.test.GeoServerAbstractTestSupport.getAsDOM(GeoServerAbstractTestSupport.java:670)
at org.vfny.geoserver.wms.responses.map.kml.KMLTest.testVectorWithRemoteLayer(KMLTest.java:61)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at junit.framework.TestCase.runTest(TestCase.java:164)
at org.geoserver.test.GeoServerAbstractTestSupport.runTest(GeoServerAbstractTestSupport.java:133)
at junit.framework.TestCase.runBare(TestCase.java:130)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:120)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: javax.xml.transform.TransformerException: Translator error
at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:133)
at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:108)
at org.vfny.geoserver.wms.responses.map.kml.KMLMapProducer.writeTo(KMLMapProducer.java:121)
... 36 more
Caused by: java.util.NoSuchElementException: Could not aquire feature:org.geotools.data.wfs.protocol.wfs.WFSException: WFS returned an exception. Target URL: http://demo.opengeo.org:80/geoserver/wfs?. Originating request is:
<?xml version="1.0" encoding="UTF-8"?>
<wfs:GetFeature handle="GeoTools 2.6.SNAPSHOT WFS DataStore"
outputFormat="text/xml; subtype=gml/3.1.1" resultType="results"
service="WFS" version="1.1.0" xmlns:ogc="http://www.opengis.net/ogc"
xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:ows="http://www.opengis.net/ows"
xmlns:wfs="http://www.opengis.net/wfs" xmlns:xml="http://www.w3.org/XML/1998/namespace">
<wfs:Query srsName="urn:x-ogc:def:crs:EPSG:6.11.2:4326" typeName="topp:states">
<ogc:Filter>
<ogc:And>
<ogc:PropertyIsGreaterThan matchCase="true">
<ogc:PropertyName>PERSONS</ogc:PropertyName>
<ogc:Literal>20000000</ogc:Literal>
</ogc:PropertyIsGreaterThan>
<ogc:BBOX>
<ogc:PropertyName>the_geom</ogc:PropertyName>
<gml:Envelope>
<gml:lowerCorner>-90.0 -180.0</gml:lowerCorner>
<gml:upperCorner>90.0 180.0</gml:upperCorner>
</gml:Envelope>
</ogc:BBOX>
</ogc:And>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
[[java.lang.RuntimeException: Could not
create crs: urn:x-ogc:def:crs:EPSG:6.11.2:4326 Could
not create crs: urn:x-ogc:def:crs:EPSG:6.11.2:4326
Database failure while creating a
'CoordinateReferenceSystem' object
for code "EPSG:4326". Connection is closed]]
at org.geotools.data.store.NoContentIterator.next(NoContentIterator.java:56)
at org.geotools.data.store.NoContentIterator.next(NoContentIterator.java:41)
at org.geotools.feature.collection.DelegateFeatureIterator.next(DelegateFeatureIterator.java:58)
at org.geotools.data.crs.ReprojectFeatureIterator.next(ReprojectFeatureIterator.java:130)
at org.geotools.feature.collection.DelegateFeatureIterator.next(DelegateFeatureIterator.java:58)
at org.vfny.geoserver.wms.responses.map.kml.KMLVectorTransformer$KMLTranslator.encode(KMLVectorTransformer.java:202)
at org.vfny.geoserver.wms.responses.map.kml.KMLVectorTransformer$KMLTranslator.encode(KMLVectorTransformer.java:148)
at org.vfny.geoserver.wms.responses.map.kml.KMLTransformer$KMLTranslator.encodeVectorLayer(KMLTransformer.java:203)
at org.vfny.geoserver.wms.responses.map.kml.KMLTransformer$KMLTranslator.encode(KMLTransformer.java:133)
at org.geotools.xml.transform.TransformerBase$XMLReaderSupport.parse(TransformerBase.java:714)
at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:484)
at org.geotools.xml.transform.TransformerBase$Task.run(TransformerBase.java:296)
at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:129)
... 38 more
Caused by: org.geotools.data.wfs.protocol.wfs.WFSException: WFS returned an exception. Target URL: http://demo.opengeo.org:80/geoserver/wfs?. Originating request is:
<?xml version="1.0" encoding="UTF-8"?>
<wfs:GetFeature handle="GeoTools 2.6.SNAPSHOT WFS DataStore"
outputFormat="text/xml; subtype=gml/3.1.1" resultType="results"
service="WFS" version="1.1.0" xmlns:ogc="http://www.opengis.net/ogc"
xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:ows="http://www.opengis.net/ows"
xmlns:wfs="http://www.opengis.net/wfs" xmlns:xml="http://www.w3.org/XML/1998/namespace">
<wfs:Query srsName="urn:x-ogc:def:crs:EPSG:6.11.2:4326" typeName="topp:states">
<ogc:Filter>
<ogc:And>
<ogc:PropertyIsGreaterThan matchCase="true">
<ogc:PropertyName>PERSONS</ogc:PropertyName>
<ogc:Literal>20000000</ogc:Literal>
</ogc:PropertyIsGreaterThan>
<ogc:BBOX>
<ogc:PropertyName>the_geom</ogc:PropertyName>
<gml:Envelope>
<gml:lowerCorner>-90.0 -180.0</gml:lowerCorner>
<gml:upperCorner>90.0 180.0</gml:upperCorner>
</gml:Envelope>
</ogc:BBOX>
</ogc:And>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
[[java.lang.RuntimeException: Could not
create crs: urn:x-ogc:def:crs:EPSG:6.11.2:4326 Could
not create crs: urn:x-ogc:def:crs:EPSG:6.11.2:4326
Database failure while creating a
'CoordinateReferenceSystem' object
for code "EPSG:4326". Connection is closed]]
at org.geotools.data.wfs.v1_1_0.parsers.ExceptionReportParser.parse(ExceptionReportParser.java:101)
at org.geotools.data.wfs.protocol.wfs.WFSExtensions.process(WFSExtensions.java:75)
at org.geotools.data.wfs.v1_1_0.WFS_1_1_0_DataStore.getFeatureReader(WFS_1_1_0_DataStore.java:325)
at org.geotools.data.wfs.v1_1_0.WFSFeatureCollection.reader(WFSFeatureCollection.java:168)
at org.geotools.data.store.DataFeatureCollection.openIterator(DataFeatureCollection.java:227)
at org.geotools.data.store.DataFeatureCollection.iterator(DataFeatureCollection.java:197)
at org.geotools.data.store.DataFeatureCollection.features(DataFeatureCollection.java:186)
at org.geotools.data.crs.ReprojectFeatureResults.openIterator(ReprojectFeatureResults.java:108)
at org.geotools.feature.collection.AbstractFeatureCollection.features(AbstractFeatureCollection.java:64)
at org.vfny.geoserver.wms.responses.map.kml.KMLVectorTransformer$KMLTranslator.encode(KMLVectorTransformer.java:198)
... 45 more
<?xml version="1.0" encoding="UTF-8"?>
<ServiceExceptionReport version="1.1.1"> <ServiceException>
java.io.IOException
null
Translator error
Could not aquire feature:org.geotools.data.wfs.protocol.wfs.WFSException: WFS returned an exception. Target URL: http://demo.opengeo.org:80/geoserver/wfs?. Originating request is:
<?xml version="1.0" encoding="UTF-8"?>
<wfs:GetFeature handle="GeoTools 2.6.SNAPSHOT WFS DataStore"
outputFormat="text/xml; subtype=gml/3.1.1" resultType="results"
service="WFS" version="1.1.0" xmlns:ogc="http://www.opengis.net/ogc"
xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:ows="http://www.opengis.net/ows"
xmlns:wfs="http://www.opengis.net/wfs" xmlns:xml="http://www.w3.org/XML/1998/namespace"&gt;
<wfs:Query srsName="urn:x-ogc:def:crs:EPSG:6.11.2:4326" typeName="topp:states">
<ogc:Filter>
<ogc:And>
<ogc:PropertyIsGreaterThan matchCase="true">
<ogc:PropertyName>PERSONS</ogc:PropertyName>
<ogc:Literal>20000000</ogc:Literal>
</ogc:PropertyIsGreaterThan>
<ogc:BBOX>
<ogc:PropertyName>the_geom</ogc:PropertyName>
<gml:Envelope>
<gml:lowerCorner>-90.0 -180.0</gml:lowerCorner>
<gml:upperCorner>90.0 180.0</gml:upperCorner>
</gml:Envelope>
</ogc:BBOX>
</ogc:And>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
[[java.lang.RuntimeException: Could not
create crs: urn:x-ogc:def:crs:EPSG:6.11.2:4326 Could
not create crs: urn:x-ogc:def:crs:EPSG:6.11.2:4326
Database failure while creating a
&apos;CoordinateReferenceSystem&apos; object
for code &quot;EPSG:4326&quot;. Connection is closed]]
WFS returned an exception. Target URL: http://demo.opengeo.org:80/geoserver/wfs?. Originating request is:
<?xml version="1.0" encoding="UTF-8"?>
<wfs:GetFeature handle="GeoTools 2.6.SNAPSHOT WFS DataStore"
outputFormat="text/xml; subtype=gml/3.1.1" resultType="results"
service="WFS" version="1.1.0" xmlns:ogc="http://www.opengis.net/ogc"
xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:ows="http://www.opengis.net/ows"
xmlns:wfs="http://www.opengis.net/wfs" xmlns:xml="http://www.w3.org/XML/1998/namespace"&gt;
<wfs:Query srsName="urn:x-ogc:def:crs:EPSG:6.11.2:4326" typeName="topp:states">
<ogc:Filter>
<ogc:And>
<ogc:PropertyIsGreaterThan matchCase="true">
<ogc:PropertyName>PERSONS</ogc:PropertyName>
<ogc:Literal>20000000</ogc:Literal>
</ogc:PropertyIsGreaterThan>
<ogc:BBOX>
<ogc:PropertyName>the_geom</ogc:PropertyName>
<gml:Envelope>
<gml:lowerCorner>-90.0 -180.0</gml:lowerCorner>
<gml:upperCorner>90.0 180.0</gml:upperCorner>
</gml:Envelope>
</ogc:BBOX>
</ogc:And>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
[[java.lang.RuntimeException: Could not
create crs: urn:x-ogc:def:crs:EPSG:6.11.2:4326 Could
not create crs: urn:x-ogc:def:crs:EPSG:6.11.2:4326
Database failure while creating a
&apos;CoordinateReferenceSystem&apos; object
for code &quot;EPSG:4326&quot;. Connection is closed]]
</ServiceException>
</ServiceExceptionReport>
--
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