[Geoserver-users] generating kml from OracleDatastore

Hi list,

I try to generate kml from Data in a Oracle Datastore.
the Coordinatesystem is epsg:2398, the Style is an external Graphic.

Everything works fine with the following WMS-Request (png) :
http://geoportal.rostock.de/geoserver/wms?service=WMS&request=GetMap&format=image/png&width=1024&height=1024&srs=EPSG:4326&layers=kvla:BAUSTELLE_AKT&styles=hro_baustellen&KMATTR=false&bbox=12.07,54.07,12.15,54.18

but the creation of kml with the next request fails with the message 'empty kml-File' :
http://geoportal.rostock.de/geoserver/wms?service=WMS&request=GetMap&format=application/vnd.google-earth.kml+XML&width=1024&height=1024&srs=EPSG:4326&layers=kvla:BAUSTELLE_AKT&styles=hro_baustellen&KMATTR=false&bbox=12.07,54.07,12.15,54.18

It looks like for me that the following Line is the Problem :
' Argument "sourceCRS" should not be null '
unfortunately I can't find something like sourceCRS in the FeatureType Config-Section.

any Idea what this could mean ?

Ronald

this is the GeoServer_LOG :

05.07.2007 11:29:54 org.vfny.geoserver.servlets.AbstractService doGet
FEIN: reading request: service=WMS&request=GetMap&format=application/vnd.google-earth.kml+XML&width=1024&height=1024&srs=EPSG:4326&layers=kvla:BAUSTELLE_AKT&styles=hro_baustellen&KMATTR=false&bbox=12.07,54.07,12.15,54.18
05.07.2007 11:29:54 org.vfny.geoserver.wms.requests.GetMapKvpReader parseStylesParam
FEIN: establishing hro_baustellen style for kvla:BAUSTELLE_AKT
05.07.2007 11:29:54 org.vfny.geoserver.servlets.AbstractService doService
INFO: handling request:
GetMap Request
version: 1.1.1
output format: application/vnd.google-earth.kml XML
width height: 1024,1024
bbox: Env[12.07 : 12.15, 54.07 : 54.18]
layers: kvla:BAUSTELLE_AKT
styles: hro_baustellen
05.07.2007 11:29:54 org.vfny.geoserver.servlets.AbstractService doService
FEIN: strategy is: FILE
05.07.2007 11:29:54 org.vfny.geoserver.wms.responses.GetMapResponse execute
FEIN: setting up map
05.07.2007 11:29:54 org.vfny.geoserver.servlets.AbstractService doService
FEIN: mime type is: application/vnd.google-earth.kml+xml
05.07.2007 11:29:54 org.vfny.geoserver.servlets.AbstractService doService
FEIN: content encoding is: null
05.07.2007 11:29:54 null createBackingStore
KONFIG: Connected to EPSG database "jdbc:hsqldb:file:/opt/jakarta/tomcat/temp/Geotools/Databases/HSQL/EPSG" on "HSQL Database Engine".
05.07.2007 11:29:55 org.vfny.geoserver.servlets.AbstractService doService
INFO: Stream abruptly closed by client, response aborted
05.07.2007 11:29:55 org.vfny.geoserver.servlets.AbstractService doService
FEIN: Error writing out null
java.io.IOException
  at org.vfny.geoserver.wms.responses.map.kml.KMLMapProducer.writeTo(KMLMapProducer.java:108)
  at org.vfny.geoserver.wms.responses.GetMapResponse.writeTo(GetMapResponse.java:496)
  at org.vfny.geoserver.servlets.AbstractService.doService(AbstractService.java:582)
  at org.vfny.geoserver.servlets.AbstractService.doGet(AbstractService.java:315)
  at org.geoserver.request.Dispatcher.dispatch(Dispatcher.java:192)
  at org.geoserver.request.Dispatcher.handleRequestInternal(Dispatcher.java:52)
  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)
  atce doService
INFO: Service handled
05.07.2007 11:29:54 org.vfny.geoserver.servlets.AbstractService doGet
FEIN: reading request: service=WMS&request=GetMap&format=application/vnd.google-earth.kml+XML&width=1024&height=1024&srs=EPSG:4326&layers=kvla:BAUSTELLE_AKT&styles=hro_baustellen&KMATTR=false&bbox=12.07,54.07,12.15,54.18
05.07.2007 11:29:54 org.vfny.geoserver.wms.requests.GetMapKvpReader parseStylesParam
FEIN: establishing hro_baustellen style for kvla:BAUSTELLE_AKT
05.07.2007 11:29:54 org.vfny.geoserver.servlets.AbstractService doService
INFO: handling request:
GetMap Request
version: 1.1.1
output format: application/vnd.google-earth.kml XML
width height: 1024,1024
bbox: Env[12.07 : 12.15, 54.07 : 54.18]
layers: kvla:BAUSTELLE_AKT
styles: hro_baustellen
05.07.2007 11:29:54 org.vfny.geoserver.servlets.AbstractService doService
FEIN: strategy is: FILE
05.07.2007 11:29:54 org.vfny.geoserver.wms.responses.GetMapResponse execute
FEIN: setting up map
05.07.2007 11:29:54 org.vfny.geoserver.servlets.AbstractService doService
FEIN: mime type is: application/vnd.google-earth.kml+xml
05.07.2007 11:29:54 org.vfny.geoserver.servlets.AbstractService doService
FEIN: content encoding is: null
05.07.2007 11:29:54 null createBackingStore
KONFIG: Connected to EPSG database "jdbc:hsqldb:file:/opt/jakarta/tomcat/temp/Geotools/Databases/HSQL/EPSG" on "HSQL Database Engine".
05.07.2007 11:29:55 org.vfny.geoserver.servlets.AbstractService doService
INFO: Stream abruptly closed by client, response aborted
05.07.2007 11:29:55 org.vfny.geoserver.servlets.AbstractService doService
FEIN: Error writing out null
java.io.IOException
  at org.vfny.geoserver.wms.responses.map.kml.KMLMapProducer.writeTo(KMLMapProducer.java:108)
  at org.vfny.geoserver.wms.responses.GetMapResponse.writeTo(GetMapResponse.java:496)
  at org.vfny.geoserver.servlets.AbstractService.doService(AbstractService.java:582)
  at org.vfny.geoserver.servlets.AbstractService.doGet(AbstractService.java:315)
  at org.geoserver.request.Dispatcher.dispatch(Dispatcher.java:192)
  at org.geoserver.request.Dispatcher.handleRequestInternal(Dispatcher.java:52)
  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:689)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:103)
  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
  at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
  at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
  at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199)
  at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282)
  at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
  at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
  at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
  at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
  at java.lang.Thread.run(Thread.java:595)
Caused by: javax.xml.transform.TransformerException: Translator error
  at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:130)
  at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:105)
  at org.vfny.geoserver.wms.responses.map.kml.KMLMapProducer.writeTo(KMLMapProducer.java:106)
  ... 31 more
Caused by: java.lang.RuntimeException: java.lang.IllegalArgumentException: Argument "sourceCRS" should not be null.
  at org.vfny.geoserver.wms.responses.map.kml.KMLTransformer$KMLTranslator.encodeVectorLayer(KMLTransformer.java:146)
  at org.vfny.geoserver.wms.responses.map.kml.KMLTransformer$KMLTranslator.encode(KMLTransformer.java:110)
  at org.geotools.xml.transform.TransformerBase$XMLReaderSupport.parse(TransformerBase.java:677)
  at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:484)
  at org.geotools.xml.transform.TransformerBase$Task.run(TransformerBase.java:293)
  at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:126)
  ... 33 more
Caused by: java.lang.IllegalArgumentException: Argument "sourceCRS" should not be null.
  at org.geotools.referencing.operation.AbstractCoordinateOperationFactory.ensureNonNull(AbstractCoordinateOperationFactory.java:743)
  at org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperation(DefaultCoordinateOperationFactory.java:186)
  at org.geotools.referencing.CRS.findMathTransform(CRS.java:147)
  at org.geotools.data.crs.ReprojectFeatureResults.<init>(ReprojectFeatureResults.java:126)
  at org.vfny.geoserver.wms.responses.map.kml.KMLTransformer$KMLTranslator.loadFeatureCollection(KMLTransformer.java:325)
  at org.vfny.geoserver.wms.responses.map.kml.KMLTransformer$KMLTranslator.encodeVectorLayer(KMLTransformer.java:144)
  ... 38 more
05.07.2007 11:29:55 org.vfny.geoserver.wms.responses.GetMapResponse abort
FEIN: asking delegate for aborting the process
05.07.2007 11:29:55 org.vfny.geoserver.wms.responses.map.kml.KMLMapProducer abort
FEIN: aborting KML map response
05.07.2007 11:29:55 org.vfny.geoserver.wms.responses.map.kml.KMLMapProducer abort
INFO: aborting KML encoder

--
Ronald Woita
http://geoportal.rostock.de
Hansestadt Rostock
Kataster-, Vermessungs- und Liegenschaftsamt
Holbeinplatz 14, 18069 Rostock
email: ronald.woita@anonymised.com
phone: +49 (0)381 - 381 6256

Ronald Woita ha scritto:

Hi list,

I try to generate kml from Data in a Oracle Datastore.
the Coordinatesystem is epsg:2398, the Style is an external Graphic.

Everything works fine with the following WMS-Request (png) :
http://geoportal.rostock.de/geoserver/wms?service=WMS&request=GetMap&format=image/png&width=1024&height=1024&srs=EPSG:4326&layers=kvla:BAUSTELLE_AKT&styles=hro_baustellen&KMATTR=false&bbox=12.07,54.07,12.15,54.18

but the creation of kml with the next request fails with the message 'empty kml-File' :
http://geoportal.rostock.de/geoserver/wms?service=WMS&request=GetMap&format=application/vnd.google-earth.kml+XML&width=1024&height=1024&srs=EPSG:4326&layers=kvla:BAUSTELLE_AKT&styles=hro_baustellen&KMATTR=false&bbox=12.07,54.07,12.15,54.18

Ronald, Oracle data store in any released version has quite
some issues with SRS. We have an improved version or the
data store that works with most SRS, but it's unreleased.

Can you try downloading the latest snapshot here:
http://geo.openplans.org/nightly/1.5.x/
and coupling it with the following Oracle datastore:
http://geo.openplans.org/aaime/gt2-oracle-spatial-2.3.3-SNAPSHOT.jar

Anyways, the KML output should work even if the source SRS
is null... I've opened a Jira issue for this:
http://jira.codehaus.org/browse/GEOS-1192

Cheers
Andrea