Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » M2M (model-to-model transformation) » ATL cannot find local helper?
ATL cannot find local helper? [message #77439] Tue, 25 March 2008 12:32 Go to next message
Eclipse UserFriend
Originally posted by: r.c.ladan.tue.nl

This is a multi-part message in MIME format.
--------------020401090608050206010105
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

I have a helper getProcessor defined in an ATL module which is used in this same ATL module.
Somehow ATL manages to not find the helper, resulting in
ERROR: could not find operation getProcessor on Module having supertypes: [OclAny]

I've moved this helper from a local ATL library into the module itself, which didn't help.
The helper name was first misspelled in the library, but corrected later on.
Restarting Eclipse didn't help either (maybe it flushes some cache...)

I'm using ATL 2.0.0.v200803030819, EMF 2.3.2.v200802051830, and Eclipse 3.3.2 M20080221-1800

Any ideas? (wrong types?)

Thanks,
Rene

--------------020401090608050206010105
Content-Type: text/plain;
name="move_service_instance.atl"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="move_service_instance.atl"

LS1AYXRsY29tcGlsZXIgYXRsMjAwNgptb2R1bGUgbW92ZV9zZXJ2aWNlX2lu c3RhbmNlOwpj
cmVhdGUgT1VUX3VkZCA6IHVkZCBmcm9tIElOX3VkZCA6IHVkZCwgcGFyYW1l dGVycyA6IFhN
TDsKdXNlcyBsaWJUcmFuc2Zvcm1hdGlvbjsKdXNlcyBYTUxIZWxwZXJzOwoK LS0gcmVtYXAg
YSBjb21wb25lbnQgYWNyb3NzIDIgbm9kZXMKCnJ1bGUgY29weV9EZXBsb3lt ZW50RGlhZ3Jh
bUVkaXRNb2RlbCB7Cglmcm9tIGRkZW0gOiB1ZGQhRGVwbG95bWVudERpYWdy YW1FZGl0TW9k
ZWwKCXRvIGRkZW0xIDogdWRkIURlcGxveW1lbnREaWFncmFtRWRpdE1vZGVs KAoJCXNpemUg
PC0gZGRlbS5zaXplLAoJCW1ldGFkYXRhIDwtIGRkZW0ubWV0YWRhdGEsCgkJ c2Nyb2xsZWRY
IDwtIGRkZW0uc2Nyb2xsZWRYLAoJCXNjcm9sbGVkWSA8LSBkZGVtLnNjcm9s bGVkWSwKCQlp
bml0aWFsaXplZCA8LSBkZGVtLmluaXRpYWxpemVkLAoJCWNoaWxkcmVuIDwt IGRkZW0uY2hp
bGRyZW4KCSkKfQoKYWJzdHJhY3QgcnVsZSBfX2NvcHlfQ2hpbGRFZGl0TW9k ZWwgZXh0ZW5k
cyBjb3B5X0RlcGxveW1lbnREaWFncmFtRWRpdE1vZGVsIHsKCWZyb20gZGRl bSA6IHVkZCFD
aGlsZEVkaXRNb2RlbAoJdG8gZGRlbTEgOiB1ZGQhQ2hpbGRFZGl0TW9kZWwo CgkJc3RlcmVv
dHlwZSA8LSBkZGVtLnN0ZXJlb3R5cGUsCgkJaXRlbU5hbWUgPC0gZGRlbS5p dGVtTmFtZSwK
CQl0eXBlIDwtIGRkZW0udHlwZSwKCQlpbnN0YW5jZUxldmVsIDwtIGRkZW0u aW5zdGFuY2VM
ZXZlbCwKCQlsb2NhdGlvbiA8LSBkZGVtLmxvY2F0aW9uLAoJCXRhcmdldENv bm5lY3Rpb25z
IDwtIGRkZW0udGFyZ2V0Q29ubmVjdGlvbnMsCgkJc291cmNlQ29ubmVjdGlv bnMgPC0gZGRl
bS5zb3VyY2VDb25uZWN0aW9ucwoJKQp9CgpydWxlIGNvcHlfQ29tcG9uZW50 RWRpdE1vZGVs
IGV4dGVuZHMgX19jb3B5X0NoaWxkRWRpdE1vZGVsIHsKCWZyb20gZGRlbSA6 IHVkZCFDb21w
b25lbnRFZGl0TW9kZWwKCXRvIGRkZW0xIDogdWRkIUNvbXBvbmVudEVkaXRN b2RlbAp9Cgph
YnN0cmFjdCBydWxlIF9fY29weV9Ob2RlRWRpdE1vZGVsIGV4dGVuZHMgX19j b3B5X0NoaWxk
RWRpdE1vZGVsIHsKCWZyb20gZGRlbSA6IHVkZCFOb2RlRWRpdE1vZGVsCgl0 byBkZGVtMSA6
IHVkZCFOb2RlRWRpdE1vZGVsCn0KCnJ1bGUgY29weV9Ob3RlcGFkRWRpdE1v ZGVsIGV4dGVu
ZHMgX19jb3B5X0NoaWxkRWRpdE1vZGVsIHsKCWZyb20gZGRlbSA6IHVkZCFO b3RlcGFkRWRp
dE1vZGVsCgl0byBkZGVtMSA6IHVkZCFOb3RlcGFkRWRpdE1vZGVsKAoJCW5v dGUgPC0gZGRl
bS5ub3RlCgkpCn0KCnJ1bGUgY29weV9Db21wb25lbnRFbmRFZGl0TW9kZWwg ZXh0ZW5kcyBf
X2NvcHlfQ2hpbGRFZGl0TW9kZWwgewoJZnJvbSBkZGVtIDogdWRkIUNvbXBv bmVudEVuZEVk
aXRNb2RlbAoJdG8gZGRlbTEgOiB1ZGQhQ29tcG9uZW50RW5kRWRpdE1vZGVs KAoJCWF0dGFj
aFNvdXJjZSA8LSBkZGVtLmF0dGFjaFNvdXJjZQoJKQp9CgpydWxlIGNvcHlf RGVwZW5kZW5j
eUVkaXRNb2RlbCBleHRlbmRzIF9fY29weV9DaGlsZEVkaXRNb2RlbCB7Cglm cm9tIGRkZW0g
OiB1ZGQhRGVwZW5kZW5jeUVkaXRNb2RlbAoJdG8gZGRlbTEgOiB1ZGQhRGVw ZW5kZW5jeUVk
aXRNb2RlbCgKCQljb25uZWN0aW9uUm91dGVyS2luZCA8LSBkZGVtLmNvbm5l Y3Rpb25Sb3V0
ZXJLaW5kLAoJCXNvdXJjZSA8LSBkZGVtLnNvdXJjZSwKCQlzb3VyY2VFbmQg PC0gZGRlbS5z
b3VyY2VFbmQsCgkJdGFyZ2V0IDwtIGRkZW0udGFyZ2V0LAoJCXRhcmdldEVu ZCA8LSBkZGVt
LnRhcmdldEVuZAoJKQp9CgpydWxlIGNvcHlfTm9kZUVkaXRNb2RlbCBleHRl bmRzIF9fY29w
eV9Ob2RlRWRpdE1vZGVsIHsKCWZyb20gZGRlbSA6IHVkZCFOb2RlRWRpdE1v ZGVsKG5vdCBk
ZGVtLnBhcnRPZlRyYW5zZm9ybWF0aW9uKQoJdG8gZGRlbTEgOiB1ZGQhTm9k ZUVkaXRNb2Rl
bAp9CgpoZWxwZXIgY29udGV4dCB1ZGQhTm9kZUVkaXRNb2RlbCBkZWYgOiBn ZXRQcm9jZXNz
b3IoaWR4TmFtZSA6IFN0cmluZykgOiB1ZGQhTm9kZUVkaXRNb2RlbCA9Cgl1 ZGQhTm9kZUVk
aXRNb2RlbC5hbGxJbnN0YW5jZXNGcm9tKCdJTl91ZGQnKS0+c2VsZWN0KGUg fCBlLnR5cGUg
PSAnUHJvY2Vzc29yJyktPmF0KHRoaXNNb2R1bGUuZ2V0UGFyYW1ldGVyKGlk eE5hbWUpLnRv
SW50ZWdlcigpKSA7CgpydWxlIGRlbGV0ZV9jb21wb25lbnQgZXh0ZW5kcyBf X2NvcHlfTm9k
ZUVkaXRNb2RlbCB7Cglmcm9tIGRkZW0gOiB1ZGQhTm9kZUVkaXRNb2RlbChk ZGVtLnBhcnRP
ZlRyYW5zZm9ybWF0aW9uIGFuZCBkZGVtLml0ZW1OYW1lID0gdGhpc01vZHVs ZS5nZXRQYXJh
bWV0ZXIoJ2Zyb21fbm9kZScpKQoJdG8gZGRlbTEgOiB1ZGQhTm9kZUVkaXRN b2RlbCgKCQlj
aGlsZHJlbiA8LSBpZiB0aGlzTW9kdWxlLmdldFByb2Nlc3NvcignZnJvbV9p ZHgnKSA9IGRk
ZW0gdGhlbgoJCQkJCQlkZGVtLmNoaWxkcmVuLmV4Y2x1ZGluZyhkZGVtLmdl dEl0ZW0oJ21v
dmVkX2NvbXBvbmVudCcsIDEpKQoJCQkJCWVsc2UKCQkJCQkJZGRlbS5jaGls ZHJlbgoJCQkJ
CWVuZGlmCgkpCn0KCnJ1bGUgYWRkX2NvbXBvbmVudCBleHRlbmRzIF9fY29w eV9Ob2RlRWRp
dE1vZGVsIHsKCWZyb20gZGRlbSA6IHVkZCFOb2RlRWRpdE1vZGVsKGRkZW0u cGFydE9mVHJh
bnNmb3JtYXRpb24gYW5kIGRkZW0uaXRlbU5hbWUgPSB0aGlzTW9kdWxlLmdl dFBhcmFtZXRl
cigndG9fbm9kZScpKQoJdG8gZGRlbTEgOiB1ZGQhTm9kZUVkaXRNb2RlbCgK CQljaGlsZHJl
biA8LSBpZiB0aGlzTW9kdWxlLmdldFByb2Nlc3NvcigndG9faWR4JykgPSBk ZGVtIHRoZW4K
CQkJCQkJZGRlbS5jaGlsZHJlbi5pbmNsdWRpbmcodGhpc01vZHVsZS5nZXRQ cm9jZXNzb3Io
J2Zyb21faWR4JykuZ2V0SXRlbSgnbW92ZWRfY29tcG9uZW50JywgMSkpCgkJ CQkJZWxzZQoJ
CQkJCQlkZGVtLmNoaWxkcmVuCgkJCQkJZW5kaWYKCSkKfQ==
--------------020401090608050206010105
Content-Type: text/plain;
name="getProcessor-exception.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="getProcessor-exception.txt"

parameters: moved_component='MMI' from_idx=1 from_node='MIPS_260' to_idx=3 to_node='MIPS_500'

SEVERE: ****** BEGIN Stack Trace
SEVERE: message: ERROR: could not find operation getProcessor on Module having supertypes: [OclAny]
SEVERE: A.main() : ??#24 null
SEVERE: local variables = {self=move_service_instance : ASMModule}
SEVERE: local stack = []
SEVERE: A.__exec__() : ??#88 null
SEVERE: local variables = {e=TransientLink {rule = 'delete_component', sourceElements = {ddem = IN_udd!<unnamed>}, targetElements = {ddem1 = OUT_udd!<unnamed>}, variables = {}}, self=move_service_instance : ASMModule}
SEVERE: local stack = []
SEVERE: A.__applydelete_component(1 : NTransientLink;) : ??#13 80:18-80:53
SEVERE: local variables = {ddem1=OUT_udd!<unnamed>, ddem=IN_udd!<unnamed>, link=TransientLink {rule = 'delete_component', sourceElements = {ddem = IN_udd!<unnamed>}, targetElements = {ddem1 = OUT_udd!<unnamed>}, variables = {}}, self=move_service_instance : ASMModule}
SEVERE: local stack = [OUT_udd!<unnamed>, OUT_udd!<unnamed>, move_service_instance : 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 getProcessor on Module having supertypes: [OclAny]
java.lang.RuntimeException: ERROR: could not find operation getProcessor on Module having supertypes: [OclAny]
at org.eclipse.m2m.atl.engine.vm.SimpleDebugger.error(SimpleDeb ugger.java:195)
at org.eclipse.m2m.atl.engine.vm.StackFrame.printStackTrace(Sta ckFrame.java:95)
at org.eclipse.m2m.atl.engine.vm.StackFrame.printStackTrace(Sta ckFrame.java:91)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:103)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:240)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:171)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:143)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:101)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:240)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:338)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:171)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:143)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:101)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:240)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:171)
at org.eclipse.m2m.atl.engine.vm.ASMInterpreter.<init>(ASMInterpreter.java:299)
at org.eclipse.m2m.atl.engine.AtlLauncher.launch(AtlLauncher.ja va:169)
at org.eclipse.m2m.atl.engine.AtlLauncher.launch(AtlLauncher.ja va:111)
at org.eclipse.m2m.atl.engine.AtlLauncher.launch(AtlLauncher.ja va:87)
at meta.custom.Transform.doATLTransformation(Transform.java:128 )
[...]

--------------020401090608050206010105
Content-Type: text/plain;
name="partial-model.ecore"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="partial-model.ecore"

<eClassifiers xsi:type="ecore:EClass" name="DeploymentDiagramEditModel">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="size" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="metadata" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="initialized" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="scrolledY" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="children" upperBound="-1" eType="#//ChildEditModel" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="scrolledX" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="partOfTransformation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ChildEditModel" abstract="true" eSuperTypes="#//DeploymentDiagramEditModel">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="stereotype" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="itemName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="instanceLevel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="location" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="targetConnections" upperBound="-1" eType="#//ChildEditModel"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="sourceConnections" upperBound="-1" eType="#//ChildEditModel" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="NodeEditModel" eSuperTypes="#//ChildEditModel"/>
<eClassifiers xsi:type="ecore:EClass" name="ComponentEditModel" eSuperTypes="#//ChildEditModel"/>
<eClassifiers xsi:type="ecore:EClass" name="NotepadEditModel" eSuperTypes="#//ChildEditModel">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="note" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DependencyEditModel" eSuperTypes="#//ChildEditModel">
<eStructuralFeatures xsi:type="ecore:EReference" name="source" upperBound="-1" eType="#//ChildEditModel"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="target" upperBound="-1" eType="#//ChildEditModel"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="targetEnd" upperBound="-1" eType="#//ChildEditModel"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="sourceEnd" upperBound="-1" eType="#//ChildEditModel"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="connectionRouterKind" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ComponentEndEditModel" eSuperTypes="#//ChildEditModel">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="attachSource" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
</eClassifiers>

--------------020401090608050206010105--
Re: ATL cannot find local helper? [message #77631 is a reply to message #77439] Thu, 27 March 2008 10:23 Go to previous message
Eclipse UserFriend
Originally posted by: r.c.ladan.tue.nl

Rene Ladan wrote:
> Hi,
>
> I have a helper getProcessor defined in an ATL module which is used in
> this same ATL module.
> Somehow ATL manages to not find the helper, resulting in
> ERROR: could not find operation getProcessor on Module having
> supertypes: [OclAny]
>
> I've moved this helper from a local ATL library into the module itself,
> which didn't help.
> The helper name was first misspelled in the library, but corrected later
> on.
> Restarting Eclipse didn't help either (maybe it flushes some cache...)
>
> I'm using ATL 2.0.0.v200803030819, EMF 2.3.2.v200802051830, and Eclipse
> 3.3.2 M20080221-1800
>
> Any ideas? (wrong types?)
>
Found it: I had a context declared in the helper, which doesn't work when
not invoking the helper from that context (e.g. via thisModule). After
removing the context, the transformation works fine.

Regards,
Rene
>
Previous Topic:[QVTO] About ordering collections
Next Topic:[ATL] Does ATL work with Eclipse 3.4 and heavyweight extensions of UML2
Goto Forum:
  


Current Time: Fri Aug 23 00:32:40 GMT 2019

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

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

Back to the top