[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.modeling.gmt.amw] WeavingModelManager and EditingDomain dependency issue

Hi,
I'm using the AMW codebase to build a weaver that is independent of the GUI but still runs in Eclipse as a plugin. I've succeeded in getting the code to work with just one issue. I'm forced to create an EditingDomain to enable the WeavingModelManager (WMM) to load properly. The WMM fails with an exception as follows if I do not setup the EditingDomain.


at org.eclipse.weaver.core.WeaverModelManager.getWeavingModel(WeaverModelManager.java:518)
at atlhook.handlers.SampleHandler.execute(SampleHandler.java:104)
at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:240)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:475)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:429)
at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:165)
at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:247)
at org.eclipse.ui.menus.CommandContributionItem.handleWidgetSelection(CommandContributionItem.java:570)
at org.eclipse.ui.menus.CommandContributionItem.access$8(CommandContributionItem.java:556)
at org.eclipse.ui.menus.CommandContributionItem$3.handleEvent(CommandContributionItem.java:546)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1101)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3319)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2971)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
at org.eclipse.equinox.launcher.Main.main(Main.java:1148)


I use the following code to create the EditingDomain

List factories = new ArrayList(); ComposedAdapterFactory adapterFactory = new ComposedAdapterFactory(factories);
GlobalWeaverEditor gWE = new GlobalWeaverEditor();
AdapterFactoryEditingDomain editingDomain = gWE.createEditingDomain(adapterFactory);
Resource res = wMM.getWeavingMetamodel(); WeaverResourceUtil.initResource(res); Resource rs = wMM.getWeavingModel(editingDomain);


I don't use the last rs but am forced to call wMM.getWeavingModel(editingDomain) to avoid the excpetion above.

Have a I missed a step in creating the WeavingModelManager properly or is there a dependency on the EditingDomain?
Regards,
Ronan