[Geoserver-devel] Build broken (gimme back the build server!!!)

Hi,
the build is down due to a few errors.

First, a recent change GML3OutpuFormat introduced a dependency on
java 5:
super(new HashSet(Arrays.asList("gml3", "text/xml; subtype=gml/3.1.1")));
versus the version that compiles against java4:
super(new HashSet(Arrays.asList(new Object {"gml3", "text/xml; subtype=gml/3.1.1"})));

This one I fixed, but builds should be carried out with java4 until
we move to geotools trunk :wink:

---------------------------------------------------------------------

The there is org.geoserver.wfs.xml.GMLOutputFormatTest#testGML2Gzip
failing... but it fails in different ways dependent on which jdk is
used. If using java4 I get:
java.util.zip.ZipException: oversubscribed distance tree
  at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:140)
  at java.util.zip.GZIPInputStream.read(GZIPInputStream.java:87)
  at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:105)
  at org.apache.xerces.impl.XMLEntityManager$RewindableInputStream.read(Unknown Source)
  at org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
  at org.apache.xerces.impl.XMLVersionDetector.determineDocVersion(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.DOMParser.parse(Unknown Source)
  at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
  at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:76)
  at org.geoserver.test.GeoServerTestSupport.dom(GeoServerTestSupport.java:318)
  at org.geoserver.wfs.xml.GMLOutputFormatTest.testGML2GZIP(GMLOutputFormatTest.java:43)
  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:324)
  at junit.framework.TestCase.runTest(TestCase.java:154)
  at junit.framework.TestCase.runBare(TestCase.java:127)
  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:118)
  at junit.framework.TestSuite.runTest(TestSuite.java:208)
  at junit.framework.TestSuite.run(TestSuite.java:203)
  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)

So a problem in gzip encoding (this is really strange... I'm starting to wonder if my PC has some problem...)

If I run with java5 or 6 I get the following instead:

org.xml.sax.SAXParseException: Attribute name "xsi:s" must be followed by the ' = ' character.
  at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
  at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
  at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:124)
  at org.geoserver.test.GeoServerTestSupport.dom(GeoServerTestSupport.java:318)
  at org.geoserver.wfs.xml.GMLOutputFormatTest.testGML2GZIP(GMLOutputFormatTest.java:43)
  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:597)
  at junit.framework.TestCase.runTest(TestCase.java:154)
  at junit.framework.TestCase.runBare(TestCase.java:127)
  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:118)
  at junit.framework.TestSuite.runTest(TestSuite.java:208)
  at junit.framework.TestSuite.run(TestSuite.java:203)
  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)

I also tried running a GML2-GZIP request in the browser using a modified sample request, and apparently the mime type or the encoding are not properly set, because firefox won't recognize the output is gzipped.
Well, for the moment I commented out the failing test since I cannot quickly figure out what's going on.

---------------------------------------------------------------------

Then we have the KML tests failing:

Tests in error:
testTransformer(org.vfny.geoserver.wms.responses.map.kml.KMLTransformerTest)
   test(org.vfny.geoserver.wms.responses.map.kml.KMZMapProducerTest)
Tests run: 36, Failures: 0, Errors: 2, Skipped: 0

Investigation showed that this happened because the mock data stuff does
set up srs handling to "leave" even when the native CRS is null. This
is not a situation the UI allows the user to set, but many tests require
that setup, so I fixed the code in order to cope with this situation as
well.

----------------------------------------------------------------------

Whew, now I have the build back. I'm committing the changes so that
other people can work too. The GML issue is still a mistery to be
solved thought.

Cheers
Andrea