| [news.eclipse.tools.emf] Re: Not a valid classifier on windows standalone application |
Jack,
Comments below.
That's always a good indication that plugin.xml extension registrations that are needed have been overlooked.Hi,
I have a problem after upgrading from 2.3 to 2.4.1 in my standalone application.
I have an Object "Command" which is directly derived from EObject. Command is my root object from which all other objects from my application are derived. This class is abstract so its not listed in CommandFactoryImpl.
One thing is that it works when I call it from Eclipse but not for in my standalone application on windows but on Linux.
Can you tell if a different resource factory is being used to create the resource in each case?
So it works in Eclipse (win+linux), and linux standalone but not windows standalone. I check the classpaths, etc. everything is the same.
I'm lost how can this be??
Normally it should never try to create an instance of an abstract type because the serialization will contain either an xsi:type or a QName to represent the concrete type that should be used. I suspect that the different options being used in each case are causing the problem....
The exception which I get:
java.lang.IllegalArgumentException: The class 'Command' is not a valid classifier
at command.actions.impl.CommandFactoryImpl.create(Unknown Source)
at org.eclipse.emf.ecore.xmi.impl.XMLHelperImpl.createObject(XMLHelperIm
pl.java:884)
at org.eclipse.emf.ecore.xmi.impl.XMLHelperImpl.createObject(XMLHelperIm
pl.java:920)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.createObjectFromFactory(XML
Handler.java:2171)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.createObjectFromFeatureType
(XMLHandler.java:2144)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.createObject(XMLHandler.jav
a:2020)
at org.eclipse.emf.ecore.xmi.impl.XMIHandler.createObject(XMIHandler.jav
a:131)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.handleFeature(XMLHandler.ja
va:1825)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.processElement(XMLHandler.j
ava:1023)
at org.eclipse.emf.ecore.xmi.impl.XMIHandler.processElement(XMIHandler.j
ava:87)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.startElement(XMLHandler.jav
a:1001)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.startElement(XMLHandler.jav
a:712)
at org.eclipse.emf.ecore.xmi.impl.XMIHandler.startElement(XMIHandler.jav
a:167)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(AbstractSAXP
arser.java:477)
at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Abst
ractXMLDocumentParser.java:220)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElemen
t(XMLDocumentFragmentScannerImpl.java:810)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContent
Dispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1534)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XM
LDocumentFragmentScannerImpl.java:338)
at org.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration
.java:827)
at org.apache.xerces.parsers.XML11Configuration.parse(XML11Configuration
.java:757)
at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:148)
at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.j
ava:1168)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.load(XMLLoadImpl.java:181)
at org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl.doLoad(XMLResourceImpl
.java:180)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.ja
va:1445)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.ja
va:1241)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoad(Resour
ceSetImpl.java:255)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(
ResourceSetImpl.java:270)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(Resou
rceSetImpl.java:397)