[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.modeling.mdt.uml2] Re: Upgrade from UML2-2.2.1 to UML2-3.0.0

Hi Scott,
I recently had the same problem loading a UML model in a JUnit test. I did not see the same problem when the Eclipse platform itself was running.
As a quick fix, I changed the xmlns:uml attribute to use 3.0.0 instead of 2.1.0 in the .uml file itself. Is that an option for you?
I would be very interested in hearing a better solution....
---Tim---


Scott wrote:
Hi,
Iïm new to this group and have the following question:
I have the following code working fine with Eclipse-3.4.1, EMF-2.4.1, and UML2-2.2.1.
public static Model initResourceSet(String inputFile){
ResourceSet resourceSet = new ResourceSetImpl();
resourceSet.getPackageRegistry().put(UMLPackage.eNS_URI, UMLPackage.eINSTANCE);
resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put(UMLResource.FILE_EXTENSION, UMLResource.Factory.INSTANCE);
Map uriMap = resourceSet.getURIConverter().getURIMap();
URI uri = URI.createURI("jar:file:/C:/Eclipse-3.4.1/plugins/org.eclipse.uml2.uml.resources_2.2.0.v200805131030.jar!/");


uriMap.put(URI.createURI(UMLResource.LIBRARIES_PATHMAP), uri.appendSegment("libraries").appendSegment(""));
uriMap.put(URI.createURI(UMLResource.METAMODELS_PATHMAP), uri.appendSegment("metamodels").appendSegment(""));
uriMap.put(URI.createURI(UMLResource.PROFILES_PATHMAP), uri.appendSegment("profiles").appendSegment(""));


 Resource res = resourceSet.getResource(URI.createURI(inputFile), true);
 return (Model) (res.getContents().get(0));
}

Then I upgraded to Eclipse-3.5, EMF-2.5, and UML2-3.0.0, and used new jars, with only the following change:

URI uri = URI.createURI("jar:file:/C:/Eclipse-3.5/plugins/org.eclipse.uml2.uml.resources_3.0.0.v200906011111.jar!/");


Now, Iïm getting the following error:

Exception in thread "main" java.lang.ClassCastException: org.eclipse.emf.ecore.xml.type.impl.AnyTypeImpl cannot be cast to org.eclipse.uml2.uml.Model

At this line: return (Model) (res.getContents().get(0));

Am I missing something?, Can anyone please help?


Thanks,

Scott