Alejandro Guizar [
http://community.jboss.org/people/alex.guizar%40jboss.com] replied to
the discussion
"Case for using jBPM's PVM "naked"?"
To view the discussion, visit:
http://community.jboss.org/message/559279#559279
--------------------------------------------------------------
at work, our development team has created a very simple home-brew
statemachine implementation to do a mixture of workflow management and simple business
process management, all in plain java. This was a few years ago and met the requirements
back then.
As the business process got more complicated, we are now looking into existing solutions
supporting more concepts than our simplistic state machine does.
I skimmed the PVM documentation and found java classes resembling activities, nodes,
transitions and the like. This looks promising, yet I'm not sure about the intended
usage of PVM.
Is PVM intended to be used by developers to create process descriptions by coding in
java, without using any of the XMLish or graphical "concrete syntaxes" of
process modelling? If "intended to be used" is too much, would this at least be
a sane, supported use case of PVM? Or is PVM altogether "under the hood" of jBPM
and should not be used directly? How stable is the PVM API expected to be?
The PVM
is meant to be the foundation on top of which multiple process languages can be
implemented. Read the
http://onjava.com/pub/a/onjava/2007/05/07/the-process-virtual-machine.html Process Virtual
Machine article for the full discussion. The target languages actually include Java
although this is not documented as extensively. The class
org.jbpm.pvm.internal.builder.ProcessDefinitionBuilder from jbpm-pvm.jar provides a fluent
interface for creating process definitions straight in Java without parsing any process
document. The interfaces in jbpm-api.jar in fact constitute the API for the PVM, aiming to
be as language-neutral as possible. Although not part of the API the process definition
builder is relatively stable, it has not been touched in a while.
In sum, yes, direct acess to the PVM is a valid, though advanced, use case.
--------------------------------------------------------------
Reply to this message by going to Community
[
http://community.jboss.org/message/559279#559279]
Start a new discussion in jBPM at Community
[
http://community.jboss.org/choose-container!input.jspa?contentType=1&...]