about processes and engines

Archive for the ‘jcr’ Category

1.7.2 status (bis)

OpenWFE 1.7.2 will be released soon. I’ve already said it, I’m repeating myself.

There won’t be much changes on the surface, but the engine will be way more performant.

I’m currently working on simplifying the <when> and <participant> expressions, and any expression that requires a timeout.

Work is going on on other aspects of OpenWFE, especially openwfe-ruby and on tightening/extending our JcrBeanCoder.

A few days.

Written by John Mettraux

October 24, 2006 at 8:32 am

Posted in jcr, openwfe, ruby

The JcrBeanCoder on the TSS

Nicolas posted on “The Server Side” about our JcrBeanCoder.

The initial comments are rather positive and the questions asked do make lots of sense.

Nicolas and I are busy replying to those questions and detailing the point of view behind our implementation.

We’ll try to keep our JcrBeanCoder the simplest possible.

Written by John Mettraux

October 10, 2006 at 2:53 pm

Posted in jcr, openwfe

documentation about our JcrBeanCoder

Nicolas and I adapted OpenWFE’s old XmlBeanCoder to JCR repositories (their most known implementation being Jackrabbit).

We’ve just wrote some documentation about that code.

Just a simple way of getting simple java beans in and out of JCRs; it’s useful for workflow workitems but also for anything that can be represented as a bean and has to be stored in a JCR.

The JcrBeanCoder is in use within the Magnolia CMS/DMS (3.0RC3).

Written by John Mettraux

October 6, 2006 at 8:56 am

Posted in java, jcr, magnolia, openwfe

OpenWFE 1.7.2pre13

Just released 1.7.2pre13 thanks to the Maven2 assembly plugin.

It contains many refinements and is very close to the 1.7.2 final.

It even contains our JCR BeanCoder implementation, a library for storing vanilla Java beans into a JCR repository.
Nicolas and I got it working for the Magnolia team and it’s very promising (it just works as expected).

I still have to work on some caching mechanism for the worklist, this mecha got removed nearly one year ago, I have to re-introduce it.

The [new] download page is at

Written by John Mettraux

October 2, 2006 at 5:54 am

Posted in jcr, openwfe

workitems within a JCR

There’s this thread going on the Magnolia dev list.

The question is “how to store workitems within a JCR (Java Content Repository) ?”

The current implementation Magnolia uses serializes the workitem as an XML document which is placed within the JCR as a node (be indulgent with me about the names I use for those JCR concepts, they might not be exact).

I started writing this post, but meanwhile the perspective changed, we will adapt OpenWFE’s bean-to-xml code into some bean-to-jcr code. It will come handy for Magnolia’s workflow module and maybe for other parts of Magnolia.

Stay tuned.

Written by John Mettraux

September 7, 2006 at 8:12 am

Posted in jcr, magnolia, openwfe


I finally squashed this expression pool bug. The code ensuring that old empty pool directories got removed wasn’t wired in the newest contentIterator implementation.

Iterating over the content of the expression pool is necessary for purge purposes or simply when an engine is restarting, to resync processes using scheduling capabilities (cron, when, sleep expressions mainly).

The 1.6.x FileExpressionStore implementation of its contentIterator was building a list of all expressions and then iterating over it. This proved problematic in production systems with lots of expressions. So the 1.7.x implementation flatly iterates, it doesn’t build a whole list.
This implementation shall be used as well for the upcoming final JCR (JSR-170) OpenWFE persistence system.

Unfortunately, the 1.6.x implementation had code for dealing with old empty pool directories. I forgot to wire back in that code in the current 1.7.0pre line and time after time, a running instance of the engine accumulated lots of empty directories (the cron example library was filling the pool with its empty directories…).

OpenWFE 1.7.0pre7 fixes that.

Your feedback is welcome (on the help forum or on the user mailing list of course).

Written by John Mettraux

April 26, 2006 at 9:50 am

Posted in jcr, openwfe, technical

OpenWFE within Magnolia

Magnolia & OpenWFE

Philipp Bracher, one of the core Magnolia developers wrote some great documentation on OpenWFE‘s integration within Magnolia.

It’s worth a look.

Written by John Mettraux

March 7, 2006 at 9:18 am

Posted in bpm, cms, dev, jcr, magnolia, openwfe, oss, workflow


jash is a JCR (JSR-170) shell.

It’s a small sub-project of OpenWFE. It’s in its infancy, but I shall make good use of it as OpenWFE will provide a JCR persistence layer soon.

Just released a promising jash 0.0.3.

Written by John Mettraux

March 3, 2006 at 10:13 am

Posted in jash, jcr, oss