Home » Archived » M2M (model-to-model transformation) » [ATL] How to create o Sequence / Collection of model elements
[ATL] How to create o Sequence / Collection of model elements [message #41617] |
Fri, 25 May 2007 12:36 |
Eclipse User |
|
|
|
Originally posted by: erik_becker.gmx.de
Hi all,
I'm new to ATL and fighting with it's peculiarities. ;-)
I want to create a collection (Sequence) of special elements from a XML.
Therefore I wrote this helper:
helper def : getModels : Sequence(XML!Element) =
let allModels : Sequence(XML!Element) =
XML!Element.allInstances()->asSequence() in
allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
if model.name = 'Model'
then
ms.append(m)
else
''
endif
);
If I use this helper (just printing the sequence's size with output) I
get the following:
****** BEGIN Stack Trace
message: ERROR: could not find operation append on String having
supertypes: [OclAny]
A.main() : ??#22 null
local variables = {self=aml2xpdl : ASMModule}
local stack = []
A.__initgetModels() : ??#23 8:46-8:66
local variables = {model=IN!Model, models='', self=aml2xpdl :
ASMModule, allModels=Sequence {IN!LogFont, IN!FontNode,
IN!FontStyleSheet, IN!AttrDef, IN!ObjDef, IN!Brush, IN!Size,
IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID, IN!AttrDef,
IN!Brush, IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrDef,
IN!FontNode, IN!FontStyleSheet, IN!AttrValue, IN!AttrValue, IN!FontNode,
IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!FontNode, IN!ObjDef,
IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID, IN!Lane, IN!AttrOcc,
IN!Pen, IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!Pen, IN!FontNode,
IN!AttrValue, IN!AttrDef, IN!FontNode, IN!CxnOcc, IN!FontStyleSheet,
IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!ObjDef, IN!AttrDef,
IN!Position, IN!Size, IN!AttrValue, IN!FontStyleSheet, IN!AttrValue,
IN!Pen, IN!GUID, IN!AttrValue, IN!CxnOcc, IN!GUID, IN!Pen, IN!CxnOcc,
IN!Position, IN!Size, IN!AttrValue, IN!AttrDef, IN!Brush, IN!AttrValue,
IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrValue, IN!FontNode,
IN!AttrValue, IN!GUID, IN!FontStyleSheet, IN!AttrValue, IN!ObjDef,
IN!Flag, IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrDef,
IN!CxnDef, IN!AttrDef, IN!AML, IN!ObjOcc, IN!Size, IN!Position,
IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrValue,
IN!Position, IN!AttrDef, IN!Pen, IN!Model, IN!AttrValue, IN!CxnOcc,
IN!FontStyleSheet, IN!Position, IN!Pen, IN!AttrValue, IN!AttrDef,
IN!Position, IN!AttrDef, IN!FontStyleSheet, IN!AttrValue, IN!AttrValue,
IN!AttrValue, IN!Brush, IN!ObjOcc, IN!AttrDef, IN!CxnDef, IN!GUID,
IN!ObjOcc, IN!AttrValue, IN!AttrDef, IN!CxnDef, IN!Position,
IN!FontNode, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrDef,
IN!AttrDef, IN!GUID, IN!AttrDef, IN!Pen, IN!AttrValue, IN!AttrDef,
IN!AttrValue, IN!Position, IN!FontStyleSheet, IN!FontStyleSheet,
IN!GUID, IN!FontNode, IN!AttrValue, IN!AttrValue, IN!Position,
IN!FontStyleSheet, IN!AttrDef, IN!ObjOcc, IN!AttrValue, IN!GUID,
IN!FontStyleSheet, IN!FontNode, IN!CxnOcc, IN!AttrValue, IN!AttrDef,
IN!AttrDef, IN!GUID, IN!AttrValue, IN!AttrValue, IN!Brush, IN!AttrDef,
IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!Size, IN!Pen, IN!ObjOcc,
IN!AttrDef, IN!GUID, IN!FontNode, IN!Size, IN!GUID, IN!GUID,
IN!Position, IN!FontStyleSheet, IN!FontStyleSheet, IN!AttrValue,
IN!AttrDef, IN!CxnDef, IN!CxnDef, IN!Brush, IN!AttrValue, IN!Position,
IN!AttrDef, IN!AttrDef, IN!Position, IN!ObjDef, IN!Size, IN!AttrValue,
IN!AttrValue, IN!AttrValue, IN!GUID, IN!AttrDef, IN!AttrValue,
IN!AttrOcc, IN!AttrDef, IN!AttrValue, IN!FontNode, IN!AttrValue,
IN!AttrValue, IN!Pen, IN!AttrValue, IN!FontNode, IN!Brush, IN!ObjDef,
IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!AttrOcc, IN!AttrValue,
IN!AttrDef, IN!GUID, IN!GUID, IN!AttrDef, IN!GUID, IN!Position, IN!GUID,
IN!AttrDef, IN!Pen, IN!ObjDef, IN!Position, IN!AttrDef, IN!AttrDef,
IN!Pen, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrValue,
IN!AttrValue, IN!Language, IN!AttrValue, IN!AttrValue, IN!AttrOcc,
IN!AttrValue, IN!FontNode, IN!FontNode, IN!FontNode, IN!AttrValue,
IN!AttrDef, IN!GUID, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Brush,
IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!Position, IN!AttrDef, IN!AttrDef,
IN!AttrValue, IN!AttrDef, IN!Brush, IN!AttrValue, IN!FontNode,
IN!FontNode, IN!FontNode, IN!Position, IN!AttrValue, IN!AttrValue,
IN!GUID, IN!ObjOcc, IN!CxnDef, IN!AttrValue, IN!AttrDef, IN!AttrDef,
IN!Position, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrDef,
IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrValue, IN!AttrValue,
IN!Header-Info, IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef,
IN!AttrValue, IN!FontNode, IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!Pen,
IN!Position, IN!AttrDef, IN!GUID, IN!GUID, IN!Brush, IN!FontStyleSheet,
IN!AttrDef, IN!ObjOcc, IN!FontNode, IN!Pen, IN!AttrValue, IN!AttrValue,
IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!GUID,
IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID, IN!AttrDef,
IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!CxnOcc, IN!GUID,
IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrDef, IN!FontStyleSheet,
IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef,
IN!AttrDef, IN!GUID, IN!AttrDef, IN!FontNode, IN!AttrOcc, IN!Lane,
IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID,
IN!AttrValue, IN!ObjOcc, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!AttrDef,
IN!Pen, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef,
IN!AttrDef, IN!GUID, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrDef,
IN!AttrValue, IN!GUID, IN!Pen, IN!AttrValue, IN!GUID, IN!AttrValue,
IN!AttrValue, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!AttrValue,
IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrValue,
IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID, IN!AttrValue, IN!CxnDef,
IN!AttrValue, IN!AttrValue, IN!ObjDef, IN!AttrDef, IN!AttrValue,
IN!AttrValue, IN!ObjDef, IN!Pen, IN!AttrDef, IN!Position, IN!Size,
IN!AttrOcc, IN!AttrDef, IN!GUID, IN!GUID, IN!AttrValue, IN!AttrDef,
IN!AttrValue, IN!AttrDef, IN!CxnOcc, IN!AttrDef, IN!FontStyleSheet,
IN!AttrValue, IN!CxnOcc, IN!Position, IN!Group, IN!AttrDef, IN!GUID,
IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef,
IN!AttrDef, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!GUID,
IN!Position, IN!FontNode, IN!AttrValue, IN!AttrDef, IN!Size, IN!GUID,
IN!AttrValue, IN!GUID, IN!GUID, IN!AttrDef, IN!AttrValue, IN!Position,
IN!AttrDef, IN!AttrDef, IN!CxnDef, IN!Pen, IN!AttrValue, IN!AttrValue,
IN!Pen, IN!FontStyleSheet, IN!AttrDef, IN!FontNode, IN!Position,
IN!FontStyleSheet, IN!AttrValue, IN!FontNode, IN!ObjOcc, IN!AttrValue,
IN!LanguageName, IN!GUID, IN!AttrOcc, IN!Database, IN!AttrDef,
IN!CxnDef, IN!AttrDef, IN!CxnOcc, IN!FontStyleSheet, IN!AttrValue,
IN!GUID, IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!Pen,
IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID,
IN!AttrOcc, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Brush, IN!Pen,
IN!GUID, IN!AttrValue, IN!Position}}
local stack = [aml2xpdl : ASMModule]
****** END Stack Trace
Execution terminated due to error (see launch configuration to allow
continuation after errors).
Can anyone help? I can't find what's wrong.
Thanks and Greetings
Erik
|
|
|
Re: [ATL] How to create o Sequence / Collection of model elements [message #41669 is a reply to message #41617] |
Fri, 25 May 2007 12:52 |
�ric Vépa Messages: 16 Registered: July 2009 |
Junior Member |
|
|
Hi Erik,
What is 'model' used at line "if model.name = 'Model'" ?
Erik Becker wrote:
> Hi all,
>
> I'm new to ATL and fighting with it's peculiarities. ;-)
>
> I want to create a collection (Sequence) of special elements from a XML.
> Therefore I wrote this helper:
>
> helper def : getModels : Sequence(XML!Element) =
> let allModels : Sequence(XML!Element) =
> XML!Element.allInstances()->asSequence() in
> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
> if model.name = 'Model'
> then
> ms.append(m)
> else
> ''
> endif
> );
>
> If I use this helper (just printing the sequence's size with output) I
> get the following:
> ****** BEGIN Stack Trace
> message: ERROR: could not find operation append on String having
> supertypes: [OclAny]
> A.main() : ??#22 null
> local variables = {self=aml2xpdl : ASMModule}
> local stack = []
> A.__initgetModels() : ??#23 8:46-8:66
> local variables = {model=IN!Model, models='', self=aml2xpdl :
> ASMModule, allModels=Sequence {IN!LogFont, IN!FontNode,
> IN!FontStyleSheet, IN!AttrDef, IN!ObjDef, IN!Brush, IN!Size,
> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID, IN!AttrDef,
> IN!Brush, IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrDef,
> IN!FontNode, IN!FontStyleSheet, IN!AttrValue, IN!AttrValue, IN!FontNode,
> IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!FontNode, IN!ObjDef,
> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID, IN!Lane, IN!AttrOcc,
> IN!Pen, IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!Pen, IN!FontNode,
> IN!AttrValue, IN!AttrDef, IN!FontNode, IN!CxnOcc, IN!FontStyleSheet,
> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!ObjDef, IN!AttrDef,
> IN!Position, IN!Size, IN!AttrValue, IN!FontStyleSheet, IN!AttrValue,
> IN!Pen, IN!GUID, IN!AttrValue, IN!CxnOcc, IN!GUID, IN!Pen, IN!CxnOcc,
> IN!Position, IN!Size, IN!AttrValue, IN!AttrDef, IN!Brush, IN!AttrValue,
> IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrValue, IN!FontNode,
> IN!AttrValue, IN!GUID, IN!FontStyleSheet, IN!AttrValue, IN!ObjDef,
> IN!Flag, IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrDef,
> IN!CxnDef, IN!AttrDef, IN!AML, IN!ObjOcc, IN!Size, IN!Position,
> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrValue,
> IN!Position, IN!AttrDef, IN!Pen, IN!Model, IN!AttrValue, IN!CxnOcc,
> IN!FontStyleSheet, IN!Position, IN!Pen, IN!AttrValue, IN!AttrDef,
> IN!Position, IN!AttrDef, IN!FontStyleSheet, IN!AttrValue, IN!AttrValue,
> IN!AttrValue, IN!Brush, IN!ObjOcc, IN!AttrDef, IN!CxnDef, IN!GUID,
> IN!ObjOcc, IN!AttrValue, IN!AttrDef, IN!CxnDef, IN!Position,
> IN!FontNode, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrDef,
> IN!AttrDef, IN!GUID, IN!AttrDef, IN!Pen, IN!AttrValue, IN!AttrDef,
> IN!AttrValue, IN!Position, IN!FontStyleSheet, IN!FontStyleSheet,
> IN!GUID, IN!FontNode, IN!AttrValue, IN!AttrValue, IN!Position,
> IN!FontStyleSheet, IN!AttrDef, IN!ObjOcc, IN!AttrValue, IN!GUID,
> IN!FontStyleSheet, IN!FontNode, IN!CxnOcc, IN!AttrValue, IN!AttrDef,
> IN!AttrDef, IN!GUID, IN!AttrValue, IN!AttrValue, IN!Brush, IN!AttrDef,
> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!Size, IN!Pen, IN!ObjOcc,
> IN!AttrDef, IN!GUID, IN!FontNode, IN!Size, IN!GUID, IN!GUID,
> IN!Position, IN!FontStyleSheet, IN!FontStyleSheet, IN!AttrValue,
> IN!AttrDef, IN!CxnDef, IN!CxnDef, IN!Brush, IN!AttrValue, IN!Position,
> IN!AttrDef, IN!AttrDef, IN!Position, IN!ObjDef, IN!Size, IN!AttrValue,
> IN!AttrValue, IN!AttrValue, IN!GUID, IN!AttrDef, IN!AttrValue,
> IN!AttrOcc, IN!AttrDef, IN!AttrValue, IN!FontNode, IN!AttrValue,
> IN!AttrValue, IN!Pen, IN!AttrValue, IN!FontNode, IN!Brush, IN!ObjDef,
> IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!AttrOcc, IN!AttrValue,
> IN!AttrDef, IN!GUID, IN!GUID, IN!AttrDef, IN!GUID, IN!Position, IN!GUID,
> IN!AttrDef, IN!Pen, IN!ObjDef, IN!Position, IN!AttrDef, IN!AttrDef,
> IN!Pen, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrValue,
> IN!AttrValue, IN!Language, IN!AttrValue, IN!AttrValue, IN!AttrOcc,
> IN!AttrValue, IN!FontNode, IN!FontNode, IN!FontNode, IN!AttrValue,
> IN!AttrDef, IN!GUID, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Brush,
> IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!Position, IN!AttrDef, IN!AttrDef,
> IN!AttrValue, IN!AttrDef, IN!Brush, IN!AttrValue, IN!FontNode,
> IN!FontNode, IN!FontNode, IN!Position, IN!AttrValue, IN!AttrValue,
> IN!GUID, IN!ObjOcc, IN!CxnDef, IN!AttrValue, IN!AttrDef, IN!AttrDef,
> IN!Position, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrDef,
> IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrValue, IN!AttrValue,
> IN!Header-Info, IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef,
> IN!AttrValue, IN!FontNode, IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!Pen,
> IN!Position, IN!AttrDef, IN!GUID, IN!GUID, IN!Brush, IN!FontStyleSheet,
> IN!AttrDef, IN!ObjOcc, IN!FontNode, IN!Pen, IN!AttrValue, IN!AttrValue,
> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!GUID,
> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID, IN!AttrDef,
> IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!CxnOcc, IN!GUID,
> IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrDef, IN!FontStyleSheet,
> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef,
> IN!AttrDef, IN!GUID, IN!AttrDef, IN!FontNode, IN!AttrOcc, IN!Lane,
> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID,
> IN!AttrValue, IN!ObjOcc, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!AttrDef,
> IN!Pen, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef,
> IN!AttrDef, IN!GUID, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrDef,
> IN!AttrValue, IN!GUID, IN!Pen, IN!AttrValue, IN!GUID, IN!AttrValue,
> IN!AttrValue, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!AttrValue,
> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrValue,
> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID, IN!AttrValue, IN!CxnDef,
> IN!AttrValue, IN!AttrValue, IN!ObjDef, IN!AttrDef, IN!AttrValue,
> IN!AttrValue, IN!ObjDef, IN!Pen, IN!AttrDef, IN!Position, IN!Size,
> IN!AttrOcc, IN!AttrDef, IN!GUID, IN!GUID, IN!AttrValue, IN!AttrDef,
> IN!AttrValue, IN!AttrDef, IN!CxnOcc, IN!AttrDef, IN!FontStyleSheet,
> IN!AttrValue, IN!CxnOcc, IN!Position, IN!Group, IN!AttrDef, IN!GUID,
> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef,
> IN!AttrDef, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!GUID,
> IN!Position, IN!FontNode, IN!AttrValue, IN!AttrDef, IN!Size, IN!GUID,
> IN!AttrValue, IN!GUID, IN!GUID, IN!AttrDef, IN!AttrValue, IN!Position,
> IN!AttrDef, IN!AttrDef, IN!CxnDef, IN!Pen, IN!AttrValue, IN!AttrValue,
> IN!Pen, IN!FontStyleSheet, IN!AttrDef, IN!FontNode, IN!Position,
> IN!FontStyleSheet, IN!AttrValue, IN!FontNode, IN!ObjOcc, IN!AttrValue,
> IN!LanguageName, IN!GUID, IN!AttrOcc, IN!Database, IN!AttrDef,
> IN!CxnDef, IN!AttrDef, IN!CxnOcc, IN!FontStyleSheet, IN!AttrValue,
> IN!GUID, IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!Pen,
> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID,
> IN!AttrOcc, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Brush, IN!Pen,
> IN!GUID, IN!AttrValue, IN!Position}}
> local stack = [aml2xpdl : ASMModule]
> ****** END Stack Trace
> Execution terminated due to error (see launch configuration to allow
> continuation after errors).
>
> Can anyone help? I can't find what's wrong.
>
> Thanks and Greetings
>
> Erik
--
Éric Vépa
SODIUS
6, rue de Cornouaille - BP 91941
44319 Nantes, France
Email: evepa@sodius.com
www.mdworkbench.com
Draw more value from your models
|
|
|
Re: [ATL] How to create o Sequence / Collection of model elements [message #41700 is a reply to message #41669] |
Fri, 25 May 2007 13:30 |
Eclipse User |
|
|
|
Originally posted by: erik_becker.gmx.de
Hello,
model is 'm' and should be the 'iterator'.
This was a mistake in my posting, that happened while replacing 'model'
by 'm'. Sorry! In my transformation file it's correct and looks as followed:
helper def : getModels : Sequence(XML!Element) =
let allModels : Sequence(XML!Element) =
XML!Element.allInstances()->asSequence() in
allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
if m.name = 'Model'
then
ms.append(m)
else
''
endif
);
Now any idea why it doesn't work?
Greetings
Erik
Éric Vépa schrieb:
> Hi Erik,
>
> What is 'model' used at line "if model.name = 'Model'" ?
>
> Erik Becker wrote:
>> Hi all,
>>
>> I'm new to ATL and fighting with it's peculiarities. ;-)
>>
>> I want to create a collection (Sequence) of special elements from a
>> XML. Therefore I wrote this helper:
>>
>> helper def : getModels : Sequence(XML!Element) =
>> let allModels : Sequence(XML!Element) =
>> XML!Element.allInstances()->asSequence() in
>> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
>> if model.name = 'Model'
>> then
>> ms.append(m)
>> else
>> ''
>> endif
>> );
>>
>> If I use this helper (just printing the sequence's size with output) I
>> get the following:
>> ****** BEGIN Stack Trace
>> message: ERROR: could not find operation append on String having
>> supertypes: [OclAny]
>> A.main() : ??#22 null
>> local variables = {self=aml2xpdl : ASMModule}
>> local stack = []
>> A.__initgetModels() : ??#23 8:46-8:66
>> local variables = {model=IN!Model, models='', self=aml2xpdl :
>> ASMModule, allModels=Sequence {IN!LogFont, IN!FontNode,
>> IN!FontStyleSheet, IN!AttrDef, IN!ObjDef, IN!Brush, IN!Size,
>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID,
>> IN!AttrDef, IN!Brush, IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrValue,
>> IN!AttrDef, IN!FontNode, IN!FontStyleSheet, IN!AttrValue,
>> IN!AttrValue, IN!FontNode, IN!AttrValue, IN!AttrDef, IN!AttrValue,
>> IN!FontNode, IN!ObjDef, IN!AttrValue, IN!AttrValue, IN!AttrDef,
>> IN!GUID, IN!Lane, IN!AttrOcc, IN!Pen, IN!FontStyleSheet, IN!AttrDef,
>> IN!AttrDef, IN!Pen, IN!FontNode, IN!AttrValue, IN!AttrDef,
>> IN!FontNode, IN!CxnOcc, IN!FontStyleSheet, IN!AttrDef, IN!AttrDef,
>> IN!AttrValue, IN!AttrDef, IN!ObjDef, IN!AttrDef, IN!Position, IN!Size,
>> IN!AttrValue, IN!FontStyleSheet, IN!AttrValue, IN!Pen, IN!GUID,
>> IN!AttrValue, IN!CxnOcc, IN!GUID, IN!Pen, IN!CxnOcc, IN!Position,
>> IN!Size, IN!AttrValue, IN!AttrDef, IN!Brush, IN!AttrValue, IN!AttrDef,
>> IN!Position, IN!AttrValue, IN!AttrValue, IN!FontNode, IN!AttrValue,
>> IN!GUID, IN!FontStyleSheet, IN!AttrValue, IN!ObjDef, IN!Flag, IN!GUID,
>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!CxnDef,
>> IN!AttrDef, IN!AML, IN!ObjOcc, IN!Size, IN!Position, IN!AttrDef,
>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!Position,
>> IN!AttrDef, IN!Pen, IN!Model, IN!AttrValue, IN!CxnOcc,
>> IN!FontStyleSheet, IN!Position, IN!Pen, IN!AttrValue, IN!AttrDef,
>> IN!Position, IN!AttrDef, IN!FontStyleSheet, IN!AttrValue,
>> IN!AttrValue, IN!AttrValue, IN!Brush, IN!ObjOcc, IN!AttrDef,
>> IN!CxnDef, IN!GUID, IN!ObjOcc, IN!AttrValue, IN!AttrDef, IN!CxnDef,
>> IN!Position, IN!FontNode, IN!AttrDef, IN!AttrDef, IN!AttrValue,
>> IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef, IN!Pen, IN!AttrValue,
>> IN!AttrDef, IN!AttrValue, IN!Position, IN!FontStyleSheet,
>> IN!FontStyleSheet, IN!GUID, IN!FontNode, IN!AttrValue, IN!AttrValue,
>> IN!Position, IN!FontStyleSheet, IN!AttrDef, IN!ObjOcc, IN!AttrValue,
>> IN!GUID, IN!FontStyleSheet, IN!FontNode, IN!CxnOcc, IN!AttrValue,
>> IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrValue, IN!AttrValue, IN!Brush,
>> IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!Size, IN!Pen,
>> IN!ObjOcc, IN!AttrDef, IN!GUID, IN!FontNode, IN!Size, IN!GUID,
>> IN!GUID, IN!Position, IN!FontStyleSheet, IN!FontStyleSheet,
>> IN!AttrValue, IN!AttrDef, IN!CxnDef, IN!CxnDef, IN!Brush,
>> IN!AttrValue, IN!Position, IN!AttrDef, IN!AttrDef, IN!Position,
>> IN!ObjDef, IN!Size, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!GUID,
>> IN!AttrDef, IN!AttrValue, IN!AttrOcc, IN!AttrDef, IN!AttrValue,
>> IN!FontNode, IN!AttrValue, IN!AttrValue, IN!Pen, IN!AttrValue,
>> IN!FontNode, IN!Brush, IN!ObjDef, IN!AttrDef, IN!FontStyleSheet,
>> IN!AttrDef, IN!AttrOcc, IN!AttrValue, IN!AttrDef, IN!GUID, IN!GUID,
>> IN!AttrDef, IN!GUID, IN!Position, IN!GUID, IN!AttrDef, IN!Pen,
>> IN!ObjDef, IN!Position, IN!AttrDef, IN!AttrDef, IN!Pen, IN!AttrValue,
>> IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Language,
>> IN!AttrValue, IN!AttrValue, IN!AttrOcc, IN!AttrValue, IN!FontNode,
>> IN!FontNode, IN!FontNode, IN!AttrValue, IN!AttrDef, IN!GUID,
>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Brush, IN!AttrDef,
>> IN!AttrDef, IN!AttrDef, IN!Position, IN!AttrDef, IN!AttrDef,
>> IN!AttrValue, IN!AttrDef, IN!Brush, IN!AttrValue, IN!FontNode,
>> IN!FontNode, IN!FontNode, IN!Position, IN!AttrValue, IN!AttrValue,
>> IN!GUID, IN!ObjOcc, IN!CxnDef, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>> IN!Position, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrDef,
>> IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrValue, IN!AttrValue,
>> IN!Header-Info, IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef,
>> IN!AttrValue, IN!FontNode, IN!AttrDef, IN!AttrValue, IN!AttrDef,
>> IN!Pen, IN!Position, IN!AttrDef, IN!GUID, IN!GUID, IN!Brush,
>> IN!FontStyleSheet, IN!AttrDef, IN!ObjOcc, IN!FontNode, IN!Pen,
>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>> IN!AttrValue, IN!GUID, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID,
>> IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!CxnOcc,
>> IN!GUID, IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrDef,
>> IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef,
>> IN!FontNode, IN!AttrOcc, IN!Lane, IN!AttrDef, IN!AttrDef,
>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrValue,
>> IN!ObjOcc, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!Pen,
>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>> IN!GUID, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrDef,
>> IN!AttrValue, IN!GUID, IN!Pen, IN!AttrValue, IN!GUID, IN!AttrValue,
>> IN!AttrValue, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!AttrValue,
>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID, IN!AttrValue,
>> IN!CxnDef, IN!AttrValue, IN!AttrValue, IN!ObjDef, IN!AttrDef,
>> IN!AttrValue, IN!AttrValue, IN!ObjDef, IN!Pen, IN!AttrDef,
>> IN!Position, IN!Size, IN!AttrOcc, IN!AttrDef, IN!GUID, IN!GUID,
>> IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!CxnOcc,
>> IN!AttrDef, IN!FontStyleSheet, IN!AttrValue, IN!CxnOcc, IN!Position,
>> IN!Group, IN!AttrDef, IN!GUID, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>> IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!FontStyleSheet,
>> IN!AttrDef, IN!GUID, IN!Position, IN!FontNode, IN!AttrValue,
>> IN!AttrDef, IN!Size, IN!GUID, IN!AttrValue, IN!GUID, IN!GUID,
>> IN!AttrDef, IN!AttrValue, IN!Position, IN!AttrDef, IN!AttrDef,
>> IN!CxnDef, IN!Pen, IN!AttrValue, IN!AttrValue, IN!Pen,
>> IN!FontStyleSheet, IN!AttrDef, IN!FontNode, IN!Position,
>> IN!FontStyleSheet, IN!AttrValue, IN!FontNode, IN!ObjOcc, IN!AttrValue,
>> IN!LanguageName, IN!GUID, IN!AttrOcc, IN!Database, IN!AttrDef,
>> IN!CxnDef, IN!AttrDef, IN!CxnOcc, IN!FontStyleSheet, IN!AttrValue,
>> IN!GUID, IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!Pen,
>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID,
>> IN!AttrOcc, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Brush, IN!Pen,
>> IN!GUID, IN!AttrValue, IN!Position}}
>> local stack = [aml2xpdl : ASMModule]
>> ****** END Stack Trace
>> Execution terminated due to error (see launch configuration to allow
>> continuation after errors).
>>
>> Can anyone help? I can't find what's wrong.
>>
>> Thanks and Greetings
>>
>> Erik
>
>
|
|
|
Re: [ATL] How to create o Sequence / Collection of model elements [message #41732 is a reply to message #41700] |
Fri, 25 May 2007 14:53 |
Frédéric Jouault Messages: 572 Registered: July 2009 |
Senior Member |
|
|
Hello Erik,
You probably want to replace '' by ms :-).
Best regards,
Frédéric Jouault
Erik Becker wrote:
> Hello,
>
> model is 'm' and should be the 'iterator'.
> This was a mistake in my posting, that happened while replacing 'model'
> by 'm'. Sorry! In my transformation file it's correct and looks as
> followed:
>
> helper def : getModels : Sequence(XML!Element) =
> let allModels : Sequence(XML!Element) =
> XML!Element.allInstances()->asSequence() in
> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
> if m.name = 'Model'
> then
> ms.append(m)
> else
> ''
> endif
> );
>
> Now any idea why it doesn't work?
>
> Greetings
>
> Erik
>
> Éric Vépa schrieb:
>> Hi Erik,
>>
>> What is 'model' used at line "if model.name = 'Model'" ?
>>
>> Erik Becker wrote:
>>> Hi all,
>>>
>>> I'm new to ATL and fighting with it's peculiarities. ;-)
>>>
>>> I want to create a collection (Sequence) of special elements from a
>>> XML. Therefore I wrote this helper:
>>>
>>> helper def : getModels : Sequence(XML!Element) =
>>> let allModels : Sequence(XML!Element) =
>>> XML!Element.allInstances()->asSequence() in
>>> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
>>> if model.name = 'Model'
>>> then
>>> ms.append(m)
>>> else
>>> ''
>>> endif
>>> );
>>>
>>> If I use this helper (just printing the sequence's size with output)
>>> I get the following:
>>> ****** BEGIN Stack Trace
>>> message: ERROR: could not find operation append on String having
>>> supertypes: [OclAny]
>>> A.main() : ??#22 null
>>> local variables = {self=aml2xpdl : ASMModule}
>>> local stack = []
>>> A.__initgetModels() : ??#23 8:46-8:66
>>> local variables = {model=IN!Model, models='', self=aml2xpdl :
>>> ASMModule, allModels=Sequence {IN!LogFont, IN!FontNode,
>>> IN!FontStyleSheet, IN!AttrDef, IN!ObjDef, IN!Brush, IN!Size,
>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID,
>>> IN!AttrDef, IN!Brush, IN!GUID, IN!AttrValue, IN!AttrDef,
>>> IN!AttrValue, IN!AttrDef, IN!FontNode, IN!FontStyleSheet,
>>> IN!AttrValue, IN!AttrValue, IN!FontNode, IN!AttrValue, IN!AttrDef,
>>> IN!AttrValue, IN!FontNode, IN!ObjDef, IN!AttrValue, IN!AttrValue,
>>> IN!AttrDef, IN!GUID, IN!Lane, IN!AttrOcc, IN!Pen, IN!FontStyleSheet,
>>> IN!AttrDef, IN!AttrDef, IN!Pen, IN!FontNode, IN!AttrValue,
>>> IN!AttrDef, IN!FontNode, IN!CxnOcc, IN!FontStyleSheet, IN!AttrDef,
>>> IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!ObjDef, IN!AttrDef,
>>> IN!Position, IN!Size, IN!AttrValue, IN!FontStyleSheet, IN!AttrValue,
>>> IN!Pen, IN!GUID, IN!AttrValue, IN!CxnOcc, IN!GUID, IN!Pen, IN!CxnOcc,
>>> IN!Position, IN!Size, IN!AttrValue, IN!AttrDef, IN!Brush,
>>> IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrValue,
>>> IN!FontNode, IN!AttrValue, IN!GUID, IN!FontStyleSheet, IN!AttrValue,
>>> IN!ObjDef, IN!Flag, IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>> IN!AttrDef, IN!CxnDef, IN!AttrDef, IN!AML, IN!ObjOcc, IN!Size,
>>> IN!Position, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>> IN!AttrValue, IN!Position, IN!AttrDef, IN!Pen, IN!Model,
>>> IN!AttrValue, IN!CxnOcc, IN!FontStyleSheet, IN!Position, IN!Pen,
>>> IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrDef, IN!FontStyleSheet,
>>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!Brush, IN!ObjOcc,
>>> IN!AttrDef, IN!CxnDef, IN!GUID, IN!ObjOcc, IN!AttrValue, IN!AttrDef,
>>> IN!CxnDef, IN!Position, IN!FontNode, IN!AttrDef, IN!AttrDef,
>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef, IN!Pen,
>>> IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!Position,
>>> IN!FontStyleSheet, IN!FontStyleSheet, IN!GUID, IN!FontNode,
>>> IN!AttrValue, IN!AttrValue, IN!Position, IN!FontStyleSheet,
>>> IN!AttrDef, IN!ObjOcc, IN!AttrValue, IN!GUID, IN!FontStyleSheet,
>>> IN!FontNode, IN!CxnOcc, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>> IN!GUID, IN!AttrValue, IN!AttrValue, IN!Brush, IN!AttrDef,
>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!Size, IN!Pen, IN!ObjOcc,
>>> IN!AttrDef, IN!GUID, IN!FontNode, IN!Size, IN!GUID, IN!GUID,
>>> IN!Position, IN!FontStyleSheet, IN!FontStyleSheet, IN!AttrValue,
>>> IN!AttrDef, IN!CxnDef, IN!CxnDef, IN!Brush, IN!AttrValue,
>>> IN!Position, IN!AttrDef, IN!AttrDef, IN!Position, IN!ObjDef, IN!Size,
>>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!GUID, IN!AttrDef,
>>> IN!AttrValue, IN!AttrOcc, IN!AttrDef, IN!AttrValue, IN!FontNode,
>>> IN!AttrValue, IN!AttrValue, IN!Pen, IN!AttrValue, IN!FontNode,
>>> IN!Brush, IN!ObjDef, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef,
>>> IN!AttrOcc, IN!AttrValue, IN!AttrDef, IN!GUID, IN!GUID, IN!AttrDef,
>>> IN!GUID, IN!Position, IN!GUID, IN!AttrDef, IN!Pen, IN!ObjDef,
>>> IN!Position, IN!AttrDef, IN!AttrDef, IN!Pen, IN!AttrValue,
>>> IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Language,
>>> IN!AttrValue, IN!AttrValue, IN!AttrOcc, IN!AttrValue, IN!FontNode,
>>> IN!FontNode, IN!FontNode, IN!AttrValue, IN!AttrDef, IN!GUID,
>>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Brush, IN!AttrDef,
>>> IN!AttrDef, IN!AttrDef, IN!Position, IN!AttrDef, IN!AttrDef,
>>> IN!AttrValue, IN!AttrDef, IN!Brush, IN!AttrValue, IN!FontNode,
>>> IN!FontNode, IN!FontNode, IN!Position, IN!AttrValue, IN!AttrValue,
>>> IN!GUID, IN!ObjOcc, IN!CxnDef, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>> IN!Position, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrDef,
>>> IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrValue, IN!AttrValue,
>>> IN!Header-Info, IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef,
>>> IN!AttrValue, IN!FontNode, IN!AttrDef, IN!AttrValue, IN!AttrDef,
>>> IN!Pen, IN!Position, IN!AttrDef, IN!GUID, IN!GUID, IN!Brush,
>>> IN!FontStyleSheet, IN!AttrDef, IN!ObjOcc, IN!FontNode, IN!Pen,
>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>>> IN!AttrValue, IN!GUID, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID,
>>> IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!CxnOcc,
>>> IN!GUID, IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrDef,
>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef,
>>> IN!FontNode, IN!AttrOcc, IN!Lane, IN!AttrDef, IN!AttrDef,
>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrValue,
>>> IN!ObjOcc, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!Pen,
>>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>> IN!GUID, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrDef,
>>> IN!AttrValue, IN!GUID, IN!Pen, IN!AttrValue, IN!GUID, IN!AttrValue,
>>> IN!AttrValue, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef,
>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue,
>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID,
>>> IN!AttrValue, IN!CxnDef, IN!AttrValue, IN!AttrValue, IN!ObjDef,
>>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!ObjDef, IN!Pen,
>>> IN!AttrDef, IN!Position, IN!Size, IN!AttrOcc, IN!AttrDef, IN!GUID,
>>> IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrDef,
>>> IN!CxnOcc, IN!AttrDef, IN!FontStyleSheet, IN!AttrValue, IN!CxnOcc,
>>> IN!Position, IN!Group, IN!AttrDef, IN!GUID, IN!AttrDef, IN!AttrValue,
>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!AttrDef,
>>> IN!FontStyleSheet, IN!AttrDef, IN!GUID, IN!Position, IN!FontNode,
>>> IN!AttrValue, IN!AttrDef, IN!Size, IN!GUID, IN!AttrValue, IN!GUID,
>>> IN!GUID, IN!AttrDef, IN!AttrValue, IN!Position, IN!AttrDef,
>>> IN!AttrDef, IN!CxnDef, IN!Pen, IN!AttrValue, IN!AttrValue, IN!Pen,
>>> IN!FontStyleSheet, IN!AttrDef, IN!FontNode, IN!Position,
>>> IN!FontStyleSheet, IN!AttrValue, IN!FontNode, IN!ObjOcc,
>>> IN!AttrValue, IN!LanguageName, IN!GUID, IN!AttrOcc, IN!Database,
>>> IN!AttrDef, IN!CxnDef, IN!AttrDef, IN!CxnOcc, IN!FontStyleSheet,
>>> IN!AttrValue, IN!GUID, IN!FontStyleSheet, IN!AttrDef, IN!AttrDef,
>>> IN!Pen, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef,
>>> IN!GUID, IN!AttrOcc, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>>> IN!Brush, IN!Pen, IN!GUID, IN!AttrValue, IN!Position}}
>>> local stack = [aml2xpdl : ASMModule]
>>> ****** END Stack Trace
>>> Execution terminated due to error (see launch configuration to allow
>>> continuation after errors).
>>>
>>> Can anyone help? I can't find what's wrong.
>>>
>>> Thanks and Greetings
>>>
>>> Erik
>>
>>
|
|
|
Re: [ATL] How to create o Sequence / Collection of model elements [message #41825 is a reply to message #41732] |
Fri, 25 May 2007 15:23 |
Eclipse User |
|
|
|
Originally posted by: erik_becker.gmx.de
Hi,
I replaced '' by in my helper.
Unfortunately it still doesn't work. Here's the most recent complete
version of my transformation:
module aml2xpdl; -- Module Template
create OUT : XPDL from IN : XML;
helper def : getModels : Sequence(XML!Element) =
let allModels : Sequence(XML!Element) =
XML!Element.allInstances()->asSequence()
in allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
if m.name = 'Model'
then
ms.append(ml)
else
ms
endif
);
entrypoint rule createPackage() {
to
package : XPDL!Package (
id <- '123',
name <- 'MyPackage',
workflowProcesses <- Set{process01, process02}
),
process01 : XPDL!Process (
id <- '456',
name <- 'MyProcess01'
),
process02 : XPDL!Process (
id <- '789',
name <- 'MyProcess02'
)
do {
-- Print number of models
thisModule.output(thisModule.getModels->size());
}
}
This is the error I get on the console:
****** BEGIN Stack Trace
exception:
java.lang.IllegalArgumentException: wrong number of arguments
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.atl.engine.vm.ClassNativeOperation.exec(ClassNativeOpera tion.java:59)
at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 60)
at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 50)
at org.atl.engine.vm.ASMOperation.realExec(ASMOperation.java:21 4)
at org.atl.engine.vm.ASMOperation.exec(ASMOperation.java:155)
at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 60)
at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 50)
at org.atl.engine.vm.ASMOperation.realExec(ASMOperation.java:21 4)
at org.atl.engine.vm.ASMOperation.exec(ASMOperation.java:155)
at org.atl.engine.vm.ASMInterpreter.<init>(ASMInterpreter.java:276)
at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:1 36)
at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:9 4)
at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:6 8)
at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:6 4)
at
org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:230)
at
org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:168)
at
org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:145)
at
org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:121)
at
org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .launch(AtlLaunchConfigurationDelegate.java:97)
at
org.eclipse.debug.internal.core.LaunchConfiguration.launch(L aunchConfiguration.java:639)
at
org.eclipse.debug.internal.core.LaunchConfiguration.launch(L aunchConfiguration.java:565)
at
org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(D ebugUIPlugin.java:754)
at
org.eclipse.debug.internal.ui.DebugUIPlugin$6.run(DebugUIPlu gin.java:944)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
A.main() : ??#24 null
local variables = {self=aml2xpdl : ASMModule}
local stack = []
A.createPackage() : ??#63 26:17-26:64
local variables = {process02=OUT!MyProcess02,
process01=OUT!MyProcess01, self=aml2xpdl : ASMModule, package=OUT!MyPackage}
local stack = []
NativeOperation public static void
org.atl.engine.vm.nativelib.ASMOclAny.output(org.atl.engine. vm.StackFrame,org.atl.engine.vm.nativelib.ASMOclAny)
args = [aml2xpdl : ASMModule, 1]
****** END Stack Trace
Execution terminated due to error (see launch configuration to allow
continuation after errors).
Any idea what to do? I'm not sure but it seems to me as the helper works.
Greetings
Erik
Frédéric Jouault schrieb:
> Hello Erik,
>
> You probably want to replace '' by ms :-).
>
>
> Best regards,
>
> Frédéric Jouault
>
> Erik Becker wrote:
>> Hello,
>>
>> model is 'm' and should be the 'iterator'.
>> This was a mistake in my posting, that happened while replacing
>> 'model' by 'm'. Sorry! In my transformation file it's correct and
>> looks as followed:
>>
>> helper def : getModels : Sequence(XML!Element) =
>> let allModels : Sequence(XML!Element) =
>> XML!Element.allInstances()->asSequence() in
>> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
>> if m.name = 'Model'
>> then
>> ms.append(m)
>> else
>> ''
>> endif
>> );
>>
>> Now any idea why it doesn't work?
>>
>> Greetings
>>
>> Erik
>>
>> Éric Vépa schrieb:
>>> Hi Erik,
>>>
>>> What is 'model' used at line "if model.name = 'Model'" ?
>>>
>>> Erik Becker wrote:
>>>> Hi all,
>>>>
>>>> I'm new to ATL and fighting with it's peculiarities. ;-)
>>>>
>>>> I want to create a collection (Sequence) of special elements from a
>>>> XML. Therefore I wrote this helper:
>>>>
>>>> helper def : getModels : Sequence(XML!Element) =
>>>> let allModels : Sequence(XML!Element) =
>>>> XML!Element.allInstances()->asSequence() in
>>>> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
>>>> if model.name = 'Model'
>>>> then
>>>> ms.append(m)
>>>> else
>>>> ''
>>>> endif
>>>> );
>>>>
>>>> If I use this helper (just printing the sequence's size with output)
>>>> I get the following:
>>>> ****** BEGIN Stack Trace
>>>> message: ERROR: could not find operation append on String having
>>>> supertypes: [OclAny]
>>>> A.main() : ??#22 null
>>>> local variables = {self=aml2xpdl : ASMModule}
>>>> local stack = []
>>>> A.__initgetModels() : ??#23 8:46-8:66
>>>> local variables = {model=IN!Model, models='', self=aml2xpdl :
>>>> ASMModule, allModels=Sequence {IN!LogFont, IN!FontNode,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!ObjDef, IN!Brush, IN!Size,
>>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID,
>>>> IN!AttrDef, IN!Brush, IN!GUID, IN!AttrValue, IN!AttrDef,
>>>> IN!AttrValue, IN!AttrDef, IN!FontNode, IN!FontStyleSheet,
>>>> IN!AttrValue, IN!AttrValue, IN!FontNode, IN!AttrValue, IN!AttrDef,
>>>> IN!AttrValue, IN!FontNode, IN!ObjDef, IN!AttrValue, IN!AttrValue,
>>>> IN!AttrDef, IN!GUID, IN!Lane, IN!AttrOcc, IN!Pen, IN!FontStyleSheet,
>>>> IN!AttrDef, IN!AttrDef, IN!Pen, IN!FontNode, IN!AttrValue,
>>>> IN!AttrDef, IN!FontNode, IN!CxnOcc, IN!FontStyleSheet, IN!AttrDef,
>>>> IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!ObjDef, IN!AttrDef,
>>>> IN!Position, IN!Size, IN!AttrValue, IN!FontStyleSheet, IN!AttrValue,
>>>> IN!Pen, IN!GUID, IN!AttrValue, IN!CxnOcc, IN!GUID, IN!Pen,
>>>> IN!CxnOcc, IN!Position, IN!Size, IN!AttrValue, IN!AttrDef, IN!Brush,
>>>> IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrValue,
>>>> IN!FontNode, IN!AttrValue, IN!GUID, IN!FontStyleSheet, IN!AttrValue,
>>>> IN!ObjDef, IN!Flag, IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>> IN!AttrDef, IN!CxnDef, IN!AttrDef, IN!AML, IN!ObjOcc, IN!Size,
>>>> IN!Position, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>> IN!AttrValue, IN!Position, IN!AttrDef, IN!Pen, IN!Model,
>>>> IN!AttrValue, IN!CxnOcc, IN!FontStyleSheet, IN!Position, IN!Pen,
>>>> IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrDef,
>>>> IN!FontStyleSheet, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>> IN!Brush, IN!ObjOcc, IN!AttrDef, IN!CxnDef, IN!GUID, IN!ObjOcc,
>>>> IN!AttrValue, IN!AttrDef, IN!CxnDef, IN!Position, IN!FontNode,
>>>> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>> IN!GUID, IN!AttrDef, IN!Pen, IN!AttrValue, IN!AttrDef, IN!AttrValue,
>>>> IN!Position, IN!FontStyleSheet, IN!FontStyleSheet, IN!GUID,
>>>> IN!FontNode, IN!AttrValue, IN!AttrValue, IN!Position,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!ObjOcc, IN!AttrValue, IN!GUID,
>>>> IN!FontStyleSheet, IN!FontNode, IN!CxnOcc, IN!AttrValue, IN!AttrDef,
>>>> IN!AttrDef, IN!GUID, IN!AttrValue, IN!AttrValue, IN!Brush,
>>>> IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!Size, IN!Pen,
>>>> IN!ObjOcc, IN!AttrDef, IN!GUID, IN!FontNode, IN!Size, IN!GUID,
>>>> IN!GUID, IN!Position, IN!FontStyleSheet, IN!FontStyleSheet,
>>>> IN!AttrValue, IN!AttrDef, IN!CxnDef, IN!CxnDef, IN!Brush,
>>>> IN!AttrValue, IN!Position, IN!AttrDef, IN!AttrDef, IN!Position,
>>>> IN!ObjDef, IN!Size, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>> IN!GUID, IN!AttrDef, IN!AttrValue, IN!AttrOcc, IN!AttrDef,
>>>> IN!AttrValue, IN!FontNode, IN!AttrValue, IN!AttrValue, IN!Pen,
>>>> IN!AttrValue, IN!FontNode, IN!Brush, IN!ObjDef, IN!AttrDef,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrOcc, IN!AttrValue, IN!AttrDef,
>>>> IN!GUID, IN!GUID, IN!AttrDef, IN!GUID, IN!Position, IN!GUID,
>>>> IN!AttrDef, IN!Pen, IN!ObjDef, IN!Position, IN!AttrDef, IN!AttrDef,
>>>> IN!Pen, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrValue,
>>>> IN!AttrValue, IN!Language, IN!AttrValue, IN!AttrValue, IN!AttrOcc,
>>>> IN!AttrValue, IN!FontNode, IN!FontNode, IN!FontNode, IN!AttrValue,
>>>> IN!AttrDef, IN!GUID, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>>>> IN!Brush, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!Position,
>>>> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!Brush,
>>>> IN!AttrValue, IN!FontNode, IN!FontNode, IN!FontNode, IN!Position,
>>>> IN!AttrValue, IN!AttrValue, IN!GUID, IN!ObjOcc, IN!CxnDef,
>>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!Position, IN!AttrDef,
>>>> IN!Position, IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrDef,
>>>> IN!GUID, IN!AttrValue, IN!AttrValue, IN!Header-Info, IN!AttrDef,
>>>> IN!AttrDef, IN!GUID, IN!AttrDef, IN!AttrValue, IN!FontNode,
>>>> IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!Pen, IN!Position,
>>>> IN!AttrDef, IN!GUID, IN!GUID, IN!Brush, IN!FontStyleSheet,
>>>> IN!AttrDef, IN!ObjOcc, IN!FontNode, IN!Pen, IN!AttrValue,
>>>> IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>> IN!GUID, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID, IN!AttrDef,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!CxnOcc, IN!GUID,
>>>> IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrDef,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef,
>>>> IN!FontNode, IN!AttrOcc, IN!Lane, IN!AttrDef, IN!AttrDef,
>>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrValue,
>>>> IN!ObjOcc, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!Pen,
>>>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>> IN!GUID, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrDef,
>>>> IN!AttrValue, IN!GUID, IN!Pen, IN!AttrValue, IN!GUID, IN!AttrValue,
>>>> IN!AttrValue, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef,
>>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue,
>>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID,
>>>> IN!AttrValue, IN!CxnDef, IN!AttrValue, IN!AttrValue, IN!ObjDef,
>>>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!ObjDef, IN!Pen,
>>>> IN!AttrDef, IN!Position, IN!Size, IN!AttrOcc, IN!AttrDef, IN!GUID,
>>>> IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrDef,
>>>> IN!CxnOcc, IN!AttrDef, IN!FontStyleSheet, IN!AttrValue, IN!CxnOcc,
>>>> IN!Position, IN!Group, IN!AttrDef, IN!GUID, IN!AttrDef,
>>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrDef,
>>>> IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!GUID, IN!Position,
>>>> IN!FontNode, IN!AttrValue, IN!AttrDef, IN!Size, IN!GUID,
>>>> IN!AttrValue, IN!GUID, IN!GUID, IN!AttrDef, IN!AttrValue,
>>>> IN!Position, IN!AttrDef, IN!AttrDef, IN!CxnDef, IN!Pen,
>>>> IN!AttrValue, IN!AttrValue, IN!Pen, IN!FontStyleSheet, IN!AttrDef,
>>>> IN!FontNode, IN!Position, IN!FontStyleSheet, IN!AttrValue,
>>>> IN!FontNode, IN!ObjOcc, IN!AttrValue, IN!LanguageName, IN!GUID,
>>>> IN!AttrOcc, IN!Database, IN!AttrDef, IN!CxnDef, IN!AttrDef,
>>>> IN!CxnOcc, IN!FontStyleSheet, IN!AttrValue, IN!GUID,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!Pen, IN!AttrValue,
>>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrOcc,
>>>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Brush, IN!Pen, IN!GUID,
>>>> IN!AttrValue, IN!Position}}
>>>> local stack = [aml2xpdl : ASMModule]
>>>> ****** END Stack Trace
>>>> Execution terminated due to error (see launch configuration to allow
>>>> continuation after errors).
>>>>
>>>> Can anyone help? I can't find what's wrong.
>>>>
>>>> Thanks and Greetings
>>>>
>>>> Erik
>>>
>>>
|
|
|
Re: [ATL] How to create o Sequence / Collection of model elements [message #41856 is a reply to message #41825] |
Fri, 25 May 2007 15:28 |
Frédéric Jouault Messages: 572 Registered: July 2009 |
Senior Member |
|
|
Hi,
OclAny.output() : Void prints its source on the console. It does not
take any argument.
For instance:
'Hello World!'.output()
;-)
BTW, why are you not using declarative rules?
Best regards,
Frédéric Jouault
Erik Becker wrote:
> Hi,
>
> I replaced '' by in my helper.
>
> Unfortunately it still doesn't work. Here's the most recent complete
> version of my transformation:
>
> module aml2xpdl; -- Module Template
>
> create OUT : XPDL from IN : XML;
>
> helper def : getModels : Sequence(XML!Element) =
> let allModels : Sequence(XML!Element) =
> XML!Element.allInstances()->asSequence()
> in allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
> if m.name = 'Model'
> then
> ms.append(ml)
> else
> ms
> endif
> );
>
> entrypoint rule createPackage() {
> to
> package : XPDL!Package (
> id <- '123',
> name <- 'MyPackage',
> workflowProcesses <- Set{process01, process02}
> ),
> process01 : XPDL!Process (
> id <- '456',
> name <- 'MyProcess01'
> ),
> process02 : XPDL!Process (
> id <- '789',
> name <- 'MyProcess02'
> )
> do {
> -- Print number of models
> thisModule.output(thisModule.getModels->size());
> }
> }
>
> This is the error I get on the console:
> ****** BEGIN Stack Trace
> exception:
> java.lang.IllegalArgumentException: wrong number of arguments
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at
> org.atl.engine.vm.ClassNativeOperation.exec(ClassNativeOpera tion.java:59)
> at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 60)
> at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 50)
> at org.atl.engine.vm.ASMOperation.realExec(ASMOperation.java:21 4)
> at org.atl.engine.vm.ASMOperation.exec(ASMOperation.java:155)
> at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 60)
> at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 50)
> at org.atl.engine.vm.ASMOperation.realExec(ASMOperation.java:21 4)
> at org.atl.engine.vm.ASMOperation.exec(ASMOperation.java:155)
> at org.atl.engine.vm.ASMInterpreter.<init>(ASMInterpreter.java:276)
> at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:1 36)
> at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:9 4)
> at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:6 8)
> at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:6 4)
> at
> org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:230)
>
> at
> org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:168)
>
> at
> org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:145)
>
> at
> org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:121)
>
> at
> org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .launch(AtlLaunchConfigurationDelegate.java:97)
>
> at
> org.eclipse.debug.internal.core.LaunchConfiguration.launch(L aunchConfiguration.java:639)
>
> at
> org.eclipse.debug.internal.core.LaunchConfiguration.launch(L aunchConfiguration.java:565)
>
> at
> org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(D ebugUIPlugin.java:754)
>
> at
> org.eclipse.debug.internal.ui.DebugUIPlugin$6.run(DebugUIPlu gin.java:944)
> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
> A.main() : ??#24 null
> local variables = {self=aml2xpdl : ASMModule}
> local stack = []
> A.createPackage() : ??#63 26:17-26:64
> local variables = {process02=OUT!MyProcess02,
> process01=OUT!MyProcess01, self=aml2xpdl : ASMModule,
> package=OUT!MyPackage}
> local stack = []
> NativeOperation public static void
> org.atl.engine.vm.nativelib.ASMOclAny.output(org.atl.engine. vm.StackFrame,org.atl.engine.vm.nativelib.ASMOclAny)
>
> args = [aml2xpdl : ASMModule, 1]
> ****** END Stack Trace
> Execution terminated due to error (see launch configuration to allow
> continuation after errors).
>
> Any idea what to do? I'm not sure but it seems to me as the helper works.
>
> Greetings
>
> Erik
>
> Frédéric Jouault schrieb:
>> Hello Erik,
>>
>> You probably want to replace '' by ms :-).
>>
>>
>> Best regards,
>>
>> Frédéric Jouault
>>
>> Erik Becker wrote:
>>> Hello,
>>>
>>> model is 'm' and should be the 'iterator'.
>>> This was a mistake in my posting, that happened while replacing
>>> 'model' by 'm'. Sorry! In my transformation file it's correct and
>>> looks as followed:
>>>
>>> helper def : getModels : Sequence(XML!Element) =
>>> let allModels : Sequence(XML!Element) =
>>> XML!Element.allInstances()->asSequence() in
>>> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
>>> if m.name = 'Model'
>>> then
>>> ms.append(m)
>>> else
>>> ''
>>> endif
>>> );
>>>
>>> Now any idea why it doesn't work?
>>>
>>> Greetings
>>>
>>> Erik
>>>
>>> Éric Vépa schrieb:
>>>> Hi Erik,
>>>>
>>>> What is 'model' used at line "if model.name = 'Model'" ?
>>>>
>>>> Erik Becker wrote:
>>>>> Hi all,
>>>>>
>>>>> I'm new to ATL and fighting with it's peculiarities. ;-)
>>>>>
>>>>> I want to create a collection (Sequence) of special elements from a
>>>>> XML. Therefore I wrote this helper:
>>>>>
>>>>> helper def : getModels : Sequence(XML!Element) =
>>>>> let allModels : Sequence(XML!Element) =
>>>>> XML!Element.allInstances()->asSequence() in
>>>>> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
>>>>> if model.name = 'Model'
>>>>> then
>>>>> ms.append(m)
>>>>> else
>>>>> ''
>>>>> endif
>>>>> );
>>>>>
>>>>> If I use this helper (just printing the sequence's size with
>>>>> output) I get the following:
>>>>> ****** BEGIN Stack Trace
>>>>> message: ERROR: could not find operation append on String
>>>>> having supertypes: [OclAny]
>>>>> A.main() : ??#22 null
>>>>> local variables = {self=aml2xpdl : ASMModule}
>>>>> local stack = []
>>>>> A.__initgetModels() : ??#23 8:46-8:66
>>>>> local variables = {model=IN!Model, models='', self=aml2xpdl :
>>>>> ASMModule, allModels=Sequence {IN!LogFont, IN!FontNode,
>>>>> IN!FontStyleSheet, IN!AttrDef, IN!ObjDef, IN!Brush, IN!Size,
>>>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID,
>>>>> IN!AttrDef, IN!Brush, IN!GUID, IN!AttrValue, IN!AttrDef,
>>>>> IN!AttrValue, IN!AttrDef, IN!FontNode, IN!FontStyleSheet,
>>>>> IN!AttrValue, IN!AttrValue, IN!FontNode, IN!AttrValue, IN!AttrDef,
>>>>> IN!AttrValue, IN!FontNode, IN!ObjDef, IN!AttrValue, IN!AttrValue,
>>>>> IN!AttrDef, IN!GUID, IN!Lane, IN!AttrOcc, IN!Pen,
>>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!Pen, IN!FontNode,
>>>>> IN!AttrValue, IN!AttrDef, IN!FontNode, IN!CxnOcc,
>>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!AttrValue,
>>>>> IN!AttrDef, IN!ObjDef, IN!AttrDef, IN!Position, IN!Size,
>>>>> IN!AttrValue, IN!FontStyleSheet, IN!AttrValue, IN!Pen, IN!GUID,
>>>>> IN!AttrValue, IN!CxnOcc, IN!GUID, IN!Pen, IN!CxnOcc, IN!Position,
>>>>> IN!Size, IN!AttrValue, IN!AttrDef, IN!Brush, IN!AttrValue,
>>>>> IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrValue, IN!FontNode,
>>>>> IN!AttrValue, IN!GUID, IN!FontStyleSheet, IN!AttrValue, IN!ObjDef,
>>>>> IN!Flag, IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrDef,
>>>>> IN!CxnDef, IN!AttrDef, IN!AML, IN!ObjOcc, IN!Size, IN!Position,
>>>>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>>> IN!Position, IN!AttrDef, IN!Pen, IN!Model, IN!AttrValue, IN!CxnOcc,
>>>>> IN!FontStyleSheet, IN!Position, IN!Pen, IN!AttrValue, IN!AttrDef,
>>>>> IN!Position, IN!AttrDef, IN!FontStyleSheet, IN!AttrValue,
>>>>> IN!AttrValue, IN!AttrValue, IN!Brush, IN!ObjOcc, IN!AttrDef,
>>>>> IN!CxnDef, IN!GUID, IN!ObjOcc, IN!AttrValue, IN!AttrDef, IN!CxnDef,
>>>>> IN!Position, IN!FontNode, IN!AttrDef, IN!AttrDef, IN!AttrValue,
>>>>> IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef, IN!Pen, IN!AttrValue,
>>>>> IN!AttrDef, IN!AttrValue, IN!Position, IN!FontStyleSheet,
>>>>> IN!FontStyleSheet, IN!GUID, IN!FontNode, IN!AttrValue,
>>>>> IN!AttrValue, IN!Position, IN!FontStyleSheet, IN!AttrDef,
>>>>> IN!ObjOcc, IN!AttrValue, IN!GUID, IN!FontStyleSheet, IN!FontNode,
>>>>> IN!CxnOcc, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!GUID,
>>>>> IN!AttrValue, IN!AttrValue, IN!Brush, IN!AttrDef, IN!AttrValue,
>>>>> IN!AttrDef, IN!AttrDef, IN!Size, IN!Pen, IN!ObjOcc, IN!AttrDef,
>>>>> IN!GUID, IN!FontNode, IN!Size, IN!GUID, IN!GUID, IN!Position,
>>>>> IN!FontStyleSheet, IN!FontStyleSheet, IN!AttrValue, IN!AttrDef,
>>>>> IN!CxnDef, IN!CxnDef, IN!Brush, IN!AttrValue, IN!Position,
>>>>> IN!AttrDef, IN!AttrDef, IN!Position, IN!ObjDef, IN!Size,
>>>>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!GUID, IN!AttrDef,
>>>>> IN!AttrValue, IN!AttrOcc, IN!AttrDef, IN!AttrValue, IN!FontNode,
>>>>> IN!AttrValue, IN!AttrValue, IN!Pen, IN!AttrValue, IN!FontNode,
>>>>> IN!Brush, IN!ObjDef, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef,
>>>>> IN!AttrOcc, IN!AttrValue, IN!AttrDef, IN!GUID, IN!GUID, IN!AttrDef,
>>>>> IN!GUID, IN!Position, IN!GUID, IN!AttrDef, IN!Pen, IN!ObjDef,
>>>>> IN!Position, IN!AttrDef, IN!AttrDef, IN!Pen, IN!AttrValue,
>>>>> IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Language,
>>>>> IN!AttrValue, IN!AttrValue, IN!AttrOcc, IN!AttrValue, IN!FontNode,
>>>>> IN!FontNode, IN!FontNode, IN!AttrValue, IN!AttrDef, IN!GUID,
>>>>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Brush, IN!AttrDef,
>>>>> IN!AttrDef, IN!AttrDef, IN!Position, IN!AttrDef, IN!AttrDef,
>>>>> IN!AttrValue, IN!AttrDef, IN!Brush, IN!AttrValue, IN!FontNode,
>>>>> IN!FontNode, IN!FontNode, IN!Position, IN!AttrValue, IN!AttrValue,
>>>>> IN!GUID, IN!ObjOcc, IN!CxnDef, IN!AttrValue, IN!AttrDef,
>>>>> IN!AttrDef, IN!Position, IN!AttrDef, IN!Position, IN!AttrValue,
>>>>> IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrValue,
>>>>> IN!AttrValue, IN!Header-Info, IN!AttrDef, IN!AttrDef, IN!GUID,
>>>>> IN!AttrDef, IN!AttrValue, IN!FontNode, IN!AttrDef, IN!AttrValue,
>>>>> IN!AttrDef, IN!Pen, IN!Position, IN!AttrDef, IN!GUID, IN!GUID,
>>>>> IN!Brush, IN!FontStyleSheet, IN!AttrDef, IN!ObjOcc, IN!FontNode,
>>>>> IN!Pen, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrValue,
>>>>> IN!AttrValue, IN!AttrValue, IN!GUID, IN!AttrDef, IN!AttrDef,
>>>>> IN!AttrValue, IN!GUID, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef,
>>>>> IN!AttrValue, IN!CxnOcc, IN!GUID, IN!AttrValue, IN!AttrDef,
>>>>> IN!Position, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef,
>>>>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>>> IN!GUID, IN!AttrDef, IN!FontNode, IN!AttrOcc, IN!Lane, IN!AttrDef,
>>>>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID,
>>>>> IN!AttrValue, IN!ObjOcc, IN!AttrDef, IN!AttrDef, IN!AttrDef,
>>>>> IN!AttrDef, IN!Pen, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>>> IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef, IN!Position,
>>>>> IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!GUID, IN!Pen,
>>>>> IN!AttrValue, IN!GUID, IN!AttrValue, IN!AttrValue, IN!AttrDef,
>>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>>>>> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrDef,
>>>>> IN!AttrDef, IN!AttrValue, IN!GUID, IN!AttrValue, IN!CxnDef,
>>>>> IN!AttrValue, IN!AttrValue, IN!ObjDef, IN!AttrDef, IN!AttrValue,
>>>>> IN!AttrValue, IN!ObjDef, IN!Pen, IN!AttrDef, IN!Position, IN!Size,
>>>>> IN!AttrOcc, IN!AttrDef, IN!GUID, IN!GUID, IN!AttrValue, IN!AttrDef,
>>>>> IN!AttrValue, IN!AttrDef, IN!CxnOcc, IN!AttrDef, IN!FontStyleSheet,
>>>>> IN!AttrValue, IN!CxnOcc, IN!Position, IN!Group, IN!AttrDef,
>>>>> IN!GUID, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrDef,
>>>>> IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef,
>>>>> IN!GUID, IN!Position, IN!FontNode, IN!AttrValue, IN!AttrDef,
>>>>> IN!Size, IN!GUID, IN!AttrValue, IN!GUID, IN!GUID, IN!AttrDef,
>>>>> IN!AttrValue, IN!Position, IN!AttrDef, IN!AttrDef, IN!CxnDef,
>>>>> IN!Pen, IN!AttrValue, IN!AttrValue, IN!Pen, IN!FontStyleSheet,
>>>>> IN!AttrDef, IN!FontNode, IN!Position, IN!FontStyleSheet,
>>>>> IN!AttrValue, IN!FontNode, IN!ObjOcc, IN!AttrValue,
>>>>> IN!LanguageName, IN!GUID, IN!AttrOcc, IN!Database, IN!AttrDef,
>>>>> IN!CxnDef, IN!AttrDef, IN!CxnOcc, IN!FontStyleSheet, IN!AttrValue,
>>>>> IN!GUID, IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!Pen,
>>>>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID,
>>>>> IN!AttrOcc, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Brush,
>>>>> IN!Pen, IN!GUID, IN!AttrValue, IN!Position}}
>>>>> local stack = [aml2xpdl : ASMModule]
>>>>> ****** END Stack Trace
>>>>> Execution terminated due to error (see launch configuration to
>>>>> allow continuation after errors).
>>>>>
>>>>> Can anyone help? I can't find what's wrong.
>>>>>
>>>>> Thanks and Greetings
>>>>>
>>>>> Erik
>>>>
>>>>
|
|
|
Re: [ATL] How to create o Sequence / Collection of model elements [message #41888 is a reply to message #41732] |
Fri, 25 May 2007 15:35 |
Eclipse User |
|
|
|
Originally posted by: erik_becker.gmx.de
Hi,
forget my posting from before I found another correction. I replaced ''
by in my helper AND put a 'to.String()' to the output command.
Unfortunately it still doesn't work. Here's the most recent complete
version of my transformation:
module aml2xpdl; -- Module Template
create OUT : XPDL from IN : XML;
helper def : getModels : Sequence(XML!Element) =
let allModels : Sequence(XML!Element) =
XML!Element.allInstances()->asSequence()
in allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
if m.name = 'Model'
then
ms.append(ml)
else
ms
endif
);
entrypoint rule createPackage() {
to
package : XPDL!Package (
id <- '123',
name <- 'MyPackage',
workflowProcesses <- Set{process01, process02}
),
process01 : XPDL!Process (
id <- '456',
name <- 'MyProcess01'
),
process02 : XPDL!Process (
id <- '789',
name <- 'MyProcess02'
)
do {
-- Print number of models
thisModule.output(thisModule.getModels->size().toString());
}
}
This is the error I get on the console:
****** BEGIN Stack Trace
exception:
java.lang.IllegalArgumentException: wrong number of arguments
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.atl.engine.vm.ClassNativeOperation.exec(ClassNativeOpera tion.java:59)
at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 60)
at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 50)
at org.atl.engine.vm.ASMOperation.realExec(ASMOperation.java:21 4)
at org.atl.engine.vm.ASMOperation.exec(ASMOperation.java:155)
at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 60)
at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 50)
at org.atl.engine.vm.ASMOperation.realExec(ASMOperation.java:21 4)
at org.atl.engine.vm.ASMOperation.exec(ASMOperation.java:155)
at org.atl.engine.vm.ASMInterpreter.<init>(ASMInterpreter.java:276)
at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:1 36)
at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:9 4)
at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:6 8)
at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:6 4)
at
org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:230)
at
org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:168)
at
org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:145)
at
org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:121)
at
org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .launch(AtlLaunchConfigurationDelegate.java:97)
at
org.eclipse.debug.internal.core.LaunchConfiguration.launch(L aunchConfiguration.java:639)
at
org.eclipse.debug.internal.core.LaunchConfiguration.launch(L aunchConfiguration.java:565)
at
org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(D ebugUIPlugin.java:754)
at
org.eclipse.debug.internal.ui.DebugUIPlugin$6.run(DebugUIPlu gin.java:944)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
A.main() : ??#24 null
local variables = {self=aml2xpdl : ASMModule}
local stack = []
A.createPackage() : ??#64 31:17-31:75
local variables = {process02=OUT!MyProcess02,
process01=OUT!MyProcess01, self=aml2xpdl : ASMModule, package=OUT!MyPackage}
local stack = []
NativeOperation public static void
org.atl.engine.vm.nativelib.ASMOclAny.output(org.atl.engine. vm.StackFrame,org.atl.engine.vm.nativelib.ASMOclAny)
args = [aml2xpdl : ASMModule, '1']
****** END Stack Trace
Execution terminated due to error (see launch configuration to allow
continuation after errors).
Any idea what to do? I'm not sure but it seems as the helper works. I
want to use the Sequence to produce Elements for each member in it.
How can I inspect if the helper works?
Greetings
Erik
Frédéric Jouault schrieb:
> Hello Erik,
>
> You probably want to replace '' by ms :-).
>
>
> Best regards,
>
> Frédéric Jouault
>
> Erik Becker wrote:
>> Hello,
>>
>> model is 'm' and should be the 'iterator'.
>> This was a mistake in my posting, that happened while replacing
>> 'model' by 'm'. Sorry! In my transformation file it's correct and
>> looks as followed:
>>
>> helper def : getModels : Sequence(XML!Element) =
>> let allModels : Sequence(XML!Element) =
>> XML!Element.allInstances()->asSequence() in
>> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
>> if m.name = 'Model'
>> then
>> ms.append(m)
>> else
>> ''
>> endif
>> );
>>
>> Now any idea why it doesn't work?
>>
>> Greetings
>>
>> Erik
>>
>> Éric Vépa schrieb:
>>> Hi Erik,
>>>
>>> What is 'model' used at line "if model.name = 'Model'" ?
>>>
>>> Erik Becker wrote:
>>>> Hi all,
>>>>
>>>> I'm new to ATL and fighting with it's peculiarities. ;-)
>>>>
>>>> I want to create a collection (Sequence) of special elements from a
>>>> XML. Therefore I wrote this helper:
>>>>
>>>> helper def : getModels : Sequence(XML!Element) =
>>>> let allModels : Sequence(XML!Element) =
>>>> XML!Element.allInstances()->asSequence() in
>>>> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
>>>> if model.name = 'Model'
>>>> then
>>>> ms.append(m)
>>>> else
>>>> ''
>>>> endif
>>>> );
>>>>
>>>> If I use this helper (just printing the sequence's size with output)
>>>> I get the following:
>>>> ****** BEGIN Stack Trace
>>>> message: ERROR: could not find operation append on String having
>>>> supertypes: [OclAny]
>>>> A.main() : ??#22 null
>>>> local variables = {self=aml2xpdl : ASMModule}
>>>> local stack = []
>>>> A.__initgetModels() : ??#23 8:46-8:66
>>>> local variables = {model=IN!Model, models='', self=aml2xpdl :
>>>> ASMModule, allModels=Sequence {IN!LogFont, IN!FontNode,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!ObjDef, IN!Brush, IN!Size,
>>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID,
>>>> IN!AttrDef, IN!Brush, IN!GUID, IN!AttrValue, IN!AttrDef,
>>>> IN!AttrValue, IN!AttrDef, IN!FontNode, IN!FontStyleSheet,
>>>> IN!AttrValue, IN!AttrValue, IN!FontNode, IN!AttrValue, IN!AttrDef,
>>>> IN!AttrValue, IN!FontNode, IN!ObjDef, IN!AttrValue, IN!AttrValue,
>>>> IN!AttrDef, IN!GUID, IN!Lane, IN!AttrOcc, IN!Pen, IN!FontStyleSheet,
>>>> IN!AttrDef, IN!AttrDef, IN!Pen, IN!FontNode, IN!AttrValue,
>>>> IN!AttrDef, IN!FontNode, IN!CxnOcc, IN!FontStyleSheet, IN!AttrDef,
>>>> IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!ObjDef, IN!AttrDef,
>>>> IN!Position, IN!Size, IN!AttrValue, IN!FontStyleSheet, IN!AttrValue,
>>>> IN!Pen, IN!GUID, IN!AttrValue, IN!CxnOcc, IN!GUID, IN!Pen,
>>>> IN!CxnOcc, IN!Position, IN!Size, IN!AttrValue, IN!AttrDef, IN!Brush,
>>>> IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrValue,
>>>> IN!FontNode, IN!AttrValue, IN!GUID, IN!FontStyleSheet, IN!AttrValue,
>>>> IN!ObjDef, IN!Flag, IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>> IN!AttrDef, IN!CxnDef, IN!AttrDef, IN!AML, IN!ObjOcc, IN!Size,
>>>> IN!Position, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>> IN!AttrValue, IN!Position, IN!AttrDef, IN!Pen, IN!Model,
>>>> IN!AttrValue, IN!CxnOcc, IN!FontStyleSheet, IN!Position, IN!Pen,
>>>> IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrDef,
>>>> IN!FontStyleSheet, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>> IN!Brush, IN!ObjOcc, IN!AttrDef, IN!CxnDef, IN!GUID, IN!ObjOcc,
>>>> IN!AttrValue, IN!AttrDef, IN!CxnDef, IN!Position, IN!FontNode,
>>>> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>> IN!GUID, IN!AttrDef, IN!Pen, IN!AttrValue, IN!AttrDef, IN!AttrValue,
>>>> IN!Position, IN!FontStyleSheet, IN!FontStyleSheet, IN!GUID,
>>>> IN!FontNode, IN!AttrValue, IN!AttrValue, IN!Position,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!ObjOcc, IN!AttrValue, IN!GUID,
>>>> IN!FontStyleSheet, IN!FontNode, IN!CxnOcc, IN!AttrValue, IN!AttrDef,
>>>> IN!AttrDef, IN!GUID, IN!AttrValue, IN!AttrValue, IN!Brush,
>>>> IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!Size, IN!Pen,
>>>> IN!ObjOcc, IN!AttrDef, IN!GUID, IN!FontNode, IN!Size, IN!GUID,
>>>> IN!GUID, IN!Position, IN!FontStyleSheet, IN!FontStyleSheet,
>>>> IN!AttrValue, IN!AttrDef, IN!CxnDef, IN!CxnDef, IN!Brush,
>>>> IN!AttrValue, IN!Position, IN!AttrDef, IN!AttrDef, IN!Position,
>>>> IN!ObjDef, IN!Size, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>> IN!GUID, IN!AttrDef, IN!AttrValue, IN!AttrOcc, IN!AttrDef,
>>>> IN!AttrValue, IN!FontNode, IN!AttrValue, IN!AttrValue, IN!Pen,
>>>> IN!AttrValue, IN!FontNode, IN!Brush, IN!ObjDef, IN!AttrDef,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrOcc, IN!AttrValue, IN!AttrDef,
>>>> IN!GUID, IN!GUID, IN!AttrDef, IN!GUID, IN!Position, IN!GUID,
>>>> IN!AttrDef, IN!Pen, IN!ObjDef, IN!Position, IN!AttrDef, IN!AttrDef,
>>>> IN!Pen, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrValue,
>>>> IN!AttrValue, IN!Language, IN!AttrValue, IN!AttrValue, IN!AttrOcc,
>>>> IN!AttrValue, IN!FontNode, IN!FontNode, IN!FontNode, IN!AttrValue,
>>>> IN!AttrDef, IN!GUID, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>>>> IN!Brush, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!Position,
>>>> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!Brush,
>>>> IN!AttrValue, IN!FontNode, IN!FontNode, IN!FontNode, IN!Position,
>>>> IN!AttrValue, IN!AttrValue, IN!GUID, IN!ObjOcc, IN!CxnDef,
>>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!Position, IN!AttrDef,
>>>> IN!Position, IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrDef,
>>>> IN!GUID, IN!AttrValue, IN!AttrValue, IN!Header-Info, IN!AttrDef,
>>>> IN!AttrDef, IN!GUID, IN!AttrDef, IN!AttrValue, IN!FontNode,
>>>> IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!Pen, IN!Position,
>>>> IN!AttrDef, IN!GUID, IN!GUID, IN!Brush, IN!FontStyleSheet,
>>>> IN!AttrDef, IN!ObjOcc, IN!FontNode, IN!Pen, IN!AttrValue,
>>>> IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>> IN!GUID, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID, IN!AttrDef,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!CxnOcc, IN!GUID,
>>>> IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrDef,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef,
>>>> IN!FontNode, IN!AttrOcc, IN!Lane, IN!AttrDef, IN!AttrDef,
>>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrValue,
>>>> IN!ObjOcc, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!Pen,
>>>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>> IN!GUID, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrDef,
>>>> IN!AttrValue, IN!GUID, IN!Pen, IN!AttrValue, IN!GUID, IN!AttrValue,
>>>> IN!AttrValue, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef,
>>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue,
>>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID,
>>>> IN!AttrValue, IN!CxnDef, IN!AttrValue, IN!AttrValue, IN!ObjDef,
>>>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!ObjDef, IN!Pen,
>>>> IN!AttrDef, IN!Position, IN!Size, IN!AttrOcc, IN!AttrDef, IN!GUID,
>>>> IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!AttrDef,
>>>> IN!CxnOcc, IN!AttrDef, IN!FontStyleSheet, IN!AttrValue, IN!CxnOcc,
>>>> IN!Position, IN!Group, IN!AttrDef, IN!GUID, IN!AttrDef,
>>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrDef,
>>>> IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!GUID, IN!Position,
>>>> IN!FontNode, IN!AttrValue, IN!AttrDef, IN!Size, IN!GUID,
>>>> IN!AttrValue, IN!GUID, IN!GUID, IN!AttrDef, IN!AttrValue,
>>>> IN!Position, IN!AttrDef, IN!AttrDef, IN!CxnDef, IN!Pen,
>>>> IN!AttrValue, IN!AttrValue, IN!Pen, IN!FontStyleSheet, IN!AttrDef,
>>>> IN!FontNode, IN!Position, IN!FontStyleSheet, IN!AttrValue,
>>>> IN!FontNode, IN!ObjOcc, IN!AttrValue, IN!LanguageName, IN!GUID,
>>>> IN!AttrOcc, IN!Database, IN!AttrDef, IN!CxnDef, IN!AttrDef,
>>>> IN!CxnOcc, IN!FontStyleSheet, IN!AttrValue, IN!GUID,
>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!Pen, IN!AttrValue,
>>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrOcc,
>>>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Brush, IN!Pen, IN!GUID,
>>>> IN!AttrValue, IN!Position}}
>>>> local stack = [aml2xpdl : ASMModule]
>>>> ****** END Stack Trace
>>>> Execution terminated due to error (see launch configuration to allow
>>>> continuation after errors).
>>>>
>>>> Can anyone help? I can't find what's wrong.
>>>>
>>>> Thanks and Greetings
>>>>
>>>> Erik
>>>
>>>
|
|
|
Re: [ATL] How to create o Sequence / Collection of model elements [message #41920 is a reply to message #41856] |
Fri, 25 May 2007 15:47 |
Eclipse User |
|
|
|
Originally posted by: erik_becker.gmx.de
Hello,
Frédéric Jouault schrieb:
> Hi,
>
> OclAny.output() : Void prints its source on the console. It does not
> take any argument.
Okay, a simple look in the manual could help. Sorry for that.
>
> For instance:
> 'Hello World!'.output()
>
> ;-)
>
>
> BTW, why are you not using declarative rules?
I don't know. I'm exploring a way to get what I want. It's some like
'Try and Error'. ;-)
>
>
>
> Best regards,
>
> Frédéric Jouault
>
>
> Erik Becker wrote:
>> Hi,
>>
>> I replaced '' by in my helper.
>>
>> Unfortunately it still doesn't work. Here's the most recent complete
>> version of my transformation:
>>
>> module aml2xpdl; -- Module Template
>>
>> create OUT : XPDL from IN : XML;
>>
>> helper def : getModels : Sequence(XML!Element) =
>> let allModels : Sequence(XML!Element) =
>> XML!Element.allInstances()->asSequence()
>> in allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
>> if m.name = 'Model'
>> then
>> ms.append(ml)
>> else
>> ms
>> endif
>> );
>>
>> entrypoint rule createPackage() {
>> to
>> package : XPDL!Package (
>> id <- '123',
>> name <- 'MyPackage',
>> workflowProcesses <- Set{process01, process02}
>> ),
>> process01 : XPDL!Process (
>> id <- '456',
>> name <- 'MyProcess01'
>> ),
>> process02 : XPDL!Process (
>> id <- '789',
>> name <- 'MyProcess02'
>> )
>> do {
>> -- Print number of models
>> thisModule.output(thisModule.getModels->size());
>> }
>> }
>>
>> This is the error I get on the console:
>> ****** BEGIN Stack Trace
>> exception:
>> java.lang.IllegalArgumentException: wrong number of arguments
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>> at java.lang.reflect.Method.invoke(Unknown Source)
>> at
>> org.atl.engine.vm.ClassNativeOperation.exec(ClassNativeOpera tion.java:59)
>> at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 60)
>> at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 50)
>> at org.atl.engine.vm.ASMOperation.realExec(ASMOperation.java:21 4)
>> at org.atl.engine.vm.ASMOperation.exec(ASMOperation.java:155)
>> at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 60)
>> at org.atl.engine.vm.nativelib.ASMOclAny.invoke(ASMOclAny.java: 50)
>> at org.atl.engine.vm.ASMOperation.realExec(ASMOperation.java:21 4)
>> at org.atl.engine.vm.ASMOperation.exec(ASMOperation.java:155)
>> at org.atl.engine.vm.ASMInterpreter.<init>(ASMInterpreter.java:276)
>> at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:1 36)
>> at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:9 4)
>> at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:6 8)
>> at org.atl.eclipse.engine.AtlLauncher.launch(AtlLauncher.java:6 4)
>> at
>> org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:230)
>>
>> at
>> org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:168)
>>
>> at
>> org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:145)
>>
>> at
>> org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .runAtlLauncher(AtlLaunchConfigurationDelegate.java:121)
>>
>> at
>> org.atl.eclipse.adt.launching.AtlLaunchConfigurationDelegate .launch(AtlLaunchConfigurationDelegate.java:97)
>>
>> at
>> org.eclipse.debug.internal.core.LaunchConfiguration.launch(L aunchConfiguration.java:639)
>>
>> at
>> org.eclipse.debug.internal.core.LaunchConfiguration.launch(L aunchConfiguration.java:565)
>>
>> at
>> org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(D ebugUIPlugin.java:754)
>>
>> at
>> org.eclipse.debug.internal.ui.DebugUIPlugin$6.run(DebugUIPlu gin.java:944)
>> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
>> A.main() : ??#24 null
>> local variables = {self=aml2xpdl : ASMModule}
>> local stack = []
>> A.createPackage() : ??#63 26:17-26:64
>> local variables = {process02=OUT!MyProcess02,
>> process01=OUT!MyProcess01, self=aml2xpdl : ASMModule,
>> package=OUT!MyPackage}
>> local stack = []
>> NativeOperation public static void
>> org.atl.engine.vm.nativelib.ASMOclAny.output(org.atl.engine. vm.StackFrame,org.atl.engine.vm.nativelib.ASMOclAny)
>>
>> args = [aml2xpdl : ASMModule, 1]
>> ****** END Stack Trace
>> Execution terminated due to error (see launch configuration to allow
>> continuation after errors).
>>
>> Any idea what to do? I'm not sure but it seems to me as the helper works.
>>
>> Greetings
>>
>> Erik
>>
>> Frédéric Jouault schrieb:
>>> Hello Erik,
>>>
>>> You probably want to replace '' by ms :-).
>>>
>>>
>>> Best regards,
>>>
>>> Frédéric Jouault
>>>
>>> Erik Becker wrote:
>>>> Hello,
>>>>
>>>> model is 'm' and should be the 'iterator'.
>>>> This was a mistake in my posting, that happened while replacing
>>>> 'model' by 'm'. Sorry! In my transformation file it's correct and
>>>> looks as followed:
>>>>
>>>> helper def : getModels : Sequence(XML!Element) =
>>>> let allModels : Sequence(XML!Element) =
>>>> XML!Element.allInstances()->asSequence() in
>>>> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
>>>> if m.name = 'Model'
>>>> then
>>>> ms.append(m)
>>>> else
>>>> ''
>>>> endif
>>>> );
>>>>
>>>> Now any idea why it doesn't work?
>>>>
>>>> Greetings
>>>>
>>>> Erik
>>>>
>>>> Éric Vépa schrieb:
>>>>> Hi Erik,
>>>>>
>>>>> What is 'model' used at line "if model.name = 'Model'" ?
>>>>>
>>>>> Erik Becker wrote:
>>>>>> Hi all,
>>>>>>
>>>>>> I'm new to ATL and fighting with it's peculiarities. ;-)
>>>>>>
>>>>>> I want to create a collection (Sequence) of special elements from
>>>>>> a XML. Therefore I wrote this helper:
>>>>>>
>>>>>> helper def : getModels : Sequence(XML!Element) =
>>>>>> let allModels : Sequence(XML!Element) =
>>>>>> XML!Element.allInstances()->asSequence() in
>>>>>> allModels->iterate(m; ms : Sequence(XML!Element) = Sequence{} |
>>>>>> if model.name = 'Model'
>>>>>> then
>>>>>> ms.append(m)
>>>>>> else
>>>>>> ''
>>>>>> endif
>>>>>> );
>>>>>>
>>>>>> If I use this helper (just printing the sequence's size with
>>>>>> output) I get the following:
>>>>>> ****** BEGIN Stack Trace
>>>>>> message: ERROR: could not find operation append on String
>>>>>> having supertypes: [OclAny]
>>>>>> A.main() : ??#22 null
>>>>>> local variables = {self=aml2xpdl : ASMModule}
>>>>>> local stack = []
>>>>>> A.__initgetModels() : ??#23 8:46-8:66
>>>>>> local variables = {model=IN!Model, models='', self=aml2xpdl :
>>>>>> ASMModule, allModels=Sequence {IN!LogFont, IN!FontNode,
>>>>>> IN!FontStyleSheet, IN!AttrDef, IN!ObjDef, IN!Brush, IN!Size,
>>>>>> IN!AttrValue, IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!GUID,
>>>>>> IN!AttrDef, IN!Brush, IN!GUID, IN!AttrValue, IN!AttrDef,
>>>>>> IN!AttrValue, IN!AttrDef, IN!FontNode, IN!FontStyleSheet,
>>>>>> IN!AttrValue, IN!AttrValue, IN!FontNode, IN!AttrValue, IN!AttrDef,
>>>>>> IN!AttrValue, IN!FontNode, IN!ObjDef, IN!AttrValue, IN!AttrValue,
>>>>>> IN!AttrDef, IN!GUID, IN!Lane, IN!AttrOcc, IN!Pen,
>>>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!Pen, IN!FontNode,
>>>>>> IN!AttrValue, IN!AttrDef, IN!FontNode, IN!CxnOcc,
>>>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrDef, IN!AttrValue,
>>>>>> IN!AttrDef, IN!ObjDef, IN!AttrDef, IN!Position, IN!Size,
>>>>>> IN!AttrValue, IN!FontStyleSheet, IN!AttrValue, IN!Pen, IN!GUID,
>>>>>> IN!AttrValue, IN!CxnOcc, IN!GUID, IN!Pen, IN!CxnOcc, IN!Position,
>>>>>> IN!Size, IN!AttrValue, IN!AttrDef, IN!Brush, IN!AttrValue,
>>>>>> IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrValue, IN!FontNode,
>>>>>> IN!AttrValue, IN!GUID, IN!FontStyleSheet, IN!AttrValue, IN!ObjDef,
>>>>>> IN!Flag, IN!GUID, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>>>> IN!AttrDef, IN!CxnDef, IN!AttrDef, IN!AML, IN!ObjOcc, IN!Size,
>>>>>> IN!Position, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>>>> IN!AttrValue, IN!Position, IN!AttrDef, IN!Pen, IN!Model,
>>>>>> IN!AttrValue, IN!CxnOcc, IN!FontStyleSheet, IN!Position, IN!Pen,
>>>>>> IN!AttrValue, IN!AttrDef, IN!Position, IN!AttrDef,
>>>>>> IN!FontStyleSheet, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>>>> IN!Brush, IN!ObjOcc, IN!AttrDef, IN!CxnDef, IN!GUID, IN!ObjOcc,
>>>>>> IN!AttrValue, IN!AttrDef, IN!CxnDef, IN!Position, IN!FontNode,
>>>>>> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>>>> IN!GUID, IN!AttrDef, IN!Pen, IN!AttrValue, IN!AttrDef,
>>>>>> IN!AttrValue, IN!Position, IN!FontStyleSheet, IN!FontStyleSheet,
>>>>>> IN!GUID, IN!FontNode, IN!AttrValue, IN!AttrValue, IN!Position,
>>>>>> IN!FontStyleSheet, IN!AttrDef, IN!ObjOcc, IN!AttrValue, IN!GUID,
>>>>>> IN!FontStyleSheet, IN!FontNode, IN!CxnOcc, IN!AttrValue,
>>>>>> IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrValue, IN!AttrValue,
>>>>>> IN!Brush, IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>>>> IN!Size, IN!Pen, IN!ObjOcc, IN!AttrDef, IN!GUID, IN!FontNode,
>>>>>> IN!Size, IN!GUID, IN!GUID, IN!Position, IN!FontStyleSheet,
>>>>>> IN!FontStyleSheet, IN!AttrValue, IN!AttrDef, IN!CxnDef, IN!CxnDef,
>>>>>> IN!Brush, IN!AttrValue, IN!Position, IN!AttrDef, IN!AttrDef,
>>>>>> IN!Position, IN!ObjDef, IN!Size, IN!AttrValue, IN!AttrValue,
>>>>>> IN!AttrValue, IN!GUID, IN!AttrDef, IN!AttrValue, IN!AttrOcc,
>>>>>> IN!AttrDef, IN!AttrValue, IN!FontNode, IN!AttrValue, IN!AttrValue,
>>>>>> IN!Pen, IN!AttrValue, IN!FontNode, IN!Brush, IN!ObjDef,
>>>>>> IN!AttrDef, IN!FontStyleSheet, IN!AttrDef, IN!AttrOcc,
>>>>>> IN!AttrValue, IN!AttrDef, IN!GUID, IN!GUID, IN!AttrDef, IN!GUID,
>>>>>> IN!Position, IN!GUID, IN!AttrDef, IN!Pen, IN!ObjDef, IN!Position,
>>>>>> IN!AttrDef, IN!AttrDef, IN!Pen, IN!AttrValue, IN!AttrValue,
>>>>>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!Language, IN!AttrValue,
>>>>>> IN!AttrValue, IN!AttrOcc, IN!AttrValue, IN!FontNode, IN!FontNode,
>>>>>> IN!FontNode, IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrDef,
>>>>>> IN!AttrValue, IN!AttrValue, IN!Brush, IN!AttrDef, IN!AttrDef,
>>>>>> IN!AttrDef, IN!Position, IN!AttrDef, IN!AttrDef, IN!AttrValue,
>>>>>> IN!AttrDef, IN!Brush, IN!AttrValue, IN!FontNode, IN!FontNode,
>>>>>> IN!FontNode, IN!Position, IN!AttrValue, IN!AttrValue, IN!GUID,
>>>>>> IN!ObjOcc, IN!CxnDef, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>>>> IN!Position, IN!AttrDef, IN!Position, IN!AttrValue, IN!AttrDef,
>>>>>> IN!AttrValue, IN!AttrDef, IN!GUID, IN!AttrValue, IN!AttrValue,
>>>>>> IN!Header-Info, IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef,
>>>>>> IN!AttrValue, IN!FontNode, IN!AttrDef, IN!AttrValue, IN!AttrDef,
>>>>>> IN!Pen, IN!Position, IN!AttrDef, IN!GUID, IN!GUID, IN!Brush,
>>>>>> IN!FontStyleSheet, IN!AttrDef, IN!ObjOcc, IN!FontNode, IN!Pen,
>>>>>> IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrValue,
>>>>>> IN!AttrValue, IN!AttrValue, IN!GUID, IN!AttrDef, IN!AttrDef,
>>>>>> IN!AttrValue, IN!GUID, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef,
>>>>>> IN!AttrValue, IN!CxnOcc, IN!GUID, IN!AttrValue, IN!AttrDef,
>>>>>> IN!Position, IN!AttrDef, IN!FontStyleSheet, IN!AttrDef,
>>>>>> IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!AttrDef,
>>>>>> IN!GUID, IN!AttrDef, IN!FontNode, IN!AttrOcc, IN!Lane, IN!AttrDef,
>>>>>> IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrDef, IN!GUID,
>>>>>> IN!AttrValue, IN!ObjOcc, IN!AttrDef, IN!AttrDef, IN!AttrDef,
>>>>>> IN!AttrDef, IN!Pen, IN!AttrValue, IN!AttrValue, IN!AttrValue,
>>>>>> IN!AttrDef, IN!AttrDef, IN!GUID, IN!AttrDef, IN!Position,
>>>>>> IN!AttrValue, IN!AttrDef, IN!AttrValue, IN!GUID, IN!Pen,
>>>>>> IN!AttrValue, IN!GUID, IN!AttrValue, IN!AttrValue, IN!AttrDef,
>>>>>> IN!FontStyleSheet, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>>>>>> IN!AttrDef, IN!AttrDef, IN!AttrValue, IN!AttrValue, IN!AttrDef,
>>>>>> IN!AttrDef, IN!AttrValue, IN!GUID, IN!AttrValue, IN!CxnDef,
>>>>>> IN!AttrValue, IN!AttrValue, IN!ObjDef, IN!AttrDef, IN!AttrValue,
>>>>>> IN!AttrValue, IN!ObjDef, IN!Pen, IN!AttrDef, IN!Position, IN!Size,
>>>>>> IN!AttrOcc, IN!AttrDef, IN!GUID, IN!GUID, IN!AttrValue,
>>>>>> IN!AttrDef, IN!AttrValue, IN!AttrDef, IN!CxnOcc, IN!AttrDef,
>>>>>> IN!FontStyleSheet, IN!AttrValue, IN!CxnOcc, IN!Position, IN!Group,
>>>>>> IN!AttrDef, IN!GUID, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>>>>>> IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!AttrDef, IN!FontStyleSheet,
>>>>>> IN!AttrDef, IN!GUID, IN!Position, IN!FontNode, IN!AttrValue,
>>>>>> IN!AttrDef, IN!Size, IN!GUID, IN!AttrValue, IN!GUID, IN!GUID,
>>>>>> IN!AttrDef, IN!AttrValue, IN!Position, IN!AttrDef, IN!AttrDef,
>>>>>> IN!CxnDef, IN!Pen, IN!AttrValue, IN!AttrValue, IN!Pen,
>>>>>> IN!FontStyleSheet, IN!AttrDef, IN!FontNode, IN!Position,
>>>>>> IN!FontStyleSheet, IN!AttrValue, IN!FontNode, IN!ObjOcc,
>>>>>> IN!AttrValue, IN!LanguageName, IN!GUID, IN!AttrOcc, IN!Database,
>>>>>> IN!AttrDef, IN!CxnDef, IN!AttrDef, IN!CxnOcc, IN!FontStyleSheet,
>>>>>> IN!AttrValue, IN!GUID, IN!FontStyleSheet, IN!AttrDef, IN!AttrDef,
>>>>>> IN!Pen, IN!AttrValue, IN!AttrValue, IN!AttrValue, IN!AttrDef,
>>>>>> IN!GUID, IN!AttrOcc, IN!AttrDef, IN!AttrValue, IN!AttrValue,
>>>>>> IN!Brush, IN!Pen, IN!GUID, IN!AttrValue, IN!Position}}
>>>>>> local stack = [aml2xpdl : ASMModule]
>>>>>> ****** END Stack Trace
>>>>>> Execution terminated due to error (see launch configuration to
>>>>>> allow continuation after errors).
>>>>>>
>>>>>> Can anyone help? I can't find what's wrong.
>>>>>>
>>>>>> Thanks and Greetings
>>>>>>
>>>>>> Erik
>>>>>
>>>>>
|
|
| |
Re: [ATL] How to create o Sequence / Collection of model elements [message #41982 is a reply to message #41951] |
Fri, 25 May 2007 16:02 |
Eclipse User |
|
|
|
Originally posted by: erik_becker.gmx.de
You're welcome. And thanks too! It now works.
Nice weekend
Erik
Frédéric Jouault schrieb:
> Hello,
>
> >> OclAny.output() : Void prints its source on the console. It does not
> >> take any argument.
> >
> > Okay, a simple look in the manual could help. Sorry for that.
>
> The error message states that you are using a wrong number of arguments,
> and if you go at the bottom of the stack trace, you can see that it is
> when calling OclAny.output().
>
> I guess I should include the name of the operation in the error message,
> so that you do not need to skip all this Java exception trace before
> having to skip all the ATL stack trace ;-). I just added this to my TODO
> list.
>
> Thanks for your feedback.
>
>
> Best regards,
>
> Frédéric Jouault
|
|
|
Goto Forum:
Current Time: Fri Apr 19 11:33:57 GMT 2024
Powered by FUDForum. Page generated in 0.02710 seconds
|