[Geoserver-users] wfs-t: still no success with client-action

Hi geoserver list,
i’m still trying to test geoserver wfs-t with a suitable client. Stilll no success. My last try with mapbender produced an error. When digitizing a point and saving it back to geoserver the following error occured (the full stack incl. the preceding actions):

28 Jul 14:52:01 INFO [geoserver.filters] - 10.90.204.77 “GET /geoserver/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&SERVICE=WMS&LAYERS=ora:KA_KOM_EINL_SDO&STYLES=&SRS=EPSG:31467&BBOX=3356648.2065,5451668.746,3637627.2065,5704549.846&WIDTH=500&HEIGHT=450&FORMAT=image/png&BGCOLOR=0xffffff&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_xml” “Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.16) Gecko/20080702 Firefox/2.0.0.16” “http://localhost/mapbender/php/mod_map1.php?&guiID=wfs-t_hmulv&elementID=mapframe1&e_id_css=mapframe1&e_id=mapframe1&e_target=&&guiID=wfs-t_hmulv

28 Jul 14:52:01 INFO [geoserver.filters] - 10.90.204.77 “GET /geoserver/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&SERVICE=WMS&LAYERS=ora:KA_KOM_EINL_SDO&STYLES=&SRS=EPSG:31467&BBOX=3351244.764192308,5451668.746,3643030.648807692,5704549.846&WIDTH=150&HEIGHT=130&FORMAT=image/png&BGCOLOR=0xffffff&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_xml” “Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.16) Gecko/20080702 Firefox/2.0.0.16” “http://localhost/mapbender/php/mod_mapOV.php?wms=0&&guiID=wfs-t_hmulv&elementID=overview&e_id_css=overview&e_id=overview&e_target=mapframe1&&guiID=wfs-t_hmulv

28 Jul 14:52:01 INFO [geoserver.filters] - Not compressing output for mimetype: image/png
28 Jul 14:52:01 INFO [geoserver.filters] - 10.90.204.77 “GET /geoserver/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&SERVICE=WMS&LAYERS=ora:KA_KOM_EINL_SDO&STYLES=&SRS=EPSG:31467&BBOX=3351244.764192308,5451668.746,3643030.648807692,5704549.846&WIDTH=150&HEIGHT=130&FORMAT=image/png&BGCOLOR=0xffffff&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_xml” took 250ms

28 Jul 14:52:01 INFO [geoserver.filters] - Not compressing output for mimetype: image/png
28 Jul 14:52:01 INFO [geoserver.filters] - 10.90.204.77 “GET /geoserver/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&SERVICE=WMS&LAYERS=ora:KA_KOM_EINL_SDO&STYLES=&SRS=EPSG:31467&BBOX=3356648.2065,5451668.746,3637627.2065,5704549.846&WIDTH=500&HEIGHT=450&FORMAT=image/png&BGCOLOR=0xffffff&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_xml” took 453ms

28 Jul 14:52:23 INFO [geoserver.filters] - 10.90.204.77 “POST /geoserver/wfs” “” “”
28 Jul 14:52:24 INFO [geoserver.filters] - 10.171.162.166 “GET /geoserver/wfs?request=DescribeFeatureType” “Java/1.5.0_15” “”

28 Jul 14:52:24 INFO [geoserver.wfs] -
Request: describeFeatureType
handle = null
service = WFS
version = 1.1.0
baseUrl = http://srvumwgeo006.umwelt.hessen.de:80/geoserver/
typeName =
outputFormat = text/xml; subtype=gml/3.1.1

Result:
28 Jul 14:52:24 INFO [geoserver.filters] - 10.171.162.166 “GET /geoserver/wfs?request=DescribeFeatureType” took 16ms
28 Jul 14:52:24 WARN [geoserver.ows] -
java.lang.NullPointerException
at org.geotools.xml.Schemas.getImports(Schemas.java:823)
at org.geotools.xml.impl.ParserHandler.startElement(ParserHandler.java:324)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.geotools.xml.Parser.parse(Parser.java:185)
at org.geotools.xml.Parser.parse(Parser.java:164)
at org.geoserver.wfs.xml.v1_0_0.WfsXmlReader.read(WfsXmlReader.java:60)
at org.geoserver.ows.Dispatcher.parseRequestXML(Dispatcher.java:1072)
at org.geoserver.ows.Dispatcher.dispatch(Dispatcher.java:389)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:185)
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.doPost(FrameworkServlet.java:357)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:69)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
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.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:595)
28 Jul 14:52:24 INFO [geoserver.filters] - 10.90.204.77 “POST /geoserver/wfs” took 766ms
28 Jul 14:52:24 INFO [geoserver.filters] - 10.90.204.77 “GET /geoserver/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&SERVICE=WMS&LAYERS=ora:KA_KOM_EINL_SDO&STYLES=&SRS=EPSG:31467&BBOX=3356507.5763698695,5451542.178882883,3637767.83663013,5704676.413117117&WIDTH=500&HEIGHT=450&FORMAT=image/png&BGCOLOR=0xffffff&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_xml” “Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.16) Gecko/20080702 Firefox/2.0.0.16” “http://localhost/mapbender/php/mod_map1.php?&guiID=wfs-t_hmulv&elementID=mapframe1&e_id_css=mapframe1&e_id=mapframe1&e_target=&&guiID=wfs-t_hmulv

28 Jul 14:52:25 INFO [geoserver.filters] - Not compressing output for mimetype: image/png
28 Jul 14:52:25 INFO [geoserver.filters] - 10.90.204.77 “GET /geoserver/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&SERVICE=WMS&LAYERS=ora:KA_KOM_EINL_SDO&STYLES=&SRS=EPSG:31467&BBOX=3356507.5763698695,5451542.178882883,3637767.83663013,5704676.413117117&WIDTH=500&HEIGHT=450&FORMAT=image/png&BGCOLOR=0xffffff&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_xml” took 375ms

Where 10.171.162.166 is the machine geoserver runs at and 10.90.204.77 is the machine mapbender runs at. i’m using geoserver 1.6.3 and mapbender 2.5.0 RC3. The FeatureType to insert a feature is a point feature with ArcSDE backend.

I think characteristic for that error is that the describeFeatureType request specified no typeName. Does anybode have an idea what went wrong here?

Regards
Albrecht

Albrecht.Weiser@anonymised.com ha scritto:

Hi geoserver list,
i'm still trying to test geoserver wfs-t with a suitable client. Stilll no success. My last try with mapbender produced an error. When digitizing a point and saving it back to geoserver the following error occured (the full stack incl. the preceding actions):

...

28 Jul 14:52:24 INFO [geoserver.filters] - 10.171.162.166 "GET /geoserver/wfs?request=DescribeFeatureType" "Java/1.5.0_15" ""

Hum, this request is invalid, it should specify both service and version. Anyways, GeoServer is lenient and will interpret it as
/geoserver/wfs?request=DescribeFeatureType&service=WFS&version=1.1.0

not sure MapBender can handle WFS 1.1.0 thought.

28 Jul 14:52:24 INFO [geoserver.wfs] -
Request: describeFeatureType
        handle = null
        service = WFS
        version = 1.1.0
        baseUrl = _http://srvumwgeo006.umwelt.hessen.de:80/geoserver/_
        typeName =
        outputFormat = text/xml; subtype=gml/3.1.1

Result:
28 Jul 14:52:24 INFO [geoserver.filters] - 10.171.162.166 "GET /geoserver/wfs?request=DescribeFeatureType" took 16ms
28 Jul 14:52:24 WARN [geoserver.ows] -
java.lang.NullPointerException
        at org.geotools.xml.Schemas.getImports(Schemas.java:823)
        at

...

Where 10.171.162.166 is the machine geoserver runs at and 10.90.204.77 is the machine mapbender runs at. i'm using geoserver 1.6.3 and mapbender 2.5.0 RC3. The FeatureType to insert a feature is a point feature with ArcSDE backend.

I think characteristic for that error is that the describeFeatureType request specified no typeName. Does anybode have an idea what went wrong here?

The request without typename is valid, it means the description of all
feature types must be returned. For example, out of GeoServer 1.7
beta I get:

<xsd:schema elementFormDefault="qualified">
<xsd:import namespace="http://www.openplans.org/spearfish&quot; schemaLocation="http://localhost:8080/geoserver/wfs?request=DescribeFeatureType&version=1.1.0&typeName=sf:roads,sf:as_alias,sf:bugsites,sf:archsites,sf:restricted,sf:streams&quot;/&gt;
<xsd:import namespace="http://www.openplans.org/topp&quot; schemaLocation="http://localhost:8080/geoserver/wfs?request=DescribeFeatureType&version=1.1.0&typeName=topp:tasmania_state_boundaries,topp:states,topp:tasmania_roads,topp:tasmania_water_bodies,topp:tasmania_cities&quot;/&gt;
<xsd:import namespace="http://www.census.gov" schemaLocation="http://localhost:8080/geoserver/wfs?request=DescribeFeatureType&version=1.1.0&typeName=tiger:tiger_roads,tiger:poly_landmarks,tiger:giant_polygon,tiger:poi&quot;/&gt;
</xsd:schema>

I also tried gs 1.6.2 and gs 1.6.4, could not reproduce the
issue with either of them, the output is the same. So it should
have something to do with your own specific setup.
Justin, looking into the 1.6.x branch (gt 2.4.x actually) it seems
that one null schema object has been put into the schema queue
processed by Schemas.getImports, possibly the very parameter passed
to the method. Any idea how this could happen?

Cheers
Andrea