Gabriel Roldán ha scritto:
> Andrea, Justin,
>
> I'm comming to you as the creators of KMLTest cause I'm finding hard to
> diagnose why reenabling the remote ows tests makes it fail.
>
> The situation is, the patch attached to
> <http://jira.codehaus.org/browse/GEOS-1547> enables ows remote tests and they
> work for the tests other than KMLTest that use it. That's only on trunk,
> where
> the WFS 1.1 datastore work has been happening.
>
> btw, the one failing test is testVectorWithRemoteLayer().
>
> in the patch I've changed RemoteOWSTestSupport.WFS_SERVER_URL to
> "http://demo.opengeo.org/geoserver/wfs?" because sigma keeps being unusable.
>
> If some of you could take a look and see what's going wrong that'd be really
> cool.
Looked into it. What's going on is that the kml code is looking for the
feature heigh template for a feature type that is not local, but is
provided by a remote WFS as part of our "feature portrayal" support
which we developed in OWS5.
The exception is logged at a level lower than usual and cannot be
seen, but here it is:
java.lang.NullPointerException
at
org.geoserver.template.GeoServerTemplateLoader.findTemplateSource(GeoServerTemplateLoader.java:140)
at
freemarker.cache.TemplateCache.acquireTemplateSource(TemplateCache.java:600)
at
freemarker.cache.TemplateCache.findTemplateSource(TemplateCache.java:576)
at freemarker.cache.TemplateCache.getTemplate(TemplateCache.java:347)
at freemarker.cache.TemplateCache.getTemplate(TemplateCache.java:235)
at freemarker.template.Configuration.getTemplate(Configuration.java:487)
at freemarker.template.Configuration.getTemplate(Configuration.java:452)
at
org.vfny.geoserver.wms.responses.featureInfo.FeatureTemplate.lookupTemplate(FeatureTemplate.java:295)
at
org.vfny.geoserver.wms.responses.featureInfo.FeatureTemplate.execute(FeatureTemplate.java:263)
at
org.vfny.geoserver.wms.responses.featureInfo.FeatureTemplate.template(FeatureTemplate.java:214)
at
org.vfny.geoserver.wms.responses.featureInfo.FeatureTemplate.template(FeatureTemplate.java:251)
at
org.vfny.geoserver.wms.responses.featureInfo.FeatureHeightTemplate.execute(FeatureHeightTemplate.java:39)
at
org.vfny.geoserver.wms.responses.map.kml.KMLMapTransformer$KMLMapTranslatorSupport.featureGeometry(KMLMapTransformer.java:1183)
at
org.vfny.geoserver.wms.responses.map.kml.KMLMapTransformer$KMLMapTranslatorSupport.encodePlacemark(KMLMapTransformer.java:818)
at
org.vfny.geoserver.wms.responses.map.kml.KMLMapTransformer$KMLMapTranslatorSupport.encodePlacemark(KMLMapTransformer.java:810)
at
org.vfny.geoserver.wms.responses.map.kml.KMLVectorTransformer$KMLTranslator.encode(KMLVectorTransformer.java:223)
at
org.vfny.geoserver.wms.responses.map.kml.KMLVectorTransformer$KMLTranslator.encode(KMLVectorTransformer.java:146)
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)
at
org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:108)
at
org.vfny.geoserver.wms.responses.map.kml.KMLMapProducer.writeTo(KMLMapProducer.java:121)
at
org.vfny.geoserver.wms.responses.GetMapResponse.writeTo(GetMapResponse.java:572)
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:984)
at
org.geoserver.test.GeoServerAbstractTestSupport.dispatch(GeoServerAbstractTestSupport.java:951)
at
org.geoserver.test.GeoServerAbstractTestSupport.getAsServletResponse(GeoServerAbstractTestSupport.java:447)
at
org.geoserver.test.GeoServerAbstractTestSupport.get(GeoServerAbstractTestSupport.java:428)
at
org.geoserver.test.GeoServerAbstractTestSupport.getAsDOM(GeoServerAbstractTestSupport.java:660)
at
org.geoserver.test.GeoServerAbstractTestSupport.getAsDOM(GeoServerAbstractTestSupport.java:641)
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:129)
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)
Basically the template lookup code assumes feature types can only come
from within GeoServer, but with feature portrayal that's not the case,
they can also come from a remote WFS that's provided as part of the
request parameters (as opposed to being registered as a WFS datastore).
I could fix that easily... I'm just wondering what's up about the
kml code, it seems to me the code on trunk is "old" compared
to the one on 1.7.x? Was the merge from the kml merge forward ported
to trunk?
Cheers
Andrea
--
Andrea Aime
OpenGeo - http://opengeo.org
Expert service straight from the developers.
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Geoserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-devel