1 Reply Latest reply on Mar 8, 2012 2:13 PM by tim.kutz

    Eclipse Editor and defining Service Tasks

    tim.kutz

      I am having difficulty with defining Service Tasks for the BPMN editor for Eclipse.  I believe there is some form of conflict between the BPMN editor plugin, and something else in my Eclipse.  We use a standard bundle of plugins for the development team, to ensure we are all using common versions of necessary plugins such as m2eclipse, and subclipse.

       

      I have downloaded the 5.2 installer, and run the ant task "install.droolsjbpm-eclipse.into.eclipse" task, and the editor appears to be installed, with the ability to create a new bpmn process appearing as expected from the documentation.  However, when I attempt to define a Service Task, following the directions in Chapter 13 of the User Guide, the editor gives me an error when starting up, which says: Could not parse work definitions test.wid: java.util.HashMap cannot be cast to java.util.List

       

      There is a stack trace in my eclipse log file, as well:

       

      !ENTRY org.drools.eclipse 4 120 2012-02-08 12:39:17.635

      !MESSAGE Internal error in Drools Plugin:

      !STACK 0

      java.lang.RuntimeException: Could not parse work definitions test.wid: java.util.HashMap cannot be cast to java.util.List

                at org.drools.RuleBaseConfiguration.loadWorkItems(RuleBaseConfiguration.java:806)

                at org.drools.RuleBaseConfiguration.initWorkDefinitions(RuleBaseConfiguration.java:790)

                at org.drools.RuleBaseConfiguration.getWorkDefinitions(RuleBaseConfiguration.java:765)

                at org.drools.eclipse.WorkItemDefinitions.getWorkDefinitions(WorkItemDefinitions.java:67)

                at org.drools.eclipse.WorkItemDefinitions.getWorkDefinitions(WorkItemDefinitions.java:50)

                at org.drools.eclipse.flow.bpmn2.editor.BPMNModelEditor.refreshPalette(BPMNModelEditor.java:123)

                at org.drools.eclipse.flow.bpmn2.editor.BPMNModelEditor.setInput(BPMNModelEditor.java:108)

                at org.eclipse.gef.ui.parts.GraphicalEditor.init(GraphicalEditor.java:346)

                at org.eclipse.ui.internal.EditorManager.createSite(EditorManager.java:798)

                at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:647)

                at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:465)

                at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)

                at org.eclipse.ui.internal.EditorAreaHelper.setVisibleEditor(EditorAreaHelper.java:271)

                at org.eclipse.ui.internal.EditorManager.setVisibleEditor(EditorManager.java:1429)

                at org.eclipse.ui.internal.EditorManager$5.runWithException(EditorManager.java:942)

                at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:31)

                at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)

                at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)

                at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041)

                at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)

                at org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:803)

                at org.eclipse.ui.internal.Workbench$31.runWithException(Workbench.java:1567)

                at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:31)

                at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)

                at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)

                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.runUI(Workbench.java:2548)

                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:620)

                at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)

                at org.eclipse.equinox.launcher.Main.run(Main.java:1408)

                at org.eclipse.equinox.launcher.Main.main(Main.java:1384)

       

      I have also used the installer to download and install a full clean eclipse package using the install.demo.eclipse target, and the definition works as expected, there.  This confirms that the .wid file itself is valid.  However, that install is missing all of the other plugins needed for development in our standard development.

       

      I am using Eclipse Helios, with m2eclipse 0.12, subclipse 1.6.17.  Any assistance in making this work in our standard environment would be greatly appreciated.