Skip to main content



      Home
Home » Modeling » GMF (Graphical Modeling Framework) » GMF Transformation *.gmfmap to *.gmfgen fails(Exception during final model transformation )
GMF Transformation *.gmfmap to *.gmfgen fails [message #1769880] Fri, 04 August 2017 08:55 Go to next message
Eclipse UserFriend
Hello everyone,

I'm currently trying to generate a *.gmfgen-file that will be the base for some further model-work within Papyrus UML.
I'm working through the whole GMF process and the process fails within the final transformation from *.gmfmap to *.gmfgen with the following exception:

java.lang.NoSuchMethodError: org.eclipse.m2m.internal.qvt.oml.compiler.QVTOCompiler.compile(Lorg/eclipse/m2m/internal/qvt/oml/compiler/UnitProxy;Lorg/eclipse/m2m/internal/qvt/oml/compiler/QvtCompilerOptions;Lorg/eclipse/emf/common/util/Monitor;)Lorg/eclipse/m2m/internal/qvt/oml/compiler/CompiledUnit;
	at org.eclipse.gmf.internal.xpand.util.ResourceManagerImpl.doLoadQvtResource(ResourceManagerImpl.java:80)
	at org.eclipse.gmf.internal.xpand.util.ResourceManagerImpl.loadQvtResourceThroughCache(ResourceManagerImpl.java:64)
	at org.eclipse.gmf.internal.xpand.util.ResourceManagerImpl.loadQvtResource(ResourceManagerImpl.java:47)
	at org.eclipse.gmf.internal.xpand.model.Scope.findExtension(Scope.java:148)
	at org.eclipse.gmf.internal.xpand.model.ExecutionContextImpl.getImportedModules(ExecutionContextImpl.java:293)
	at org.eclipse.gmf.internal.xpand.model.ExecutionContextImpl.getOCLEnvironment(ExecutionContextImpl.java:254)
	at org.eclipse.gmf.internal.xpand.ocl.TypeHelper.getTypeForName(TypeHelper.java:35)
	at org.eclipse.gmf.internal.xpand.model.ExecutionContextImpl.findDefinition(ExecutionContextImpl.java:231)
	at org.eclipse.gmf.internal.xpand.model.ExecutionContextImpl.findDefinition(ExecutionContextImpl.java:167)
	at org.eclipse.gmf.internal.xpand.XpandFacade.evaluate(XpandFacade.java:54)
	at org.eclipse.gmf.graphdef.codegen.FigureGenerator.fqnSwitch(FigureGenerator.java:85)
	at org.eclipse.gmf.internal.bridge.genmodel.InnerClassViewmapProducer.createViewmap(InnerClassViewmapProducer.java:123)
	at org.eclipse.gmf.internal.bridge.genmodel.InnerClassViewmapProducer.create(InnerClassViewmapProducer.java:76)
	at org.eclipse.gmf.internal.bridge.genmodel.DiagramGenModelTransformer.process(DiagramGenModelTransformer.java:413)
	at org.eclipse.gmf.internal.bridge.genmodel.MappingTransformer.transform(MappingTransformer.java:31)
	at org.eclipse.gmf.internal.bridge.transform.TransformToGenModelOperation$2.process(TransformToGenModelOperation.java:446)
	at org.eclipse.gmf.internal.bridge.transform.TransformToGenModelOperation.executeTransformation(TransformToGenModelOperation.java:272)
	at org.eclipse.gmf.internal.bridge.ui.dashboard.actions.TransformMap2GenModelAction.run(TransformMap2GenModelAction.java:65)
	at org.eclipse.gmf.internal.bridge.ui.dashboard.HyperlinkFigure$1.mousePressed(HyperlinkFigure.java:63)
	at org.eclipse.draw2d.Figure.handleMousePressed(Figure.java:938)
	at org.eclipse.draw2d.SWTEventDispatcher.dispatchMousePressed(SWTEventDispatcher.java:242)
	at org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDown(LightweightSystem.java:523)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:193)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4257)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1502)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1525)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1510)
	at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1314)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4081)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3698)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1044)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:680)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:594)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:151)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:653)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:590)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1499)


My Eclipse setup looks as following:

Eclipse Modeling Tools

Version: Oxygen Release (4.7.0)
Build id: 20170620-1800


Installation-Details => See screenshot "Eclipse-Installation-Details" within the attachments.

=> I installed GMF Tooling manually 3.3.1a

Searching the web didn't do the thing. As I can see, the method compile() can't be found (with the given signature). So, it seems like a compatibility problem, right? The calling code of the QVT uses another signature for compile() or so?
Maybe there is a version-conflict or something like that?
I don't know, where or for what to look and search. I didn't install anything of QVT manually, I guess it's a dependency of the GMF stuff and was (hopefully) installed automatically? Or do I need to install something manually?

With the version of GMF Tooling that is installed by the Market-Place-Install, I'll get a different error during the same process:

java.lang.NoClassDefFoundError: org/eclipse/m2m/internal/qvt/oml/runtime/project/BundleUnitResolver
	at org.eclipse.gmf.internal.xpand.util.BundleResourceManager.getQVTUnitResolver(BundleResourceManager.java:118)
	at org.eclipse.gmf.internal.xpand.util.ResourceManagerImpl.getQvtCompiler(ResourceManagerImpl.java:97)
	at org.eclipse.gmf.internal.xpand.util.ResourceManagerImpl.doLoadQvtResource(ResourceManagerImpl.java:75)
	at org.eclipse.gmf.internal.xpand.util.ResourceManagerImpl.loadQvtResourceThroughCache(ResourceManagerImpl.java:63)
	at org.eclipse.gmf.internal.xpand.util.ResourceManagerImpl.loadQvtResource(ResourceManagerImpl.java:46)
	at org.eclipse.gmf.internal.xpand.model.Scope.findExtension(Scope.java:148)
	at org.eclipse.gmf.internal.xpand.model.ExecutionContextImpl.getImportedModules(ExecutionContextImpl.java:293)
	at org.eclipse.gmf.internal.xpand.model.ExecutionContextImpl.getOCLEnvironment(ExecutionContextImpl.java:254)
	at org.eclipse.gmf.internal.xpand.ocl.TypeHelper.getTypeForName(TypeHelper.java:35)
	at org.eclipse.gmf.internal.xpand.model.ExecutionContextImpl.findDefinition(ExecutionContextImpl.java:231)
	at org.eclipse.gmf.internal.xpand.model.ExecutionContextImpl.findDefinition(ExecutionContextImpl.java:167)
	at org.eclipse.gmf.internal.xpand.XpandFacade.evaluate(XpandFacade.java:54)
	at org.eclipse.gmf.graphdef.codegen.FigureGenerator.fqnSwitch(FigureGenerator.java:85)
	at org.eclipse.gmf.internal.bridge.genmodel.InnerClassViewmapProducer.createViewmap(InnerClassViewmapProducer.java:123)
	at org.eclipse.gmf.internal.bridge.genmodel.InnerClassViewmapProducer.create(InnerClassViewmapProducer.java:76)
	at org.eclipse.gmf.internal.bridge.genmodel.DiagramGenModelTransformer.process(DiagramGenModelTransformer.java:413)
	at org.eclipse.gmf.internal.bridge.genmodel.MappingTransformer.transform(MappingTransformer.java:31)
	at org.eclipse.gmf.internal.bridge.transform.TransformToGenModelOperation$2.process(TransformToGenModelOperation.java:435)
	at org.eclipse.gmf.internal.bridge.transform.TransformToGenModelOperation.executeTransformation(TransformToGenModelOperation.java:265)
	at org.eclipse.gmf.internal.bridge.ui.dashboard.actions.TransformMap2GenModelAction.run(TransformMap2GenModelAction.java:65)
	at org.eclipse.gmf.internal.bridge.ui.dashboard.HyperlinkFigure$1.mousePressed(HyperlinkFigure.java:63)
	at org.eclipse.draw2d.Figure.handleMousePressed(Figure.java:938)
	at org.eclipse.draw2d.SWTEventDispatcher.dispatchMousePressed(SWTEventDispatcher.java:242)
	at org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDown(LightweightSystem.java:523)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:193)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5252)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1348)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4522)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4107)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1044)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:680)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:594)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:151)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:653)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:590)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1499)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1472)
Caused by: java.lang.ClassNotFoundException: org.eclipse.m2m.internal.qvt.oml.runtime.project.BundleUnitResolver cannot be found by org.eclipse.gmf.xpand_2.1.0.201210111630
	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:484)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395)
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387)
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 52 more



Maybe someone has a hint, as I'm not getting anywhere with the problem...
Appreciate your help!
Re: GMF Transformation *.gmfmap to *.gmfgen fails [message #1775852 is a reply to message #1769880] Tue, 07 November 2017 04:27 Go to previous messageGo to next message
Eclipse UserFriend
I meet this problem too,
but my version is 3.0.1(maybe).
Re: GMF Transformation *.gmfmap to *.gmfgen fails [message #1775853 is a reply to message #1775852] Tue, 07 November 2017 04:29 Go to previous messageGo to next message
Eclipse UserFriend
Did you solve the problem?
Re: GMF Transformation *.gmfmap to *.gmfgen fails [message #1781773 is a reply to message #1775853] Tue, 13 February 2018 04:32 Go to previous messageGo to next message
Eclipse UserFriend
Any news on this topic? I'm trying to perform the same operation and haveing the same problem. I've tried with GMF-Tooling 3.3.1 and I had a similar problem too
Re: GMF Transformation *.gmfmap to *.gmfgen fails [message #1781874 is a reply to message #1781773] Wed, 14 February 2018 02:30 Go to previous messageGo to next message
Eclipse UserFriend
Sorry, but GMF Tooling is not really maintained anymore. The error is probably due to a mismatch between the versions of different components. In particular in looks like code in GMF Tooling calls internal methods in QVT (org.eclipse.m2m.internal.qvt.oml.compiler.QVTOCompiler) which proabably existed in the QVT version targeted at the time, but has been removed since then. You can try to identify the QVT version expected by GMF Tooling and install precisely that one instead of a more current one.
Re: GMF Transformation *.gmfmap to *.gmfgen fails [message #1782008 is a reply to message #1781773] Thu, 15 February 2018 16:55 Go to previous messageGo to next message
Eclipse UserFriend
In the end, I went with Sirius, as the time was pressing. Sorry, no solution from my side.
Re: GMF Transformation *.gmfmap to *.gmfgen fails [message #1782020 is a reply to message #1782008] Fri, 16 February 2018 00:17 Go to previous messageGo to next message
Eclipse UserFriend
At the End I've solved the problem intalling QVT-Operational v 3.4.0. I don't know if with a greater version it would work but I can confirm that with this version it works correctly.
Re: GMF Transformation *.gmfmap to *.gmfgen fails [message #1798081 is a reply to message #1782020] Mon, 12 November 2018 04:11 Go to previous message
Eclipse UserFriend
Hi

Since GMF Tooling is clearly still in use, I was inspired to try and re-instate the internal APIs and avoid the need for an old QVTo. See [1]

If you download and try

https://hudson.eclipse.org/qvt-oml/job/qvto-branch-tests/70/artifact/releng/org.eclipse.qvto.releng.build-site/target/org.eclipse.qvto-3.9.1.N20181109-1902.zip

you should find two API breakages re-instated. Once we have confirmation that this makes GMF Tooling useful again we can look to include the fixes in the next QVTo release.

Regards

Ed Willink

[1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=540971
Previous Topic:Customizing GMF Diagram + Palette
Next Topic:Showing Only One Link for Bidirectional Connection
Goto Forum:
  


Current Time: Sat Jul 12 08:51:59 EDT 2025

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

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

Back to the top