[Geoserver-devel] error in udig request to geoserver

I was trying to track down a user reported error for udig communicating with geoserver - with 1.1M8. This is just add & view a WFS data store in udig.

The actual request is:

<?xml version="1.0" encoding="UTF-8"?>
<GetFeature xmlns="http://www.opengis.net/wfs&quot; xmlns:gml="http://www.opengis.net/gml&quot; xmlns:ogc="http://www.opengis.net/ogc&quot; version="1.0.0" service="WFS" outputFormat="GML2"><Query typeName="topp:countries"><ogc:PropertyName>gen_full</ogc:PropertyName>
<ogc:Filter><ogc:BBOX><ogc:PropertyName>gen_full</ogc:PropertyName>
<gml:Box><gml:coordinates decimal="." cs="," ts=" ">-73.99072169855336,40.750998793853334 -73.92145139669228,40.781905108658854</gml:coordinates>
</gml:Box>
</ogc:BBOX>
</ogc:Filter>
</Query>
</GetFeature>

If I send this request to Geoserver (using the sample request form in the geoserver gui), it works just fine - no problems.

But, when udig makes the request, all heck breaks loose. The only thing I can think of is that udig is prematurely closing the connection to geoserver (the exception is "EOFException(java.net.SocketException: Connection reset by peer: socket write error)"). There's nothing in the udig log.

Any ideas whats happening?

dave

Here's a more complete stack trace (it hard to get better because the exception gets caught, wrapped, and re-thrown):

EOFException(java.net.SocketException: Connection reset by peer: socket write error)
    at org.apache.xml.serializer.ToStream.characters(ToStream.java:1514)
    at org.apache.xalan.transformer.TransformerIdentityImpl.characters(TransformerIdentityImpl.java:1096)
    at org.geotools.xml.transform.TransformerBase$ContentHandlerFilter.characters(TransformerBase.java:318)
    at org.geotools.gml.producer.CoordinateWriter.writeCoordinates(CoordinateWriter.java:148)
    at org.geotools.gml.producer.GeometryTransformer$GeometryTranslator.writePolygon(GeometryTransformer.java:202)
    at org.geotools.gml.producer.GeometryTransformer$GeometryTranslator.encode(GeometryTransformer.java:177)
    at org.geotools.gml.producer.GeometryTransformer$GeometryTranslator.encode(GeometryTransformer.java:147)
    at org.geotools.gml.producer.GeometryTransformer$GeometryTranslator.writeMulti(GeometryTransformer.java:233)
    at org.geotools.gml.producer.GeometryTransformer$GeometryTranslator.encode(GeometryTransformer.java:185)
    at org.geotools.gml.producer.FeatureTransformer$FeatureTranslator.handleAttribute(FeatureTransformer.java:561)
    at org.geotools.gml.producer.FeatureTransformer$FeatureTranslator.handleFeatureReader(FeatureTransformer.java:420)
    at org.geotools.gml.producer.FeatureTransformer$FeatureTranslator.encode(FeatureTransformer.java:396)
    at org.geotools.xml.transform.TransformerBase$XMLReaderSupport.parse(TransformerBase.java:611)
    at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:463)
    at org.geotools.xml.transform.TransformerBase$Task.run(TransformerBase.java:293)
    at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:126)
    at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:105)
    at org.vfny.geoserver.wfs.responses.GML2FeatureResponseDelegate.encode(GML2FeatureResponseDelegate.java:225)
    at org.vfny.geoserver.wfs.responses.FeatureResponse.writeTo(FeatureResponse.java:132)
    at org.vfny.geoserver.servlets.AbstractService.doService(AbstractService.java:510)
    at org.vfny.geoserver.servlets.AbstractService.doPost(AbstractService.java:387)
    at org.vfny.geoserver.wfs.servlets.WfsDispatcher.doResponse(WfsDispatcher.java:286)
    at org.vfny.geoserver.wfs.servlets.WfsDispatcher.doPost(WfsDispatcher.java:175)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:358)
    at org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHandler.java:342)
    at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:122)
    at org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHandler.java:334)
    at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:286)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
    at org.mortbay.http.HttpContext.handle(HttpContext.java:1807)
    at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
    at org.mortbay.http.HttpContext.handle(HttpContext.java:1757)
    at org.mortbay.http.HttpServer.service(HttpServer.java:879)
    at org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
    at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:961)
    at org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
    at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:197)
    at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:276)
    at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:511)

Here's it cut down a bit more...

java.lang.RuntimeException: java.lang.RuntimeException: EOFException(java.net.SocketException: Software caused connection abort: socket write error)
    at org.geotools.gml.producer.FeatureTransformer$FeatureTranslator.handleAttribute(FeatureTransformer.java:575)
    at org.geotools.gml.producer.FeatureTransformer$FeatureTranslator.handleFeatureReader(FeatureTransformer.java:420)
    at org.geotools.gml.producer.FeatureTransformer$FeatureTranslator.encode(FeatureTransformer.java:396)
    at org.geotools.xml.transform.TransformerBase$XMLReaderSupport.parse(TransformerBase.java:611)
    at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:463)
    at org.geotools.xml.transform.TransformerBase$Task.run(TransformerBase.java:293)
    at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:126)
    at org.geotools.xml.transform.TransformerBase.transform(TransformerBase.java:105)
    at org.vfny.geoserver.wfs.responses.GML2FeatureResponseDelegate.encode(GML2FeatureResponseDelegate.java:225)
    at org.vfny.geoserver.wfs.responses.FeatureResponse.writeTo(FeatureResponse.java:132)
    at org.vfny.geoserver.servlets.AbstractService.doService(AbstractService.java:510)
    at org.vfny.geoserver.servlets.AbstractService.doGet(AbstractService.java:276)
    at org.vfny.geoserver.wfs.servlets.WfsDispatcher.doResponse(WfsDispatcher.java:284)
    at org.vfny.geoserver.wfs.servlets.WfsDispatcher.doGet(WfsDispatcher.java:213)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:358)
    at org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHandler.java:342)
    at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:122)
    at org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHandler.java:334)
    at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:286)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
    at org.mortbay.http.HttpContext.handle(HttpContext.java:1807)
    at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
    at org.mortbay.http.HttpContext.handle(HttpContext.java:1757)
    at org.mortbay.http.HttpServer.service(HttpServer.java:879)
    at org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
    at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:961)
    at org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
    at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:197)
    at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:276)
    at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:511)
Caused by: java.lang.RuntimeException: EOFException(java.net.SocketException: Software caused connection abort: socket write error)
    at org.geotools.gml.producer.GeometryTransformer$GeometryTranslator.writePolygon(GeometryTransformer.java:206)
    at org.geotools.gml.producer.GeometryTransformer$GeometryTranslator.encode(GeometryTransformer.java:177)
    at org.geotools.gml.producer.GeometryTransformer$GeometryTranslator.encode(GeometryTransformer.java:147)
    at org.geotools.gml.producer.GeometryTransformer$GeometryTranslator.writeMulti(GeometryTransformer.java:233)
    at org.geotools.gml.producer.GeometryTransformer$GeometryTranslator.encode(GeometryTransformer.java:185)
    at org.geotools.gml.producer.FeatureTransformer$FeatureTranslator.handleAttribute(FeatureTransformer.java:561)
    ... 31 more
Caused by: EOFException(java.net.SocketException: Software caused connection abort: socket write error)
    at org.apache.xml.serializer.ToStream.characters(ToStream.java:1514)
    at org.apache.xalan.transformer.TransformerIdentityImpl.characters(TransformerIdentityImpl.java:1096)
    at org.geotools.xml.transform.TransformerBase$ContentHandlerFilter.characters(TransformerBase.java:318)
    at org.geotools.gml.producer.CoordinateWriter.writeCoordinates(CoordinateWriter.java:148)
    at org.geotools.gml.producer.GeometryTransformer$GeometryTranslator.writePolygon(GeometryTransformer.java:202)
    ... 36 more