jPDL is a simple but powerful workflow language for the Java platform embeddable in both standard and enterpise applications. The new 3.2.GA we just released, adds enterprise, email support, a new webconsole. Also we significantly improved the POJO versions of the timer and message services.

jPDL is extremely lightweight. Whereas other BPM technologies heavily depend on web services and XML, jPDL is a natural extension to Java. The interface is a Java API, the process variables can be any POJO and including pieces of Java code into the process is peanuts. jPDL can run on plain Java platforms like a web application deployed on Tomcat or even a standalone application.

For enterprise support, there is now an out-of-the box configuration that shows how to configure jBPM in an enterprise deployment. Along with that, there are a set of EJB's that implement the services required by jBPM, leveraging the services on the enterprise Java platform like JMS and the EJB timer service. All the dependencies are on standard JEE technologies so it is easy to run jPDL on any application server.

For email support, you can now have an email node like this:

<mail-node name="send email" to="#{president}" subject="readmylips" text="nomoretaxes">

  <transition to="the next node" />

</mail-node>

But there is more. When writing a task node like the next, you can just add notification and reminder emails just with a single attribute:

<task-node name="wash"> 

  <task name="laundry" swimlane="grandma" notify="yes" >

    <reminder duedate="2 business days" repeat="2 business hours"/>

  </task>

  <transition to='b' />

</task-node>

The console went through a major update and is now based on JSF and Facelets. Especially facelets turned out to be a very good match with task forms. Task forms are now generated at design time with the graphical designer so that developers can customize the layout if they want. The forms are facelets documents (plain XHTML) that are included in the process archive.

The POJO implementations of message service and scheduler service were rewritten to provide better and more robust support for concurrent access. Basically, you can now run the complete POJO version of jPDL in a tomcat cluster if you want; multiple threads are allowed to execute the jobs at the same time.

Go check it out: