[ATL] EMFModelLoader [message #489897] |
Tue, 06 October 2009 12:56 |
stephane Messages: 3 Registered: September 2009 |
Junior Member |
|
|
Hi,
I've defined one model, let us say model A, and one profile, let us say profile P. A references P, and classes from A hold stereotypes from P.
I try to load A programatically using the EMF model loader, but the load process fails with an excpetion, because it cannot resolve the reference from A to P. The same error occurs with TopCased or MagicDraw. I therefore see that there is something I miss. If any one has an idea ?
I attach my code to the current message. Nothing seems strange to me, but I have an exception :
Thanks for you help guys,
Regards
org.eclipse.emf.ecore.resource.Resource$IOWrappedException: Package with uri
'http:///schemas/IDO_Profile/_TM4x0bJGEd60weK1XyfJWw/0' not found. (file:///C:/sfo/work/svnspace/TestXML/dag, 178, 151)
at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.handleErrors(XMLL oadImpl.java:83)
at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.load(XMLLoadImpl. java:191)
at org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl.doLoad(XMLRes ourceImpl.java:180)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(Resour ceImpl.java:1445)
at org.eclipse.m2m.atl.drivers.emf4atl.EMFModelLoader.loadModel (EMFModelLoader.java:183)
at org.atl.commandline.Tool.main(Tool.java:41)
Caused by: org.eclipse.emf.ecore.xmi.PackageNotFoundException: Package with uri 'http:///schemas/IDO_Profile/_TM4x0bJGEd60weK1XyfJWw/0' not found. (file:///C:/sfo/work/svnspace/TestXML/dag, 178, 151)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.getPackageForURI(X MLHandler.java:2575)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.getFactoryForPrefi x(XMLHandler.java:2407)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.createObjectByType (XMLHandler.java:1285)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.createTopObject(XM LHandler.java:1454)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.processElement(XML Handler.java:1019)
at org.eclipse.emf.ecore.xmi.impl.XMIHandler.processElement(XMI Handler.java:87)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.startElement(XMLHa ndler.java:1001)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.startElement(XMLHa ndler.java:712)
at org.eclipse.emf.ecore.xmi.impl.XMIHandler.startElement(XMIHa ndler.java:167)
==============================================
AS the attachment seems not to be visible, I copy pate my code : dag refers to ido
Map<String, Object> parameters = new HashMap<String, Object>();
parameters.put("allowInterModelReferences", Boolean.TRUE);
parameters.put("supportUML2Stereotypes", Boolean.TRUE);
EMFVMLauncher launcher = new EMFVMLauncher();
launcher.initialize(parameters);
CoreService.registerLauncher(launcher);
CoreService.registerFactory("EMF", EMFModelFactory.class);
CoreService.registerExtractor("EMF", new EMFExtractor());
CoreService.registerInjector("EMF", new EMFInjector());
try {
EPackage.Registry.INSTANCE.put(UMLPackage.eNS_URI, UMLPackage.eINSTANCE);
EMFModelLoader loader = new EMFModelLoader();
ASMEMFModel uml = (ASMEMFModel) loader.loadModel("UML", loader.getMOF(), "uri:" + UMLPackage.eNS_URI );
ASMEMFModel idoProf = (ASMEMFModel) loader.loadModel("ido", uml, new FileInputStream(" C:\\sfo\\work\\svnspace\\TestXML\\export\\IDO_Profile.profil e.uml "));
ASMEMFModel dag = (ASMEMFModel) loader.loadModel("dag", uml, new FileInputStream("C:\\sfo\\work\\svnspace\\TestXML\\export\\DAG_Test.uml "));
System.out.println(">>> DONE");
} catch (Exception e) {
e.printStackTrace();
}
[Updated on: Tue, 06 October 2009 13:00] Report message to a moderator
|
|
|
Powered by
FUDForum. Page generated in 0.02833 seconds