7 Replies Latest reply on Feb 16, 2007 7:34 PM by Arjan van Bentem

    jBPM GPD: transitions not drawn -- is GPD 3.1.0.alpha2 backw

    Arjan van Bentem Novice

      I was about to submit the following as a bug, but I'm not too sure if I'm using GPD as expected.

      So: is GPD 3.1.0.alpha2 supposed to be backwards compatible with 3.0.13.1? And which versions of Eclipse are supported?

      The websales example as shipped with http://downloads.sourceforge.net/jbpm/jbpm-jpdl-suite-3.2.Beta2.zip (2007-02-06), which includes jBPM Designer Plugin 3.0.13.1, cannot be opened in http://downloads.sourceforge.net/jbpm/jbpm-jpdl-designer-3.1.0.alpha2.zip that was released 4 days earlier (2007-02-02).

      Trying to open the example first shows the error below. When retrying one will eventually see the diagram, but any transitions are not drawn. Manually adding any new component and saving the diagram results in the root element <process-diagram> in gpd.xml being replaced with <root-container>, at which point a lot of information seems to be lost (the new gpd.xml is a lot smaller than the version supplied with the sample code).

      The very same websales example is handled fine with jBPM Designer Plugin 3.0.13.1.

      To test 3.1.0.alpha2 I extracted a fresh copy of jbpm-jpdl-suite-3.2.Beta2.zip, then replaced \designer\eclipse\features and \designer\eclipse\plugins with the contents of 3.1.0.alpha2, and unzipped http://repository.jboss.com/eclipse/sdk/3.2/eclipse-SDK-3.2-win32.zip into \designer\eclipse. The same results, without any errors in the error log though, for Eclipse 3.2.1, M20060921-0945.

      Environment: Eclipse 3.2.0 (M20060629-1905) or 3.2.1 (M20060921-0945), GPD 3.1.0.alpha2, JDK 1.5.0_11, WinXP,

      Error log:

      eclipse.buildId=M20060629-1905
      java.version=1.5.0_11
      java.vendor=Sun Microsystems Inc.
      BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
      Command-line arguments: -os win32 -ws win32 -arch x86 -data ../workspace

      Error
      Thu Feb 15 16:50:29 CET 2007
      Could not create graphical viewer

      org.eclipse.ui.PartInitException: Error reading contents of file : gpd.xml.
      at org.jbpm.gd.jpdl.ui.editor.JpdlContentProvider.addGraphicalInfo(Unknown Source)
      at org.jbpm.gd.jpdl.ui.editor.JpdlGraphicalEditorPage.initInput(Unknown Source)
      at org.jbpm.gd.jpdl.ui.editor.JpdlGraphicalEditorPage.init(Unknown Source)
      at org.eclipse.ui.part.MultiPageEditorPart.addPage(MultiPageEditorPart.java:179)
      at org.jbpm.gd.jpdl.ui.editor.JpdlEditor.addGraphPage(Unknown Source)
      at org.jbpm.gd.jpdl.ui.editor.JpdlEditor.createPages(Unknown Source)
      at org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:276)
      at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:596)
      at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:372)
      at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:566)
      at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:290)
      at org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:140)
      at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:268)
      at org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:65)
      at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:394)
      at org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1144)
      at org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1097)
      at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:1311)
      at org.eclipse.ui.internal.PartStack.add(PartStack.java:455)
      at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:102)
      at org.eclipse.ui.internal.PartStack.add(PartStack.java:441)
      at org.eclipse.ui.internal.EditorStack.add(EditorStack.java:111)
      at org.eclipse.ui.internal.EditorSashContainer.addEditor(EditorSashContainer.java:60)
      at org.eclipse.ui.internal.EditorAreaHelper.addToLayout(EditorAreaHelper.java:217)
      at org.eclipse.ui.internal.EditorAreaHelper.addEditor(EditorAreaHelper.java:207)
      at org.eclipse.ui.internal.EditorManager.createEditorTab(EditorManager.java:819)
      at org.eclipse.ui.internal.EditorManager.openEditorFromDescriptor(EditorManager.java:718)
      at org.eclipse.ui.internal.EditorManager.openEditor(EditorManager.java:679)
      at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2586)
      at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2521)
      at org.eclipse.ui.internal.WorkbenchPage.access$10(WorkbenchPage.java:2513)
      at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.java:2498)
      at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
      at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2493)
      at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2478)
      at org.eclipse.ui.ide.IDE.openEditor(IDE.java:388)
      at org.eclipse.ui.ide.IDE.openEditor(IDE.java:350)
      at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:275)
      at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:139)
      at org.eclipse.jdt.internal.ui.actions.OpenActionUtil.open(OpenActionUtil.java:49)
      at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:190)
      at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:174)
      at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:267)
      at org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:243)
      at org.eclipse.jdt.internal.ui.packageview.PackageExplorerActionGroup.handleOpen(PackageExplorerActionGroup.java:306)
      at org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart$4.open(PackageExplorerPart.java:651)
      at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:817)
      at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
      at org.eclipse.core.runtime.Platform.run(Platform.java:843)
      at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44)
      at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:149)
      at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:815)
      at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1069)
      at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1168)
      at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:249)
      at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:243)
      at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:283)
      at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
      at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928)
      at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3348)
      at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2968)
      at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1914)
      at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1878)
      at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419)
      at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
      at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95)
      at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
      at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
      at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
      at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
      at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
      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.core.launcher.Main.invokeFramework(Main.java:336)
      at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
      at org.eclipse.core.launcher.Main.run(Main.java:977)
      at org.eclipse.core.launcher.Main.main(Main.java:952)


      eclipse.buildId=M20060629-1905
      java.version=1.5.0_11
      java.vendor=Sun Microsystems Inc.
      BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
      Command-line arguments: -os win32 -ws win32 -arch x86 -data ../workspace

      Error
      Thu Feb 15 16:50:29 CET 2007
      Error reading contents of file : gpd.xml.[/url]

        • 1. Re: jBPM GPD: transitions not drawn -- is GPD 3.1.0.alpha2 b
          Koen Aers Master

          No the new GPD will not be backwards compatible with older process definitions. However, we will provide a conversion tool.
          The new GPD is build with Eclipse 3.2.1. You can find the used drivers in the manifest file of the downloaded archive.

          Regards,
          Koen

          • 2. Re: jBPM GPD: transitions not drawn -- is GPD 3.1.0.alpha2 b
            Arjan van Bentem Novice

            Koen, thanks for your prompt reply.

            "koen.aers@jboss.com" wrote:
            No the new GPD will not be backwards compatible with older process definitions. However, we will provide a conversion tool.

            I think I did an extensive search on these details, but could not find it documented anywhere. If I missed something could someone then please indicate where to find such details? Likewise, some new questions pop op that might need to be mentioned in the release notes:

            - Isn't gpd.xml also used by jbpm-console.war to draw a red square around the current step, and if so: won't GPD 3.1.x break this in the current jBPM jPDL 3.2.Beta2?

            - Will the (alpha) conversion tool be available soon?

            "koen.aers@jboss.com" wrote:
            The new GPD is build with Eclipse 3.2.1. You can find the used drivers in the manifest file of the downloaded archive.

            Thanks, that's useful. In fact, that's one of the things that bothers me a bit while investigating problems in my JBoss/jBPM/BPEL setup: it's a bit hard to tell what versions of JARs are used. Like for the BPEL extension the build.properties perfectly describe what versions are used, and sometimes some versions.xml is packaged, but one cannot tell the version by looking at the filename. But well, that's just a minor detail. And maybe I should peak into the manifest more often.

            Arjan.



            • 3. Re: jBPM GPD: transitions not drawn -- is GPD 3.1.0.alpha2 b
              Arjan van Bentem Novice

              An additional issue for which I feel mentioning in the GPD release notes might be very helpful (some posts such as http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4006107#4006107 did not yet make it 100% clear to me, but some hands-on will probably show me today):

              - Is jbpm-console.war expected to keep supporting auto-magically generated forms, or will task forms be mandatory? I know this is not 100% a GPD issue, and of course jbpm-console could be considered to be a starting point for a custom implementation, but I'm confused since GPD gives one the choice to setup variables in the Form Controller screen, and an option Generate Form on Advanced Properties...

              ...and an additional note, for which I guess it's work in progress, but just to be sure:

              - In GPD 3.1.0.alpha2 using New, Project, JBoss jBPM, Process Project, "Generate simple process definition, action handler and JUnit test" still yields an old version of gpd.xml

              Arjan.

              • 4. Re: jBPM GPD: transitions not drawn -- is GPD 3.1.0.alpha2 b
                Ronald van Kuijk Master

                automagically: no, not for now. The moment variable types come in jdpl, it might be created again. That way you have the option to use designtime generated/customized forms or automagically runtime forms

                • 5. Re: jBPM GPD: transitions not drawn -- is GPD 3.1.0.alpha2 b
                  Koen Aers Master

                   

                  "Arjan" wrote:
                  In GPD 3.1.0.alpha2 using New, Project, JBoss jBPM, Process Project, "Generate simple process definition, action handler and JUnit test" still yields an old version of gpd.xml


                  Correct, please bear with us... As you know it is an alpha release ;-)

                  Cheers,
                  Koen

                  • 6. Re: jBPM GPD: transitions not drawn -- is GPD 3.1.0.alpha2 b
                    Koen Aers Master

                     

                    "Arjan" wrote:
                    - Isn't gpd.xml also used by jbpm-console.war to draw a red square around the current step, and if so: won't GPD 3.1.x break this in the current jBPM jPDL 3.2.Beta2?

                    - Will the (alpha) conversion tool be available soon?



                    For your first question, it could indeed be necessary to refactor the servlet that is responsible for drawing the image. I did not yet look at this. The second question: probably not before April. (Unless you help me of course ;-) )

                    Cheers,
                    Koen

                    • 7. Re: jBPM GPD: transitions not drawn -- is GPD 3.1.0.alpha2 b
                      Arjan van Bentem Novice

                       

                      "koen.aers@jboss.com" wrote:
                      The second question: probably not before April. (Unless you help me of course ;-) )

                      I guess I won't be helping with the conversion tool. However, if we seriously start using JBoss jBPM then I might very well get involved -- if only in these forums.

                      Still: it might be worthwhile to mention compatibility and the conversion tool in some release notes?

                      Arjan.