Skip to main content



      Home
Home » Modeling » EMF "Technology" (Ecore Tools, EMFatic, etc)  » [EEF] StackOverflow while generating code
[EEF] StackOverflow while generating code [message #505710] Mon, 04 January 2010 05:56 Go to next message
Eclipse UserFriend
Hi all,

I've decided to perform some tests with the EEF framework with the aim
of enriching our UI support for the CDO framework. Lot of interesting
features in this new exciting project, so kudos to all the folks that
make it possible :)

I've been following the instructions provided at:

http://wiki.eclipse.org/EEF_tutorial_:_First_generation

with the following environment:

Eclipse Helios 3.6 M4: I20091210-1301
EMF 2.6.0.v200912121603
Acceleo SDK 0.9.0.v200912150944
EEF 0.8.0.v201001040921-177-7w312112151A32 (fetched from the nightly
builds update site)

So far I've just created the .components and .eefgen models through the
"Initialize EEF models" action. Then, I took a quick look at the models
(no modifications) and generated. I didn't get any error message or
such, and the code wasn't generated. I found this exception in the error
log:

Caused by: java.lang.StackOverflowError
at
org.eclipse.ocl.ecore.impl.VariableExpImpl.getReferredVariab le(VariableExpImpl.java:97)
at
org.eclipse.ocl.util.ToStringVisitor.visitVariableExp(ToStri ngVisitor.java:203)
at
org.eclipse.ocl.util.ToStringVisitor.visitVariableExp(ToStri ngVisitor.java:1)
at
org.eclipse.ocl.ecore.impl.VariableExpImpl.accept(VariableEx pImpl.java:258)
at
org.eclipse.ocl.utilities.AbstractVisitor.safeVisit(Abstract Visitor.java:103)
at
org.eclipse.ocl.utilities.AbstractVisitor.visitPropertyCallE xp(AbstractVisitor.java:161)
at
org.eclipse.ocl.ecore.impl.PropertyCallExpImpl.accept(Proper tyCallExpImpl.java:246)
at
org.eclipse.ocl.ecore.impl.FeatureCallExpImpl.toString(Featu reCallExpImpl.java:218)
at
org.eclipse.acceleo.model.mtl.impl.spec.QueryInvocationSpec. toString(QueryInvocationSpec.java:65)
at
org.eclipse.acceleo.model.mtl.impl.spec.QueryInvocationSpec. accept(QueryInvocationSpec.java:47)
at
org.eclipse.ocl.utilities.AbstractVisitor.safeVisit(Abstract Visitor.java:103)
at
org.eclipse.ocl.utilities.AbstractVisitor.visitOperationCall Exp(AbstractVisitor.java:122)
at
org.eclipse.ocl.ecore.impl.OperationCallExpImpl.accept(Opera tionCallExpImpl.java:399)
at
org.eclipse.ocl.utilities.AbstractVisitor.safeVisit(Abstract Visitor.java:103)
at
org.eclipse.ocl.utilities.AbstractVisitor.visitOperationCall Exp(AbstractVisitor.java:112)
at
org.eclipse.ocl.ecore.impl.OperationCallExpImpl.accept(Opera tionCallExpImpl.java:399)
at
org.eclipse.ocl.utilities.AbstractVisitor.safeVisit(Abstract Visitor.java:103)
at
org.eclipse.ocl.utilities.AbstractVisitor.visitOperationCall Exp(AbstractVisitor.java:112)
at
org.eclipse.ocl.ecore.impl.OperationCallExpImpl.accept(Opera tionCallExpImpl.java:399)
at
org.eclipse.ocl.ecore.impl.FeatureCallExpImpl.toString(Featu reCallExpImpl.java:218)
at
org.eclipse.acceleo.model.mtl.impl.spec.TemplateSpec.toStrin g(TemplateSpec.java:56)
at
org.eclipse.acceleo.model.mtl.impl.spec.TemplateSpec.toStrin g(TemplateSpec.java:64)
at
org.eclipse.acceleo.model.mtl.impl.spec.TemplateSpec.toStrin g(TemplateSpec.java:64)
at
org.eclipse.acceleo.model.mtl.impl.spec.TemplateSpec.toStrin g(TemplateSpec.java:64)
at
org.eclipse.acceleo.model.mtl.impl.spec.TemplateSpec.toStrin g(TemplateSpec.java:64)
at
org.eclipse.acceleo.model.mtl.impl.spec.TemplateSpec.toStrin g(TemplateSpec.java:64)
at
org.eclipse.acceleo.model.mtl.impl.spec.TemplateSpec.toStrin g(TemplateSpec.java:64)

....

a warning:

org.eclipse.acceleo.engine.AcceleoEvaluationException: Undefined result
for expression pee.navigation.oclIsUndefined().not() at position 2.419
in Module common for query query Public hasModelNavigation(pee :
PropertiesEditionElement) : Boolean. Last recorded value of self was
Address.

and also 10 OCLExpression evaluation exceptions:

java.lang.IllegalArgumentException
at
org.eclipse.ocl.ecore.EcoreEvaluationEnvironment.navigatePro perty(EcoreEvaluationEnvironment.java:178)
at
org.eclipse.ocl.ecore.EcoreEvaluationEnvironment.navigatePro perty(EcoreEvaluationEnvironment.java:1)
at
org.eclipse.ocl.EvaluationVisitorImpl.visitPropertyCallExp(E valuationVisitorImpl.java:1925)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitPropertyCallExp(AcceleoEvaluationVisitor.ja va:954)
at
org.eclipse.ocl.ecore.impl.PropertyCallExpImpl.accept(Proper tyCallExpImpl.java:246)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor$ParameterInitExpression.accept(AcceleoEvaluation Visitor.java:1430)
at
org.eclipse.ocl.EvaluationVisitorImpl.visitVariable(Evaluati onVisitorImpl.java:1976)
at
org.eclipse.ocl.EvaluationVisitorDecorator.visitVariable(Eva luationVisitorDecorator.java:340)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitAcceleoQueryInvocation(AcceleoEvaluationVis itor.java:654)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.switchExpression(AcceleoEvaluationVisitor.java:1 368)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitExpression(AcceleoEvaluationVisitor.java:87 2)
at
org.eclipse.acceleo.model.mtl.impl.spec.QueryInvocationSpec. accept(QueryInvocationSpec.java:45)
at
org.eclipse.ocl.EvaluationVisitorImpl.visitOperationCallExp( EvaluationVisitorImpl.java:161)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitOperationCallExp(AcceleoEvaluationVisitor.j ava:943)
at
org.eclipse.ocl.ecore.impl.OperationCallExpImpl.accept(Opera tionCallExpImpl.java:399)
at
org.eclipse.ocl.EvaluationVisitorImpl.visitOperationCallExp( EvaluationVisitorImpl.java:161)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitOperationCallExp(AcceleoEvaluationVisitor.j ava:943)
at
org.eclipse.ocl.ecore.impl.OperationCallExpImpl.accept(Opera tionCallExpImpl.java:399)
at
org.eclipse.ocl.AbstractEvaluationVisitor.visitExpression(Ab stractEvaluationVisitor.java:247)
at
org.eclipse.ocl.EvaluationVisitorDecorator.visitExpression(E valuationVisitorDecorator.java:156)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.switchExpression(AcceleoEvaluationVisitor.java:1 376)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitExpression(AcceleoEvaluationVisitor.java:87 2)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.evaluateGuards(AcceleoEvaluationVisitor.java:110 4)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.prepareInvocation(AcceleoEvaluationVisitor.java: 1243)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitAcceleoTemplateInvocation(AcceleoEvaluation Visitor.java:787)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.switchExpression(AcceleoEvaluationVisitor.java:1 366)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitExpression(AcceleoEvaluationVisitor.java:87 2)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitAcceleoForBlock(AcceleoEvaluationVisitor.ja va:416)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.switchExpression(AcceleoEvaluationVisitor.java:1 360)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitExpression(AcceleoEvaluationVisitor.java:87 2)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitAcceleoBlock(AcceleoEvaluationVisitor.java: 238)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitAcceleoIfBlock(AcceleoEvaluationVisitor.jav a:497)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.switchExpression(AcceleoEvaluationVisitor.java:1 357)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitExpression(AcceleoEvaluationVisitor.java:87 2)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitAcceleoFileBlock(AcceleoEvaluationVisitor.j ava:305)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.switchExpression(AcceleoEvaluationVisitor.java:1 363)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitExpression(AcceleoEvaluationVisitor.java:87 2)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitAcceleoForBlock(AcceleoEvaluationVisitor.ja va:416)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.switchExpression(AcceleoEvaluationVisitor.java:1 360)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitExpression(AcceleoEvaluationVisitor.java:87 2)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitAcceleoIfBlock(AcceleoEvaluationVisitor.jav a:465)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.switchExpression(AcceleoEvaluationVisitor.java:1 357)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitExpression(AcceleoEvaluationVisitor.java:87 2)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitAcceleoForBlock(AcceleoEvaluationVisitor.ja va:416)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.switchExpression(AcceleoEvaluationVisitor.java:1 360)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitExpression(AcceleoEvaluationVisitor.java:87 2)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitAcceleoTemplate(AcceleoEvaluationVisitor.ja va:770)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.switchExpression(AcceleoEvaluationVisitor.java:1 355)
at
org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvalua tionVisitor.visitExpression(AcceleoEvaluationVisitor.java:87 2)
at
org.eclipse.ocl.internal.evaluation.QueryImpl.evaluate(Query Impl.java:152)
at org.eclipse.ocl.ecore.QueryImpl.evaluate(QueryImpl.java:62)
at
org.eclipse.acceleo.engine.generation.AcceleoEngine.doEvalua te(AcceleoEngine.java:293)
at
org.eclipse.acceleo.engine.generation.AcceleoEngine.evaluate (AcceleoEngine.java:136)
at
org.eclipse.acceleo.engine.service.AcceleoService.doGenerate Template(AcceleoService.java:593)
at
org.eclipse.acceleo.engine.service.AcceleoService.doGenerate (AcceleoService.java:429)
at
org.eclipse.emf.eef.codegen.components.SubPropertiesEditionC omponent.doGenerate(SubPropertiesEditionComponent.java:285)
at
org.eclipse.emf.eef.codegen.ui.generators.common.GenerateAll .doGenerate(GenerateAll.java:122)
at
org.eclipse.emf.eef.codegen.ui.generators.actions.AbstractGe nerateEEFAction$1.run(AbstractGenerateEEFAction.java:102)
at
org.eclipse.jface.operation.ModalContext$ModalContextThread. run(ModalContext.java:121)



The model I'm using is org.eclipse.emf.cdo.tests.model1 and can be found
at
dev.eclipse.org:/cvsroot/modeling/org.eclipse.emf/org.eclips e.emf.cdo/tests/org.eclipse.emf.cdo.tests.model1


Hope the information provided is enough. Don't hesitate asking for
further information / tests :)

Cheers,
Víctor.
Re: [EEF] StackOverflow while generating code [message #505715 is a reply to message #505710] Mon, 04 January 2010 06:26 Go to previous messageGo to next message
Eclipse UserFriend
Hi again,

I would like to add that the generator also returns the same exception
with a simple model that I've made for testing purpose (1 EClass with 2
EAttributes, EString and EInt).

Cheers,
Víctor.
Re: [EEF] StackOverflow while generating code [message #505807 is a reply to message #505715] Mon, 04 January 2010 22:08 Go to previous messageGo to next message
Eclipse UserFriend
Hi Victor,

First thanks for the kudos ;) It's not the first time we encounter this
problem, We'll see this problem with Acceleo Team today.

--
Goulwen Le Fur - goulwen.lefur@obeo.fr

Víctor Roldán Betancort a écrit :
> Hi again,
>
> I would like to add that the generator also returns the same exception
> with a simple model that I've made for testing purpose (1 EClass with 2
> EAttributes, EString and EInt).
>
> Cheers,
> Víctor.
Re: [EEF] StackOverflow while generating code [message #505828 is a reply to message #505807] Tue, 05 January 2010 04:52 Go to previous messageGo to next message
Eclipse UserFriend
Hi Goulwen,

thanks for the assistance. Shall I open a bug to keep track of it?

Cheers,
Víctor.

Goulwen Le Fur escribió:
> Hi Victor,
>
> First thanks for the kudos ;) It's not the first time we encounter this
> problem, We'll see this problem with Acceleo Team today.
>
Re: [EEF] StackOverflow while generating code [message #505839 is a reply to message #505828] Tue, 05 January 2010 00:24 Go to previous messageGo to next message
Eclipse UserFriend
Yes you can, I hope it's the last time we encounter this problem ;)

--
Goulwen

Víctor Roldán Betancort a écrit :
> Hi Goulwen,
>
> thanks for the assistance. Shall I open a bug to keep track of it?
>
> Cheers,
> Víctor.
>
> Goulwen Le Fur escribió:
>> Hi Victor,
>>
>> First thanks for the kudos ;) It's not the first time we encounter
>> this problem, We'll see this problem with Acceleo Team today.
>>
Re: [EEF] StackOverflow while generating code [message #505868 is a reply to message #505839] Tue, 05 January 2010 07:22 Go to previous message
Eclipse UserFriend
Bug 298838 - StackOverflow while generating code
https://bugs.eclipse.org/bugs/show_bug.cgi?id=298838

Cheers Goulwen!

Goulwen Le Fur escribió:
> Yes you can, I hope it's the last time we encounter this problem ;)
>
Re: [EEF] StackOverflow while generating code [message #621957 is a reply to message #505828] Tue, 05 January 2010 05:11 Go to previous message
Eclipse UserFriend
Yes you can, I hope it's the last time we encounter this problem ;)

--
Goulwen

Víctor Roldán Betancort a écrit :
> Hi Goulwen,
>
> thanks for the assistance. Shall I open a bug to keep track of it?
>
> Cheers,
> Víctor.
>
> Goulwen Le Fur escribió:
>> Hi Victor,
>>
>> First thanks for the kudos ;) It's not the first time we encounter
>> this problem, We'll see this problem with Acceleo Team today.
>>
Re: [EEF] StackOverflow while generating code [message #621958 is a reply to message #621957] Tue, 05 January 2010 07:22 Go to previous message
Eclipse UserFriend
Bug 298838 - StackOverflow while generating code
https://bugs.eclipse.org/bugs/show_bug.cgi?id=298838

Cheers Goulwen!

Goulwen Le Fur escribió:
> Yes you can, I hope it's the last time we encounter this problem ;)
>
Previous Topic:[EEF] StackOverflow while generating code
Next Topic:[MWE] MWE project evolution?
Goto Forum:
  


Current Time: Mon Jul 14 14:57:52 EDT 2025

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

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

Back to the top