7 Replies Latest reply on Aug 24, 2009 10:02 AM by kukeltje

    What is the status of PVM in JBPM?

    dinosaurus

      I'd like to ask about the current status of the PVM project. Currently it seems like there is no separate PVM project and all PVM sources reside under JBPM trunk. Could you please provide more information on how the PVM is positioned now? Is it possible to use PVM separately from JBPM?

      Actually I've succeeded in creating PVM based process using the API in JBPM 4.0 (see below). But I'm concerned about the classes I had to use. Some of them are in the "internal" package of org.jbpm.pvm and I'd like to know if I can rely on them in future.

      ClientProcessDefinition processDefinition =
       ProcessDefinitionBuilder.startProcess("process1").
       startActivity("start", new Behaviour()).initial().transition("review", "to_review").endActivity().
       startActivity("review", new Behaviour()).transition("end", "to_end").endActivity().
       startActivity("end", new Behaviour()).endProcess();
      
       ClientProcessInstance procInst = processDefinition.startProcessInstance();
       procInst.signal();
      


        • 1. Re: What is the status of PVM in JBPM?
          kukeltje

          The position of the PVM has not changed, it just does not have a separate project anymore.

          jBPM is the project. It contains several 'modules' jPDL and BPMN2 (under development) are process 'languages' based on the PVM which is another one of these 'modules'. The PVM can be used completely independent of jPDL, BPMN2 etc

          Btw, all pvm classes are 'internal'. The reason for this is that they should not be used by people using jPDL or BPMN2, but for people developing their own languages you do not have much choice ;-). Sure some things might change in the future, but not drastically.

          • 2. Re: What is the status of PVM in JBPM?
            dinosaurus

            kukeltje, thanks for your response it clarified a lot for me.

            May be you could also comment on persistence a bit:
            The Alpha version of PVM (http://jboss.org/jbossjbpm/pvm_downloads/) contained some persistence facilities allowing to save process definitions into database tables. In the JBPM 4.0 such facility was removed since process definition is stored as JPDL resource or BLOB now. In our application we still would like to have process structure available through database tables like it was (JBPM_NODE, JBPM_PROCESS, JBPM_TRANSITION etc).

            What would you recommended to do in such situation? Are there any plans to support database-based process definition persistence in JBPM/PVM?

            Thanks in advance

            • 3. Re: What is the status of PVM in JBPM?
              kukeltje

              Dino,

              You are thinking in solutions. I'd first like to know what your 'problem' is. If you want an object model of the processdefinition, you can read the xml file from the repository and e.g. use jaxb to make one.

              • 4. Re: What is the status of PVM in JBPM?
                dinosaurus

                 

                "kukeltje" wrote:

                You are thinking in solutions. I'd first like to know what your 'problem' is. If you want an object model of the processdefinition, you can read the xml file from the repository and e.g. use jaxb to make one.


                - We use a UI framework which can easily work with data residing in DB tables. So, having nodes and transitions available in DB tables would make our development simpler. (Sometimes we need to show list of nodes/transitions to the user and there are UI controls for that).

                • 5. Re: What is the status of PVM in JBPM?
                  kukeltje

                  a ui framework for? Designing processes? Then I think you are out of luck. It would be very complex to make db tables like in 3. The current (4) situation is much simpler for most cases (but yours).

                  Yet, I'd almost like to ask the same question again.... what is it that you want to achieve? What kind of list of nodes/transitions do you want to show? While executing processes? While designing them?

                  • 6. Re: What is the status of PVM in JBPM?
                    dinosaurus

                     

                    "kukeltje" wrote:
                    a ui framework for? Designing processes? Then I think you are out of luck. It would be very complex to make db tables like in 3. The current (4) situation is much simpler for most cases (but yours).

                    Yet, I'd almost like to ask the same question again.... what is it that you want to achieve? What kind of list of nodes/transitions do you want to show? While executing processes? While designing them?


                    kukeltje, I'm not sure if I can explain something more. Just in my case I have a framework which better works on top of database than on top of Java API. Sometimes I need to use some non-java applications for reading data and having process structure presented in DB might be helpful. So that's why I asked such a question.

                    Thanks for your comments, they were quite helpful for me in understanding of the main JBPM's vision.

                    • 7. Re: What is the status of PVM in JBPM?
                      kukeltje

                      Then I think you are unfortunately out of luck.... at least for simple solutions.