Hi Kris,
We have no dependency on jPDL - we have a standalone Groovy DSL for
defining the processes. It gets parsed into a ProcessDefinitionImpl and
ActivityImpl model that references a small set of ActivityBehaviours. We
provide a Grails-style environment for defining node behaviour that plug
into these ActivityBehaviours. The emphasis is on providing a somewhat
simplified process definition language that consists largely of
assembling an extensible set of pre-programmed node behaviours.
We probably could also have layered this on top of jPDL, but it seemed
like using the PVM directly was a cleaner approach.
It's a bit of an aside, but one other thing that we've done is layer
multi-tenancy support on top of jBPM - that is, the ability to support
multiple isolated domains/organizations in the same jBPM instance (and
database). We are likely to have too many customers to make it practical
to isolate each one in its own database schema. It would be great to see
this in any new version of jBPM. Related to this, we are also intending
to take a look at adding some more sophisticated process deployment
functionality - for example, to allow different organizations to share
process definitions.
I'd be happy to discuss any of this in more detail with you if it's
interesting/useful, although I may have to get a nod from management and
take this off-list.
Thanks, Alex.
-----Original Message-----
From: Kris Verlaenen [mailto:kverlaen@redhat.com]
Sent: 27 April 2010 00:30
To: McManus,Alexander
Cc: jbpm-dev(a)lists.jboss.org
Subject: Re: [jbpm-dev] jBPM5 Request for Comments
Alex,
When you are talking about a Groovy-based domain-specific language,
could you provide some detail on what you are actually trying to achieve
by using the PVM directly (for example, are you extending jPDL or
providing your own language altogether)? It is probably true that more
emphasis has been put on providing a clean client API, and there's still
some risk associated with using the PVM directly. We hope to tackle
this as well as part of the modularization of the project.
Kris