dear Andrea,
althought the Style for utm_incertidum exists (so I think you can remove the message from JIRA), I have removed this FeatureType from catalog.
When reloading…(extended debug version ;.)) still the same problems as before.
I wonder why doesn’t understand the XML declaration of catalog.xml and each info.xml?? this Xml declarations is correct, right? <?config.xml version="1.0" encoding="UTF-8"?>
2009-01-12 12:24:17,884 DEBUG [org.vfny.geoserver.global] - File is valid: /Data_Directory/plugIns
2009-01-12 12:24:17,885 TRACE [org.vfny.geoserver.global] - loading configuration file java.io.FileReader@anonymised.com
2009-01-12 12:24:17,887 TRACE [org.vfny.geoserver.global] - getting element text for [name: null]
2009-01-12 12:24:17,887 TRACE [org.vfny.geoserver.global] - getting element text for [description: null]
2009-01-12 12:24:17,887 TRACE [org.vfny.geoserver.global] - getting element text for [class: null]
…
DEBUG [org.vfny.geoserver.global] - File is valid: /Data_Directory/validation
2009-01-12 12:24:18,007 INFO [org.geoserver.catalog] - Disposing datastore ‘edit_postGIS’
2009-01-12 12:24:18,007 DEBUG [org.vfny.geoserver.requests] - First 4 bytes of XML doc are : 3C (‘<’) 3F (‘?’) 63 (‘c’) 6F (‘o’)
2009-01-12 12:24:18,008 DEBUG [org.vfny.geoserver.requests] - Charset detection phase 1. Inferred encoding: UTF-8
2009-01-12 12:24:18,008 DEBUG [org.vfny.geoserver.requests] - Invalid(?) XML declaration: <?conf.
2009-01-12 12:24:18,008 DEBUG [org.vfny.geoserver.requests] - Charset detection phase 2. Charset in XML declaration is null
.
2009-01-12 12:24:18,011 DEBUG [org.geoserver] - Found Java environment variable : ‘RELINQUISH_LOG4J_CONTROL’ to be unset
2009-01-12 12:24:18,011 DEBUG [org.geoserver] - Found Servlet context parameter : ‘RELINQUISH_LOG4J_CONTROL’ to be unset
2009-01-12 12:24:18,011 DEBUG [org.geoserver] - Found System environment variable : ‘RELINQUISH_LOG4J_CONTROL’ to be unset
…
2009-01-12 12:24:18,019 DEBUG [org.geoserver.logging] - Logging output to file ‘/logs/geoserver.log’
2009-01-12 12:24:18,019 DEBUG [org.geoserver.logging] - FINISHED CONFIGURING GEOSERVER LOGGING -------------------------
AGAIN, WHEN LOADING CATALOG.XML runs the error…
2009-01-12 12:24:18,019 DEBUG [org.vfny.geoserver.requests] - First 4 bytes of XML doc are : 3C (‘<’) 3F (‘?’) 63 (‘c’) 6F (‘o’)
2009-01-12 12:24:18,019 DEBUG [org.vfny.geoserver.requests] - Charset detection phase 1. Inferred encoding: UTF-8
2009-01-12 12:24:18,019 DEBUG [org.vfny.geoserver.requests] - Invalid(?) XML declaration: <?conf.
2009-01-12 12:24:18,019 DEBUG [org.vfny.geoserver.requests] - Charset detection phase 2. Charset in XML declaration is null
.
…
2009-01-12 12:24:18,059 INFO [org.geoserver.catalog] - Processed data store ‘edit_postGIS’, enabled
2009-01-12 12:24:18,060 DEBUG [org.vfny.geoserver.global] - in string url
…
2009-01-12 12:24:18,102 INFO [org.geoserver.catalog] - Processed coverage store ‘sfDem’, enabled
…
AGAIN, FOR EACH FEATURE TYPE runs the error:
2009-01-12 12:24:18,102 DEBUG [org.vfny.geoserver.requests] - First 4 bytes of XML doc are : 3C (‘<’) 66 (‘f’) 65 (‘e’) 61 (‘a’)
2009-01-12 12:24:18,102 DEBUG [org.vfny.geoserver.requests] - Charset detection phase 1. Inferred encoding: UTF-8
2009-01-12 12:24:18,102 DEBUG [org.vfny.geoserver.requests] - Invalid(?) XML declaration: <featu.
2009-01-12 12:24:18,102 DEBUG [org.vfny.geoserver.requests] - Charset detection phase 2. Charset in XML declaration is null
.
2009-01-12 12:24:18,126 INFO [org.geoserver.catalog] - Loaded feature type ‘topp:country_earth’
…
2009-01-12 12:24:27,768 INFO [org.geoserver.confg] - Loading service ‘wms’
2009-01-12 12:24:27,771 DEBUG [org.vfny.geoserver.global] - setting styles to:
… SETTING UP STYLES WITHOUT ERROR
2009-01-12 12:24:27,906 DEBUG [org.vfny.geoserver.action] - request: /admin/loadFromXML.do
2009-01-12 12:24:27,907 DEBUG [org.vfny.geoserver.action] - forward: null
I tried GetCapabilities with geoserver_developer logging and maybe it would be helpful if we Geoserver would log which LegendURL is failing… but a GetLegendGraphic error would make a GetCapabilities request fail? sounds strange.
2009-01-12 13:48:51,377 DEBUG [org.vfny.geoserver.wms.responses.helpers] - producing a capabilities document for GetCapabilities [service: WMS, version: 1.1.1]
2009-01-12 13:48:51,404 DEBUG [org.vfny.geoserver.wms.responses.helpers] - Collecting summarized latlonbbox and common SRS…
2009-01-12 13:48:51,404 DEBUG [org.vfny.geoserver.wms.responses.helpers] - Summarized LatLonBBox is Env[-180.16666666666666 : 1092.0, -90.0 : 180.0]
2009-01-12 13:40:24,058 DEBUG [org.vfny.geoserver.wms.responses.helpers] - Adding GetLegendGraphic call as LegendURL
2009-01-12 13:40:24,059 WARN [org.vfny.geoserver.wms.responses.helpers] -
java.lang.NullPointerException
2009-01-12 13:40:24,059 DEBUG [org.vfny.geoserver.wms.responses.helpers] - Adding GetLegendGraphic call as LegendURL
…
thanks a lot for your help.
Pere
2009/1/12 Andrea Aime <aaime@anonymised.com>
pere roca ha scritto:
hi,
I have just updated from 1.5 (I think) to 1.7.1 and everything seems to work
fine but I’m getting strange error with GetCapabilities.
The resulting XML capabilities
(http://edit.csic.es/geoserver/wms?request=GetCapabilities) doesn’t work, as
it’s not well-formed: an extra is added at the end of the document
(you can see it in the resulting alert that appears when using IE on
http://edit.csic.es/edit_geo/prototype/edit.html or using Firebug and
Firefox 3).
Looked at the xml document returned with the validating xml editor
embedded in Eclipse. The issue happens mid document, with the layer
topp:utm_incertidum, whose Style is not encoded, the
element is opened but never closed. It seems the style that
layer refers to cannot be found?
I managed to reproduce the same output as you by forcefully
deleting a .sld file from the data directory, yet, that
produced a proper exception in the logs, both at load
time and when writing out the capabilities, here is
a sample:
12 gen 10:49:49 WARN [responses.helpers] -
java.lang.NullPointerException
at org.vfny.geoserver.wms.responses.helpers.WMSCapsTransformer$CapabilitiesTranslator.handleFeatureType(WMSCapsTransformer.java:732)
at org.vfny.geoserver.wms.responses.helpers.WMSCapsTransformer$CapabilitiesTranslator.handleFeaturesTree(WMSCapsTransformer.java:645)
at org.vfny.geoserver.wms.responses.helpers.WMSCapsTransformer$CapabilitiesTranslator.handleLayers(WMSCapsTransformer.java:517)
at org.vfny.geoserver.wms.responses.helpers.WMSCapsTransformer$CapabilitiesTranslator.handleCapability(WMSCapsTransformer.java:334)
at org.vfny.geoserver.wms.responses.helpers.WMSCapsTransformer$CapabilitiesTranslator.encode(WMSCapsTransformer.java:218)
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.WMSCapabilitiesResponse.execute(WMSCapabilitiesResponse.java:148)
at org.geoserver.ows.adapters.ResponseAdapter.getMimeType(ResponseAdapter.java:48)
at org.geoserver.ows.Dispatcher.response(Dispatcher.java:689)
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.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
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.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:163)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:41)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:324)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
It’s quite strange you don’t have such a thing in yours.
Anyways, the proper GeoServer behaviour in such case should be to
dump an error message when loading the layer, and then disable it
so that it’s not served anymore.
Opening a jira issue about that:
http://jira.codehaus.org/browse/GEOS-2558
Cheers
Andrea
–
Andrea Aime
OpenGeo - http://opengeo.org
Expert service straight from the developers.
–
Pere Roca Ristol
Biòleg i especialista GIS
Museo Nacional de Ciencias Naturales (CSIC)
Visita l’EDIT mapViewer!
http://edit.csic.es/edit_geo/prototype/edit.html