| [news.eclipse.modeling.m2m] Re: [ATL] Can't find Java operation with variable arity |
Will do.
Thanks
Hello,
At this time ATL doesn't support variable arity methods. Could you please report a bug ?
Thanks in advance,
William
Alain Picard a écrit :Hi,
We have many generic methods in our EObject extension. All is well to invoke those methods from the ATL transformation in general, but we have some methods of the form:
public EObject runLibMethodObject(String extension, String methodName, Object... args);
It seems that when we are dealing with a variable arity method that ATL can't correctly handle the variable list of arguments
Please advise
Cheers, Alain
Here is the error reported:
INFO: Dumping ASM to C:/eclipse/workspace/ATLTransformation/STM2KDM.asm
SEVERE: ****** BEGIN Stack Trace
SEVERE: message: ERROR: could not find operation runLibMethodList on STM!StConcreteNode having supertypes: [STM!StBaseNode, OclType, OclAny] (including Java operations)
SEVERE: A.main() : ??#26 null
SEVERE: local variables = {self=STM2KDM : ASMModule}
SEVERE: local stack = []
SEVERE: A.__exec__() : ??#38 null
SEVERE: local variables = {e=TransientLink {rule = 'CreateClasses', sourceElements = {stmConcreteNode = IN!<unnamed>}, targetElements = {kdmClass = OUT!<notnamedyet>}, variables = {}}, self=STM2KDM : ASMModule}
SEVERE: local stack = []
SEVERE: A.__applyCreateClasses(1 : NTransientLink;) : ??#15 58:12-58:90
SEVERE: local variables = {kdmClass=OUT!<notnamedyet>, stmConcreteNode=IN!<unnamed>, link=TransientLink {rule = 'CreateClasses', sourceElements = {stmConcreteNode = IN!<unnamed>}, targetElements = {kdmClass = OUT!<notnamedyet>}, variables = {}}, self=STM2KDM : ASMModule}
SEVERE: local stack = [OUT!<notnamedyet>, OUT!<notnamedyet>, STM2KDM : ASMModule]
SEVERE: ****** END Stack Trace
INFO: Execution terminated due to error (see launch configuration to allow continuation after errors).
SEVERE: ERROR: could not find operation runLibMethodList on STM!StConcreteNode having supertypes: [STM!StBaseNode, OclType, OclAny] (including Java operations)
java.lang.RuntimeException: ERROR: could not find operation runLibMethodList on STM!StConcreteNode having supertypes: [STM!StBaseNode, OclType, OclAny] (including Java operations)
at org.eclipse.m2m.atl.engine.vm.SimpleDebugger.error(SimpleDebugger.java:195)
at org.eclipse.m2m.atl.engine.vm.StackFrame.printStackTrace(StackFrame.java:95)
at org.eclipse.m2m.atl.engine.vm.StackFrame.printStackTrace(StackFrame.java:91)
at org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invoke(ASMEMFModelElement.java:700)