| Summary: | Cannot execute imported binary template | ||
|---|---|---|---|
| Product: | [Modeling] Acceleo | Reporter: | Ed Willink <ed> |
| Component: | Core | Assignee: | Project Inbox <acceleo-inbox> |
| Status: | CLOSED DUPLICATE | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | laurent.goubet, stephane.begaudeau |
| Version: | 3.1.1 | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Windows Vista | ||
| Whiteboard: | |||
|
Description
Ed Willink
Our custom resource set (AcceleoResourceSet) is just a convenience used to set a proxy resource factory registry on top of the regular EMF resource factory registry to handle the two available content type for an Acceleo module.
>>>If the binary/XMI treatment of a resource is resolved after examining its
>>>content rather than by restrictive program context expectations, an arbitrary
>>>mix of binary/XMI formats should cause no problems.
Each time an ".emtl" file is loaded in this resource set, we are looking at its content with a content describer thanks to our resource factory rsgistry. We do not care about the properties registered in the project while loading ".emtl" files since the loading can occur with an exported Acceleo project without its preferences for example out of Eclipse.
Do you have the full stack trace of your problem?
(In reply to comment #1) > >>>If the binary/XMI treatment of a resource is resolved after examining its > >>>content rather than by restrictive program context expectations, an arbitrary > >>>mix of binary/XMI formats should cause no problems. > Each time an ".emtl" file is loaded in this resource set, we are looking at its > content with a content describer thanks to our resource factory rsgistry. We do > not care about the properties registered in the project while loading ".emtl" > files since the loading can occur with an exported Acceleo project without its > preferences for example out of Eclipse. I don't follow. If you don't need the ResourceSet, because it all works from the content/extension registration why provide one? UML doesn't provide one even though it has many complex *.uml/*.cmof ... pathmaps and urimaps to get right. > Do you have the full stack trace of your problem? org.eclipse.acceleo.engine.AcceleoEvaluationException: Error while resolving module dependencies. at org.eclipse.acceleo.engine.internal.environment.AcceleoEvaluationEnvironment.getAllCandidateNamesakes(AcceleoEvaluationEnvironment.java:541) at org.eclipse.acceleo.engine.internal.environment.AcceleoEvaluationEnvironment.getAllCandidates(AcceleoEvaluationEnvironment.java:309) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.prepareInvocation(AcceleoEvaluationVisitor.java:1548) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.visitAcceleoTemplateInvocation(AcceleoEvaluationVisitor.java:910) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.switchExpression(AcceleoEvaluationVisitor.java:1715) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.visitExpression(AcceleoEvaluationVisitor.java:1009) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.visitAcceleoTemplate(AcceleoEvaluationVisitor.java:877) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.switchExpression(AcceleoEvaluationVisitor.java:1679) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.visitExpression(AcceleoEvaluationVisitor.java:1009) at org.eclipse.ocl.internal.evaluation.QueryImpl.evaluate(QueryImpl.java:152) at org.eclipse.ocl.ecore.QueryImpl.evaluate(QueryImpl.java:62) at org.eclipse.acceleo.engine.generation.AcceleoEngine.doEvaluate(AcceleoEngine.java:360) at org.eclipse.acceleo.engine.generation.AcceleoEngine.evaluate(AcceleoEngine.java:141) at org.eclipse.acceleo.engine.service.AcceleoService.doGenerateTemplate(AcceleoService.java:869) at org.eclipse.acceleo.engine.service.AcceleoService.doGenerate(AcceleoService.java:575) at org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator.generate(AbstractAcceleoGenerator.java:193) at org.eclipse.qvtd.build.utilities.QVTVisitorCodeGenerator.invokeInternal(QVTVisitorCodeGenerator.java:100) at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:126) at org.eclipse.emf.mwe.core.lib.Mwe2Bridge.invoke(Mwe2Bridge.java:34) at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:201) at org.eclipse.emf.mwe2.runtime.workflow.AbstractCompositeWorkflowComponent.invoke(AbstractCompositeWorkflowComponent.java:35) at org.eclipse.emf.mwe2.runtime.workflow.Workflow.run(Workflow.java:19) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:97) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:73) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:64) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:55) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.run(Mwe2Launcher.java:74) at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main(Mwe2Launcher.java:35) [The problem is reproducible by changing the org.eclipse.ocl.examples.build project to binary, then running org.eclipse.qvtd.build's GenerateQVTVisitors.mwe2 launch. - the plugin exports should be on the OCL bug/349962 branch soon, and the QVTd master branch.] This is now a pure duplicate of bug 360926, but with xmi serialization instead of the xmi one : works in eclipse, not in standalone. *** This bug has been marked as a duplicate of bug 360926 *** |