Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » M2M (model-to-model transformation) » [ATL] Programmaticcaly launch, inter-model reference null, proxy problem ?
[ATL] Programmaticcaly launch, inter-model reference null, proxy problem ? [message #644003] Thu, 09 December 2010 01:41
gil  is currently offline gil
Messages: 4
Registered: October 2010
Junior Member
Hi,

I'm a PhD student from France and i'm currently working with ATL. I have developed several ATL transformation modules, and everyones work with the ATL Launch Run Configuration.

Now, i'm trying to automate the several transformations using the programmatically launch. First, i use the generated java classes from the ATL plug-in wizard.

Everything work if i have as input a model without reference to another model. In the case of the inter-model references i have the following exception:

org.eclipse.m2m.atl.engine.emfvm.VMException: Unable to access ownedFeature on OclUndefined
at getListPortsString#11(MBTStep3POHIActivity.atl[333:4-333:29] )
local variables: self=Model!Pinger, thClass=<unknown>!<unnamed>
at __matchGenerateActivityPackage#58(MBTStep3POHIActivity.atl[1 464:40-1464:66])
local variables: self=MBTStep3POHIActivity : ASMModule, thSub=Model!Pinger, thClass=<unknown>!<unnamed>, procCont=Model!Node_A, pckName='PolyORB_HI_Generated_Node_A_Pinger'
at __matcher__#1(MBTStep3POHIActivity.atl)
local variables: self=MBTStep3POHIActivity : ASMModule
at main#34(MBTStep3POHIActivity.atl)
local variables: self=MBTStep3POHIActivity : ASMModule

As we can see, the thClass object is null. It should be an object retrieved with EMF reference. I think it may be a proxy problem to resolve EMF reference.

Here the code to launch the transformation:
MBTStep3POHIActivity runner = new MBTStep3POHIActivity();

IResource aaxlFile = OsateResourceManager.convertToIResource(declarativeObject.eR esource());

IPath path = aaxlFile.getFullPath();

runner.loadModels(path.toString());
runner.doMBTStep3POHIActivity(monitor);

IPath output_path = path;
output_path.removeLastSegments(1);
output_path.append("output.aaxl2");
runner.saveModels(output_path.toString());


The value of the path is:
current FULLPATH: /Osate2Test/aaxl/packages/ping.aaxl2

And the EMF reference of the object thClass in the input model is:
<threadClassifier xsi:type="aadl2:ThreadImplementation" href="software.aaxl2#_LzNeggMfEeC0Q_gQsxRmow"/>

I think the file "software.aaxl2" is not found.

Do you have any idea ?
Previous Topic:[QVT Relations] Set-valued references
Next Topic:What happened to uml2ecore after OAW->Eclipse Migration?
Goto Forum:
  


Current Time: Tue Sep 16 01:10:14 GMT 2014

Powered by FUDForum. Page generated in 0.12291 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software