Details
Description
Mail thread from geotools-devel:
Am 10.02.2011 18:51, schrieb Justin Deoliveira:
> Actually now that trunk is free the EMF upgrade is my first geotools
> priority when i get a bit of free time. Mostly because i want to
> evaluate the performance improvements and because i think it might help
> with an issue Ben is currently having,.
>
> Getting gt to compile against the latest emf was not too hard, a few
> trivial compilation errors here and there due to the use of generics.
> However I did no testing beyond that.
>
> Ben might have a mandate to help on the EMF upgrade. Ben?
>
> On Thu, Feb 10, 2011 at 9:09 AM, Andrea Aime
> <andrea.aime@geo-solutions.it <andrea.aime@geo-solutions.it
>> wrote:
>
> On Thu, Feb 10, 2011 at 4:57 PM, Matthias Lendholt
> <matthias.lendholt@gfz-potsdam.de
> <matthias.lendholt@gfz-potsdam.de
>> wrote:
> > Hopefully. First I have to setup maven/eclipse/svn for a fresh
> geotools
> > workspace to access trunk. Or have you switched to git?
>
> GeoTools is still on svn.
> The thing is, will Justin have time to play with an EMF upgrade? It's
> not something we can
> take for granted.
> Wondering if someone else could do it with Justin providing
> information about his latest
> attempt at it
>
Am 09.02.2011 17:22, schrieb Matthias Lendholt:
> Dear udig-devel, geotools-devel,
>
> (Sorry for crossposting but this affects both uDig and Geotools)
>
> Recently we upgraded our project from eclipse 3.5, udig-sdk_1.2RC1
> (geotools 2.6.2) to eclipse 3.6, udig_sdk_1.2.1 (with geotools 2.7-RC1).
>
>
> For the integretion / wrapping of WPS processes the application uses
> gt-process (org.geotools.process) and gt-wps (org.geotools.data.wps).
>
> Since the upgrade java.lang.InstantiationError are thrown whenever the
> application tries to use org.geotools.data.wps.WPSFactory to access a
> WPS. Stacktrace below.
>
> The exception is thrown in
> jar: net.opengis.wps-2.7-RC1.jar
> file: net.opengis.wps10.impl.UOMsTypeImpl
> row 81: uOM = new EcoreEList(Unit.class, this );
>
>
> EcoreEList is in org.eclipse.emf.ecore_2.6.1.v20100914-1218.jar
>
> It's not easy to debug... but I guess somewhere between geotools 2.6.2
> and 2.7-RC1 the compatibility with emf.ecore was lost. In
> udig-sdk_1.2RC1 the version emf.ecore_2.5.0 was used and included (and
> it worked). I haven't checked the constructor details so far but maybe
> something has changed here.
>
> Any ideas / help?
>
>
>
> org.dews_online.ccui.spc.wps 4 0 2011-02-09 11:12:11.871
> !MESSAGE GetSupportedGeocodeTypesProcess: Parsing failed for Supported:
> java.lang.InstantiationError: org.eclipse.emf.ecore.util.EcoreEList
> !STACK 0
> java.lang.RuntimeException: Parsing failed for Supported:
> java.lang.InstantiationError: org.eclipse.emf.ecore.util.EcoreEList
> at org.geotools.xml.impl.ParseExecutor.visit(ParseExecutor.java:158)
> at
> org.geotools.xml.impl.BindingWalker$BindingExecutionChain.execute(BindingWalker.java:215)
> at org.geotools.xml.impl.BindingWalker.walk(BindingWalker.java:181)
> at
> org.geotools.xml.impl.ElementHandlerImpl.endElement(ElementHandlerImpl.java:222)
> at org.geotools.xml.impl.ParserHandler.endElement(ParserHandler.java:607)
> at org.apache.xerces.parsers.AbstractSAXParser.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:223)
> at org.geotools.xml.Parser.parse(Parser.java:151)
> at
> org.geotools.data.wps.response.DescribeProcessResponse.<init>(DescribeProcessResponse.java:67)
> at
> org.geotools.data.wps.WPS1_0_0$InternalDescribeProcessRequest.createResponse(WPS1_0_0.java:135)
> at
> org.geotools.data.ows.AbstractWPS.internalIssueRequest(AbstractWPS.java:419)
> at
> org.geotools.data.wps.WebProcessingService.issueRequest(WebProcessingService.java:235)
> at
> org.dews_online.geotools.wps.SimpleWpsConnector.getWpsFactory(SimpleWpsConnector.java:74)
> at
> org.dews_online.geotools.wps.SimpleWpsConnector.executeProcess(SimpleWpsConnector.java:113)
> at
> org.dews_online.ccui.spc.wps.processwrapper.AProcess.executeProcess(AProcess.java:40)
> at
> org.dews_online.ccui.spc.wps.processwrapper.GetGeocodesProcess.getGeoCodes(GetGeocodesProcess.java:63)
> at
> org.dews_online.ccui.spc.wps.processwrapper.GetGeocodesProcess.getGeoCodes(GetGeocodesProcess.java:87)
> at
> org.dews_online.ccui.ilc.control.jobs.UpdateGeocodeJob.run(UpdateGeocodeJob.java:41)
> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
>
> Caused by: java.lang.InstantiationError:
> org.eclipse.emf.ecore.util.EcoreEList
> at net.opengis.wps10.impl.UOMsTypeImpl.getUOM(UOMsTypeImpl.java:81)
> at net.opengis.wps10.impl.UOMsTypeImpl.eGet(UOMsTypeImpl.java:94)
> at
> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1021)
> at
> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1013)
> at
> org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1008)
> at org.geotools.xml.EMFUtils.get(EMFUtils.java:75)
> at org.geotools.xml.EMFUtils.isCollection(EMFUtils.java:140)
> at
> org.geotools.xml.AbstractComplexEMFBinding.setProperty(AbstractComplexEMFBinding.java:231)
> at
> org.geotools.xml.AbstractComplexEMFBinding.setProperties(AbstractComplexEMFBinding.java:204)
> at
> org.geotools.xml.AbstractComplexEMFBinding.parse(AbstractComplexEMFBinding.java:145)
> at org.geotools.xml.impl.ParseExecutor.visit(ParseExecutor.java:149)
> ... 25 more
Subject: EMF upgrade
Date: Thu, 10 Mar 2011 12:00:02 +0800
From: Ben Caradoc-Davies
To: Justin Deoliveira
CC: geotools-devel@lists.sourceforge.net
Justin,
I am quite keen to upgrade EMF to see if it helps resolve some of our
outstanding issues:
http://jira.codehaus.org/browse/GEOT-3431
http://jira.codehaus.org/browse/GEOT-3327
I will not be able to devote serious time to this until 28 March at the
earliest, but you could give me a few hints as to how this should be
done. (If you are doing this yourself, please let me know.)
- What version of EMF should we target?
- The eclipse maven repos look far behind, and the last thing we need is
another repo in our builds (and I'm sure Andrea will agree with me).
- EMF 2.6.1 is out:
http://www.eclipse.org/modeling/download.php?file=/modeling/emf/emf/downloads/drops/2.6.x/R201009141218/emf-xsd-SDK-2.6.1.zip
- One of us could extract the emf/xsd/common binary and source jars from
the zip, rename them, and deploy them to the geotools repo. Is this how
you uploaded the existing artifacts?
- This would also be a good time to put the dependencies under
dependency management in the root pom. One example, from the gt-xsd-core
pom.xml:
<dependency>
<groupId>org.eclipse.xsd</groupId>
<artifactId>xsd</artifactId>
<version>2.2.2</version>
</dependency>
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>common</artifactId>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>org.eclipse.emf</groupId>
<artifactId>ecore</artifactId>
<version>2.2.2</version>
</dependency>
Just thinking aloud, so please interrupt me if I am going off track. :-)
Kind regards,
--
Ben Caradoc-Davies
Software Engineering Team Leader
CSIRO Earth Science and Resource Engineering
Australian Resources Research Centre