Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » GMF (Graphical Modeling Framework) » [Validation] NoSuchMethodError in exported plugin
[Validation] NoSuchMethodError in exported plugin [message #659446] Mon, 14 March 2011 02:00
Christian  is currently offline Christian
Messages: 14
Registered: February 2011
Junior Member
Hello!

I have built a GMF Editor, enabled validation and added the Epsilon Validation Framework.
So far everything worked fine. When i start my Editor as an Eclipse Application (Project opened in Eclipse, right-click -> Run As Eclipse Application) my written Constraints get checked and displayed as expected.

However, when i package my project as a (feature) plugin and export it it into a fresh Eclipse Installation I get the following exception after running the validation:
java.lang.NoSuchMethodError: geock.diagram.providers.MindmapValidationDecoratorProvider$StatusDecorator.getDecoration()Lorg/eclipse/gmf/runtime/diagram/ui/internal/services/decorator/Decoration;)


The plugins I installed are: GMF Runtime 1.4.2, Epsilon Core 0.9.0, and my projects plugin.
Adding the Epsilon Live Validation plugin, doesn't help.

At least the editor desn't crash anymore after commenting out the getDecoration() call.. but i still get the following exception in the error log:
org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NoSuchMethodError: mindmap.diagram.providers.MindmapValidationDecoratorProvider$StatusDecorator.getDecoration()Lorg/eclipse/gmf/runtime/diagram/ui/internal/services/decorator/Decoration;)
	at org.eclipse.swt.SWT.error(SWT.java:4083)
	at org.eclipse.swt.SWT.error(SWT.java:3998)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:137)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	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.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
Caused by: java.lang.NoSuchMethodError: mindmap.diagram.providers.MindmapValidationDecoratorProvider$StatusDecorator.getDecoration()Lorg/eclipse/gmf/runtime/diagram/ui/internal/services/decorator/Decoration;
	at mindmap.diagram.providers.MindmapValidationDecoratorProvider$StatusDecorator.refresh(MindmapValidationDecoratorProvider.java:278)
	at mindmap.diagram.providers.MindmapValidationDecoratorProvider$1$1.run(MindmapValidationDecoratorProvider.java:142)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.runExclusive(TransactionalEditingDomainImpl.java:328)
	at mindmap.diagram.providers.MindmapValidationDecoratorProvider$1.run(MindmapValidationDecoratorProvider.java:134)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)


MindmapValidationDecoratorProvider.StatusDecorator
/**
 * @generated
 */
public void refresh() {
	...
	// add decoration
	if (editPart instanceof org.eclipse.gef.GraphicalEditPart) {
		if (view instanceof Edge) {
			setDecoration(getDecoratorTarget().addConnectionDecoration(getImage(severity), 50, true));
		} else {
			int margin = -1;
			if (editPart instanceof org.eclipse.gef.GraphicalEditPart) {
				margin = MapModeUtil.getMapMode(((org.eclipse.gef.GraphicalEditPart) editPart).getFigure()).DPtoLP(margin);
			}
			setDecoration(getDecoratorTarget().addShapeDecoration(getImage(severity),IDecoratorTarget.Direction.NORTH_EAST, margin, true));
		}

		if (getDecoration() != null) {
			getDecoration().setToolTip(toolTip);	
		}
	}
}


Help would be appreciated!

Cheers,
Christian
Previous Topic:Adding children, to a nested rectangle.
Next Topic:multiple packages and mapping model
Goto Forum:
  


Current Time: Tue Sep 16 05:12:11 GMT 2014

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

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