Hi all,
I'm trying to create a new binding for the GML EnvelopeType as a JTS
Envelope, since I couldn't use geotools gml2/3 EMF models due to some
specific Elements defined only for WCS 1.0.0.
Nevertheless I followed the implementation of the existing gt-GML3 module
EvnelopeTypeBinding, returning a ReferencedEnvelope object as result of the
EnvelopeTypeBinding parsing.
Now ... all seems working fine until I try to parse a WCS 1.0.0
SpatialSubsetType ... here I get an exception like the following:
org.vfny.geoserver.wcs.WcsException: Parsing failed, the xml request is most
probably not compliant to the wcs schema
at org.geoserver.wcs.xml.v1_0_0.WcsXmlReader.read(WcsXmlReader.java:50)
at
org.geoserver.wcs.xml.GetCoverageXmlParserTest.testBasic(GetCoverageXmlParserTest.java:86)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at junit.framework.TestCase.runTest(TestCase.java:164)
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 junit.framework.TestSuite.runTest(TestSuite.java:230)
at junit.framework.TestSuite.run(TestSuite.java:225)
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)
Caused by: java.lang.RuntimeException: Parsing failed for spatialSubset:
java.lang.RuntimeException: Unable to set property: Envelope for eobject: {
http://www.opengis.net/wcs}SpatialSubsetType
at org.geotools.xml.impl.ParseExecutor.visit(ParseExecutor.java:152)
at
org.geotools.xml.impl.BindingWalker$BindingExecutionChain.execute(BindingWalker.java:208)
at org.geotools.xml.impl.BindingWalker.walk(BindingWalker.java:174)
at
org.geotools.xml.impl.ElementHandlerImpl.endElement(ElementHandlerImpl.java:222)
at
org.geotools.xml.impl.ParserHandler.endElement(ParserHandler.java:582)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown
Source)
at org.apache.xerces.impl.xs.XMLSchemaValidator.endElement(Unknown
Source)
at
org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(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.XML11Configuration.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:180)
at org.geotools.xml.Parser.parse(Parser.java:158)
at org.geoserver.wcs.xml.v1_0_0.WcsXmlReader.read(WcsXmlReader.java:48)
... 19 more
Caused by: java.lang.RuntimeException: Unable to set property: Envelope for
eobject: {http://www.opengis.net/wcs}SpatialSubsetType
at
org.geotools.xml.AbstractComplexEMFBinding.setProperty(AbstractComplexEMFBinding.java:271)
at
org.geotools.xml.AbstractComplexEMFBinding.setProperties(AbstractComplexEMFBinding.java:202)
at
org.geotools.xml.AbstractComplexEMFBinding.parse(AbstractComplexEMFBinding.java:143)
at org.geotools.xml.impl.ParseExecutor.visit(ParseExecutor.java:143)
... 35 more
Caused by: java.lang.ClassCastException: The feature 'envelope's type
'EnvelopeType' does not permit a value of type
'org.geotools.geometry.jts.ReferencedEnvelope'
at
org.eclipse.emf.ecore.impl.EStructuralFeatureImpl$BasicFeatureMapEntry.validate(EStructuralFeatureImpl.java:2843)
at
org.eclipse.emf.ecore.util.FeatureMapUtil.createEntry(FeatureMapUtil.java:146)
at
org.eclipse.emf.ecore.util.BasicFeatureMap.createEntry(BasicFeatureMap.java:94)
at
org.eclipse.emf.ecore.util.BasicFeatureMap.addAll(BasicFeatureMap.java:1253)
at
org.eclipse.emf.ecore.util.FeatureMapUtil$FeatureEList.addAll(FeatureMapUtil.java:656)
at org.geotools.xml.EMFUtils.add(EMFUtils.java:93)
at
org.geotools.xml.AbstractComplexEMFBinding.setProperty(AbstractComplexEMFBinding.java:230)
... 38 more
And if I return an EvnelopeType all works well ...
any ideas? am I missing something? Do I have to build a geotools converter
or something like that?
Any help kindly appreciated.
Cheers,
Alessio.
--
-------------------------------------------------------
Eng. Alessio Fabiani
Vice-President /CTO GeoSolutions S.A.S.
Via Carignoni 51
55041 Camaiore (LU)
Italy
phone: +39 0584983027
fax: +39 0584983027
mob: +39 349 8227000
http://www.geo-solutions.it
-------------------------------------------------------
-------------------------------------------------------------------------
Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW!
Studies have shown that voting for your favorite open source project,
along with a healthy diet, reduces your potential for chronic lameness
and boredom. Vote Now at http://www.sourceforge.net/community/cca08
_______________________________________________
Geoserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-devel