Eric D. Schabell: September 2009

Wednesday, September 30, 2009

SOA Symposium Rotterdam 22-23 October

I will be at the SOA Symposium in Rotterdam, 22-23 October, check it out in the linked banners here on my site.

Going to be some good speakers, like Mark Little, CTO JBoss.

It will be jointly hosted with the International Cloud Symposium.

See you there?

Friday, September 25, 2009

jBPM paper nominated for award

This summer I had a chapter published in the 2009 BPM & Workflow Handbook.

Not only has this book reached the White House, become a point of discussion with President Obama, but it has now been nominated for the Global Awards for Excellence in BPM & Workflow 2009.

Fingers crossed!

Wednesday, September 23, 2009

JFall 2009 : jBPM in action - past, present and future

Having presented last year, I could not pass when the call for papers was made and I have submitted the following paper to JFall 2009:

Abstract
This session will take the visitor through the current status of jBPM in the field. It will make use of a real world use case to demonstrate the usage as seen over numerous jBPM projects. We will walk you through some of the issues with jBPM v3 that have led to some very interesting applications of the jBPM and finish this section up with a look at how best intentions have led to some possible best practices. We move on then to the future of jBPM and dig into the newest member of the jBPM family, v4. A serious development effort went into simplifying the API and we will provide an overview of these changes. The console was completely overhauled, a new process designer was created for inclusion into your eclipse IDE and last but not least we have a web based BPMN editor. A look at the development team and future project roadmap will be presented. Finally we wrap this session up with a look at migrations from the various versions of jBPM that we have been using in the near and distant past. Several scenarios are examined with some hints and tips provided to help you with your own migration planning.

Does this sound like something you would like to hear?

Wednesday, September 2, 2009

jBPM v4.1 on JBoss 5.0.0.GA - a look at the Signavio web process designer

Today at the opening of JBoss World 2009 the hard working jBPM team announced a new release of jBPM v4.1. I have previously taken a look at pre-released versions of the 4.x, but wanted to dive in again as they have added a web jPDL editor in conjunction with Signavio.

First again, examine the ant build after unzipping the downloaded tarball shows many new features are now available to setup this new jBPM. You can find the complete list of new features and fixes in the jBPM Jira, but note the Tomcat integration.

# Lets look at the build.xml options.
#
$ ant -p
Buildfile: build.xml
     [echo] database......... hsqldb
     [echo] tx............... standalone
     [echo] mail.smtp.host... localhost
     [echo] current dir = /home/mine/java/jbpm-4.1

Main targets:

 clean.cfg.dir                 Deletes the ${cfg.dest.dir}
 create.cfg                    Creates a configuration in ${cfg.dest.dir}
 create.jbpm.schema            creates the jbpm tables in the database
 create.user.webapp            Generates a configuration in dir generated/cfg
 delete.jboss                  Deletes jboss installation
 delete.tomcat                 Deletes tomcat installation
 demo.setup.jboss              installs jboss, installs jbpm into jboss, starts
                               jboss, creates the jBPM DB schema, deploys examples,
                               loads example identities, installs and starts 
                               eclipse
 demo.setup.tomcat             installs tomcat, installs jbpm into tomcat, starts 
                               tomcat, creates the jBPM DB schema, deploys 
                               examples, loads example identities, installs and 
                               starts eclipse
 demo.teardown.jboss           drops the jbpm db schema and stops jboss
 demo.teardown.tomcat          stops tomcat and then the hsqldb server if needed
 drop.jbpm.schema              drops the jbpm tables from the database
 get.eclipse                   downloads eclipse to ${eclipse.distro.dir}
 get.jboss                     Downloads jboss into ${jboss.distro.dir}
 get.tomcat                    Downloads tomcat into ${tomcat.distro.dir} if it 
                               is not available
 hsqldb.databasemanager        start the hsqldb database manager
 install.eclipse               unzips eclipse, downloads eclipse if it is not 
                               available in ${eclipse.distro.dir}
 install.examples.into.tomcat  deploys all the example processes
 install.jboss                 Downloads jboss to ${jboss.distro.dir} if its 
                               not available and then unzips jboss
 install.jbpm.into.jboss       Installs jBPM into JBoss
 install.jbpm.into.tomcat      Installs jBPM into tomcat
 install.tomcat                Downloads tomcat to ${tomcat.distro.dir} if its 
                               not available and then unzips tomcat
 load.example.identities       loads the example users and groups into the database
 reinstall.jboss               Deletes the previous jboss installation and re-installs
                               jboss
 reinstall.jboss.and.jbpm      Deletes the previous jboss installation and re-installs
                               jboss and installs jbpm in it
 reinstall.tomcat              Deletes the previous tomcat installation and re-installs
                               tomcat
 reinstall.tomcat.and.jbpm     Deletes the previous tomcat installation and re-installs 
                               tomcat and installs jbpm in it
 start.eclipse                 starts eclipse
 start.jboss                   starts jboss and waits till jboss is booted, then lets 
                               jboss run in the background
 start.tomcat                  Starts Tomcat and waits till it is booted, then lets 
                               Tomcat run in the background
 stop.jboss                    signals jboss to stop, but doesn't wait till its finished
 stop.tomcat                   Signals Tomcat to stop, but doesn't wait till its finished

The install is pretty straight forward, just need time to allow JBoss v5.0.0.GA and eclipse to download. Other than that, it was a breeze.

# Get some coffee or beer while waiting for this to finish!
#
$ ant demo.setup.jboss

Once this all completes you have an eclipse started and jboss server running in the background. Use the provided user documentation to complete the installation of eclipse (add GPDL plugins and jBPM runtimes). Then you import the examples and start touring!


I was interested in the new web designer so moved over to the web console.
Following the user documentation I log in and it is still looking just as good as the pre-releases, but now with some more features (see Jira).

Now we want to see what this new web editor from Signavio is all about.

# Need to point to the signavio-repo provided in the jBPM installation.
#
$ ant -Dsignavio.repo.path=/home/eschabel/java/jbpm-4.1/signavio-repo 

install.signavio.into.jboss
Buildfile: build.xml
     [echo] database......... hsqldb
     [echo] tx............... standalone
     [echo] mail.smtp.host... localhost
     [echo] current dir = /home/eschabel/java/jbpm-4.1

internal.set.signavio.repo.dir:
    [mkdir] Created dir: /home/eschabel/java/jbpm-4.1/signavio-repo
    [mkdir] Created dir: /home/eschabel/java/jbpm-4.1/install/generated/signavio-unzip-tmp
    [unzip] Expanding: /home/eschabel/java/jbpm-4.1/install/src/signavio/jbpmeditor.war 
            into /home/eschabel/java/jbpm-4.1/install/generated/signavio-unzip-tmp
      [zip] Building zip: /home/eschabel/java/jbpm-4.1/install/generated/
                          signavio-unzip-tmp/jbpmeditor.war
     [copy] Copying 1 file to /home/eschabel/java/jbpm-4.1/install/src/signavio
   [delete] Deleting directory /home/eschabel/java/jbpm-4.1/install/generated/
                               signavio-unzip-tmp

install.signavio.into.jboss:
    [unzip] Expanding: /home/eschabel/java/jbpm-4.1/install/src/signavio/jbpmeditor.war 
            into /home/eschabel/java/jbpm-4.1/jboss-5.0.0.GA/server/default/
                 deploy/jbpmeditor.war

BUILD SUCCESSFUL
Total time: 17 seconds

# And now we can load up the page in our browser.
#
http://localhost:8080/jbpmeditor/p/explorer

I opened a new jPDL project, drew a few things to make a simple empty process, and saved this to a file. Very nice stuff and BPMN 1.2 (with 2.0 on the horizon) too!

One small note, you will need to run this all with Java 1.6. I started with a Java 1.5 environment and that gave all kinds of problems with the web editor which was built with Java 1.6.