From: Chris H. <ch...@op...> - 2006-07-26 15:32:38
|
Ivan Price wrote: > Chris, > > this has fixed the WMS KML output problem where the sql was mal-formed. > it has also fixed our hundreds of open oracle connections as hoped. > > so now i can report my next bug... that KML output only goes to 4 > decimal places, and the cadastre looks like its been drawn by a crazy > person. > > surely the kml output should output the same number of decimals as set > in the admin tool for GML? That should be super easy to fix. As long as we can use the same decimal places as we do for GML. Would that be ok? File a bug and I'll get you a fix in a day or two. > > and is it expected that we will be able to configure the KML output > somewhere ?.. i.e. define the html template for the content returned ? > what role will the sld play in this ? I've been thinking about this. I think ideally we'd have an attribute for SLD labels called 'hidden' or some such for things like this. Less than ideally, but should work for now, I think we should just do a vendor param for the label. Ideally I suppose we could maybe reuse it for 'GetFeatureInfo'. This unfortunately is a non-trivial imiprovement. I'd be happy to direct a developer to solve it, or put together an estimate on how long it would take. best regards, Chris > > -ivan > > > > -----Original Message----- > From: Chris Holmes [mailto:ch...@op...] > Sent: Tuesday, 25 July 2006 1:44 AM > To: Ivan Price > Cc: Geoserver-devel; nkr...@gm... > Subject: Re: [Geoserver-devel] problem with wms and oracle spatial.. > > Ok, I just made a go at fixing the bug. ArcSDE actually had a similar > problem, but complained a bit more strongly. I attached the new file > to: http://jira.codehaus.org/browse/GEOS-439 > > Please download and let me know if it works, and I'll commit. There's > been some annoying weirdness going on in GeoTools with backwards > compatibility, but I believe this jar should work fine. > > Nils, could you also give this a try for your problem? I think it might > fix it for real > > best regards, > > Chris > > Ivan Price wrote: >> Hi there, >> >> i think this bug has been rasied previously relating to svg: >> http://jira.codehaus.org/browse/GEOS-439 >> >> but i'm mentioning here cause its also killing kml output from oracle >> spatial datastore.. >> >> my getmap wms url that looks like this: >> >> http://webdev1.ipe.nt.gov.au/geoserver/wms?Service=wms&Version=1.1.0&R >> eq >> uest=GetMap&Width=800&Height=800&Srs=EPSG:4326&Bgcolor=0xCEFFFF&Format >> =a >> pplication/vnd.google-earth.kml+XML&Styles=&Transparent=True&Layers=nt >> li >> s:CADASTRE&bbox=130,-20,131,-19 >> >> results in the following oracle sql: (i've abreviated attribute/column > >> names to '*') >> >> SELECT * FROM "CADASTRE" WHERE >> SDO_RELATE(MDSYS.SDO_GEOMETRY(2003,8311,NULL,MDSYS.SDO_ELEM_INFO_ARRAY >> (1 >> ,1003,1),MDSYS.SDO_ORDINATE_ARRAY(130.0,-20.0,131.0,-20.0,131.0,-19.0, >> 13 0.0,-19.0,130.0,-20.0)),"GEOMETRY",'mask=anyinteract >> querytype=WINDOW') = 'TRUE' >> >> (which doesn't work) >> >> but it seems the name of the geometry column is in the wrong place.. >> it should be: >> >> SELECT * FROM "CADASTRE" WHERE >> SDO_RELATE("GEOMETRY",MDSYS.SDO_GEOMETRY(2003,8311,NULL,MDSYS.SDO_ELEM >> _I >> NFO_ARRAY(1,1003,1),MDSYS.SDO_ORDINATE_ARRAY(130.0,-20.0,131.0,-20.0,1 >> 31 .0,-19.0,130.0,-19.0,130.0,-20.0)),'mask=anyinteract >> querytype=WINDOW') = 'TRUE' >> >> (which works) >> >> the wfs server is fine for all type os sptail queries, only the wms >> seems to have issues. >> >> i'm running geoserver 1.3.2 on windows 2000 on Apache Tomcat/4.1.29 on > >> JVM 1.4.2_03-b02, connecting to oracle 10g. >> >> i'm guessing that when bug GEOS 439 gets fixed so will this, but i >> thought i'd raise it cause its stopping me from using the kml/kmz >> feature. >> >> stack trace follows including the error that oracle spits..thanks, >> >> -ivan >> >> >> >> >> <?xml version="1.0" encoding="UTF-8" standalone="no" ?><!DOCTYPE >> ServiceExceptionReport SYSTEM >> "http://webdev1.ipe.nt.gov.au:80/geoserver/schemas//wms/1.1.1/WMS_exce >> pt ion_1_1_1.dtd"> <ServiceExceptionReport version="1.1.1"> >> <ServiceException code="">org.geotools.data.DataSourceException: Error > >> Performing SQL query: SELECT "MI_PRINX", >> "LAISKEY", "LOCATION", "LTOCODE", >> "PARCEL", "PART_PARCEL", "PARCEL_TYPE", >> "AREA_M2", "ST_NUMBER", "ST_PART", >> "ST_NAME", "ST_TYPE", "ST_SUBURB", >> "SURVEY", "TEN_REF_TYPE", "TEN_REF_NUM", > >> "TEN_STATUS", "TEN_VOL_TYPE", >> "TEN_VOLUME", "TEN_FOLIO", "TP_ZONE", >> "GEOMETRY", "STATUS_CODE", "PFI", >> "UFI", "FEAT_NAME", "OWN_CATEGORY", >> "PROPERTY_NAME" FROM "CADASTRE" WHERE >> SDO_RELATE(MDSYS.SDO_GEOMETRY(2003,8311,NULL,MDSYS.SDO_ELEM_INFO_ARRAY >> (1 >> ,1003,1),MDSYS.SDO_ORDINATE_ARRAY(130.0,-20.0,131.0,-20.0,131.0,-19.0, >> 13 0.0,-19.0,130.0,-20.0)),"GEOMETRY",'mask=anyinteract >> querytype=WINDOW') = 'TRUE' >> at >> org.geotools.data.jdbc.JDBC1DataStore.executeQuery(JDBC1DataStore.java >> :9 >> 08) >> at >> org.geotools.data.jdbc.JDBC1DataStore.getFeatureReader(JDBC1DataStore. >> ja >> va:656) >> at >> org.geotools.data.jdbc.JDBCFeatureCollection.reader(JDBCFeatureCollect >> io >> n.java:78) >> at >> org.vfny.geoserver.wms.responses.map.kml.EncodeKML.writeLayers(EncodeK >> ML >> .java:320) >> at >> org.vfny.geoserver.wms.responses.map.kml.EncodeKML.encodeKML(EncodeKML >> .j >> ava:130) >> at >> org.vfny.geoserver.wms.responses.map.kml.KMLMapProducer.writeTo(KMLMap >> Pr >> oducer.java:93) >> at >> org.vfny.geoserver.wms.responses.GetMapResponse.writeTo(GetMapResponse >> .j >> ava:258) >> at >> org.vfny.geoserver.servlets.AbstractService.doService(AbstractService. >> ja >> va:527) >> at >> org.vfny.geoserver.servlets.AbstractService.doGet(AbstractService.java >> :2 >> 79) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) >> at >> org.vfny.geoserver.wms.servlets.WmsDispatcher.doResponse(WmsDispatcher >> .j >> ava:156) >> at >> org.vfny.geoserver.wms.servlets.WmsDispatcher.doGet(WmsDispatcher.java >> :1 >> 15) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appli >> ca >> tionFilterChain.java:247) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFi >> lt >> erChain.java:193) >> at >> org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetChar >> ac >> terEncodingFilter.java:122) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appli >> ca >> tionFilterChain.java:213) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFi >> lt >> erChain.java:193) >> at >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperVa >> lv >> e.java:256) >> at >> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext >> .i >> nvokeNext(StandardPipeline.java:643) >> at >> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java >> :4 >> 80) >> at >> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) >> at >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextVa >> lv >> e.java:191) >> at >> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext >> .i >> nvokeNext(StandardPipeline.java:643) >> at >> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java >> :4 >> 80) >> at >> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) >> at >> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2 >> 41 >> 6) >> at >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.ja >> va >> :180) >> at >> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext >> .i >> nvokeNext(StandardPipeline.java:643) >> at >> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcher >> Va >> lve.java:171) >> at >> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext >> .i >> nvokeNext(StandardPipeline.java:641) >> at >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.ja >> va >> :172) >> at >> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext >> .i >> nvokeNext(StandardPipeline.java:641) >> at >> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java >> :4 >> 80) >> at >> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) >> at >> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve. >> java:174) >> at >> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext >> .i >> nvokeNext(StandardPipeline.java:643) >> at >> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java >> :4 >> 80) >> at >> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) >> at >> > org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223) >> at >> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:263) >> at >> org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:360) >> at >> org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:604) >> at >> > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java: >> 562) >> at >> org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:679) >> at >> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPo >> ol >> .java:619) >> at java.lang.Thread.run(Thread.java:534) >> Caused by: java.sql.SQLException: ORA-13226: interface not supported >> without a spatial index >> ORA-06512: at "MDSYS.MD", line 1723 >> ORA-06512: at "MDSYS.MDERR", line 8 >> ORA-06512: at "MDSYS.SDO_3GL", line 62 >> >> at >> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java: >> 12 >> 5) >> at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305) >> at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272) >> at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:626) >> at >> oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:113) >> at >> > oracle.jdbc.driver.T4CStatement.execute_for_rows(T4CStatement.java:561) >> at >> oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatem >> en >> t.java:961) >> at >> oracle.jdbc.driver.T4CStatement.execute_maybe_describe(T4CStatement.ja >> va >> :463) >> at >> > oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement. >> java:1037) >> at >> oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:1 >> 18 >> 3) >> at >> org.geotools.data.jdbc.JDBC1DataStore.executeQuery(JDBC1DataStore.java >> :8 >> 97) >> ... 48 more >> >> </ServiceException> </ServiceExceptionReport> >> >> >> ---------------------------------------------------------------------- >> --- Take Surveys. Earn Cash. Influence the Future of IT Join >> SourceForge.net's Techsay panel and you'll get the chance to share >> your opinions on IT & business topics through brief surveys -- and >> earn cash >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEV >> DEV _______________________________________________ >> Geoserver-devel mailing list >> Geo...@li... >> https://lists.sourceforge.net/lists/listinfo/geoserver-devel >> >> >> > > -- > Chris Holmes > The Open Planning Project > http://topp.openplans.org > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys -- and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Geoserver-devel mailing list > Geo...@li... > https://lists.sourceforge.net/lists/listinfo/geoserver-devel > > !DSPAM:1003,44c718cf291791410093335! > -- Chris Holmes The Open Planning Project http://topp.openplans.org |