OpenWFE / News: Recent posts

OpenWFE 1.7.2 released

OpenWFE 1.7.2

- is built with Maven 2
- is available as a Maven dependency
- contains lots of bugfixes
- has undergone thorough optimization

This release is a kind of 'stabilization' before further advancements, among them : an Atom 1.0 event dispatch mechanism and a full-blown port of OpenWFE to the ruby platform.

The 'mavenization' makes OpenWFE even more open and available.

Posted by John Mettraux 2006-11-01

Persisting Beans into the java content repository JSR170

While working on the content repository, we felt it was easy to store data, but sometimes awkward to organize it in a way that was easy and friendly to work with java objects.

So we've developed something called a bean coder for our application. We've made it open source in case other people would want to use it. With it, you can easily persist some java beans to the repository, and retrieve them at any time.... read more

Posted by Nicolas Modrzyk 2006-10-10

OpenWFE 1.7.2pre13 released

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. ... read more

Posted by John Mettraux 2006-10-02

OpenWFE 1.7.1 released

This is a new release of OpenWFE, an open source java workflow engine / environment. It is a complete Business Process Management suite, with 4 components : an engine, a worklist, a webclient and an 'apre' (Automatic Participant Runtime Environment).

OpenWFE 1.7.1 brings two new features : decision tables and generic (regex) users. Decision tables are excel tables used to modify workitem fields. Generic users is a new technique for managing users and their task lists.... read more

Posted by John Mettraux 2006-07-17

OpenWFE 1.7.0 released

OpenWFE 1.7.0 got released. OpenWFE is an open source java workflow engine / environment. It is a complete Business Process Management suite, with 4 components : an engine, a worklist, a webclient and an 'apre' (Automatic Participant Runtime Environment). This release is the product of a long and detailed effort on streamlining the engine's operations.

As always it is the result of lots of feedback and testing. There are no notable changes for the process definition language, it is stable. Almost everything occured 'under the surface'.... read more

Posted by John Mettraux 2006-05-16

OpenWFE 1.6.2 released

OpenWFE 1.6.2 got released.

'cursor' got removed from the library and implemented in Java directly. 'loop' has been made an extension of 'cursor', they're documented at

The 'set' expression now supports a hierarchical notation for directly setting the value of a subfield, see read more

Posted by John Mettraux 2006-02-27

openwfe-ruby initial release

Openwfe-ruby is a set of ruby classes for interacting with an OpenWFE worklist over HTTP (REST).

It allows to launch flows, browse worklists, view and modify workitems. Your Ruby application can now interact with the OpenWFE open source workflow environment.

It's the Ruby equivalent of openwfe-dotnet, openwfe-perl and openwfe-python.

Future releases will include access to OpenWFE engine's control interface, a Ruby APRE (automatic participant runtime environment) server and classes for dispatching / listening to incoming workitems directly.... read more

Posted by John Mettraux 2006-01-16

OpenWFE 1.6.1 released

OpenWFE 1.6.1 is nicknamed the 'POOL release'.

OpenWFE process definition language is now called POOL (Process Oriented OpenWFE Lisp/Language). A bunch of new expressions (xeme expressions) justify this name. Pool brings expressions like 'car', 'cdr', 'nth'... They are useful for writing self defining process definitions and for manipulating XML data.
POOL is totally 'programmable'.

Two important services got added to the engine itself : a libraryService and a cronService. The first is useful for storing definitions (expressions) available for any workflow instances. The second adds a scheduling service to OpenWFE engines.... read more

Posted by John Mettraux 2005-12-05

OpenWFE 1.6.0

There are two big changes in OpenWFE 1.6.0 : a scheduler got added and variables are now stored in special 'environment' expressions.

The scheduler replaces the former mechanism of pool iteration, it was not very precise and it was slowing down the engine when running. The addition of the scheduler allowed the implementation of the 'cron' expression for scheduling jobs. The 'when' expression and the 'sleep' expression are now using the scheduler.... read more

Posted by John Mettraux 2005-09-22

OpenWFE 1.5.5 released

OpenWFE release 1.5.5 introduces a do/undo/redo syntax in OpenWFE process definition language. Extensive testing by the user community lead to many bug fixes.
Data insertion and manipulation semantics got added to the definition language as well.
A Webflow framework has been developed on top of the embedded engine.

The next release will focus on extending the data manipulation facilities and of course on the alliance with Magnolia ( read more

Posted by John Mettraux 2005-08-25

Magnolia and OpenWFE announce strategic alliance

Basel/Lausanne (Switzerland), August 11th, 2005

Magnolia Organization and the OpenWFE Group today announce a strategic alliance. The goal of the alliance is to bring Magnolia's renown ease-of-use to the OpenWFE Workflow Environment, supply Magnolia with outstanding workflow capabilities, and provide professional support for the OpenWFE Workflow Environment.

Magnolia Content Management is the leading open source content management system built on the revolutionary java content repository standard (JSR-170). ... read more

Posted by John Mettraux 2005-08-11

OpenWFE 1.5.4 released

OpenWFE is an open source java workflow engine. It is a complete Business Process Management suite, with 4 components : an engine, a worklist, a webclient and a reactor (host for automatic agents). OpenWFE 1.5.4 brings many improvements : a new and enhanced library for storing flows and workitems in a database, new boolean functions, an improved embeddable set of POJOs (engine + worklist), a system for submitting forms per email, a way of storing java beans into workitems, a simplified 'if' syntax and lots of bug fixes. All these features make OpenWFE a very rich and flexible open source workflow/BPM system, with a no-nonsense attitude. The next release will add an undo/transaction system to the engine.

Posted by John Mettraux 2005-07-29

OpenWFE 1.5.3 released

OpenWFE is an open source workflow engine. It's written mainly in java and it's released under a BSD licence.

OpenWFE 1.5.3 introduces new features like a workitem modification tracker (sponsored by\), disptaching of workitems over SMTP, and a simple set of classes for embedding an OpenWFE engine.

Important bugs got fixed that affected max size of dispatchable workitems, as well as a timer bug in the expression pool (engine rundata).... read more

Posted by John Mettraux 2005-07-06

OpenWFE 1.5.2 released

OpenWFE 1.5.2 release marks the end of the engine core redux. The last step was the adaptation of the 'control' system to the new engine core (the control interface allows [un]freezing and cancelling expressions and whole flows).

A new attribute 'else-ref' got added to the participant expression, allowing for failover participants, if workitem dispatching to the regular participant failed, delivery is attempted to participants listed in the 'else-ref'.... read more

Posted by John Mettraux 2005-05-17

OpenWFE 1.5.1 released

OpenWFE 1.5.1 is the first release of OpenWFE under the vanilla BSD license.

The configurability of any character encoding throughout each components has been enforced.

The variable system has been completely reworked with distribution and clustering in mind.

New functions got added to the process definition language, especially the 'tadd' which allows to added durations and which, combined with the 'when' expression allows for precise temporal based workflows.

Posted by John Mettraux 2005-04-08

OpenWFE 1.5.0 released

OpenWFE 1.5.0 is a major step in this open source workflow engine development : the workflow instantiation mechanism has been completely revised, making the OpenWFE process definition language even more expressive and powerful.
Along with this change, functions in the process definition language have been heavily enhanced.

The worklist now relies on a decoupled store/storage system with get and put strategies for workitems : one can easily supply its own storage implementation and take advantage of existing QueryGetStrategy implementations.... read more

Posted by John Mettraux 2005-03-15

OpenWFE 1.5.0pre7 released

OpenWFE has not yet reached its 1.5.0 'full' release, but this 1.5.0pre7 is an
important step : it fixes many bugs and introduces new concepts that will be
stabilized at 1.5.0.

The separation of stores and storage in the worklist : a set of stores will be
able to share a storage. The stores will focus on locking, correlation and
query strategies while the storage will only take care of physically storing
the workitems. 1.5.0pre7 only features a FileWorkItemStorage implementation
(older store implementations are still available though).... read more

Posted by John Mettraux 2005-02-15

OpenWFE 1.5.0pre0 released

OpenWFE 1.5.0 [pre0] is an important step : the flow parsing, interpreting and launching system has been refined. Performance has increased as complexity decreased. OpenWFE's process definition language is also gaining flexibility with this rewrite.

The 'reactor' has been renamed 'apre' (Automatic Participant Runtime Environment), as this name was already used by another workflow engine.

This is a pre-release because some DroFlo issues are not yet resolved.... read more

Posted by John Mettraux 2005-01-18

OpenWFE 1.4.7 released

OpenWFE 1.4.7 has been released and it includes the implementation of all the workflow patterns described at

The last pattern that had to be implemented was the 'discriminator' pattern and its generalization, the 'N out of M' pattern.
This feature tells that at a merge point (the end of a 'concurrence') only a certain number of incoming branches are taken into account, the other being cancelled or forgotten (their execution continue, but they will never reach the main flow).

Posted by John Mettraux 2004-12-06

OpenWFE 1.4.7pre1 released

OpenWFE means Open source WorkFlow Engine.

release 1.4.7pre1 is a pre-release available at

It fixes a problem preventing users to view their task lists.

Changelog :

- [.zip] bug #1073020 : empty stores directory were pruned, this lead to
"user hasn't any rights on any store" problem. Fixed.
- [engine] bug #1072491 : <concurrence> did apply its children too fast
(apply occured before they were all registered). Fixed.
- [droflo] task #108165 : added a 'load' link after the 'output' link to load
another process definition.
- [applic] bug #1060506 : SqlUtils : NPE when closing a null SQL statement.
- [.bat] patch #1051735 : as suggested by 'nobody', added 'exit' at the
end of bin/owfe.bat
- [webclient] task #107917 : made it possible to tune the 30 workitem headers
that was hardcoded in the webclient (WEB-INF/web.xml).
- [droflo] bug #1067805 : unnecessary NPE in stackForUndo(). Fixed.
- [droflo] bug #1059313 : cannot remove participant. Fixed.

Posted by John Mettraux 2004-11-25

OpenWFE 1.4.6 released

OpenWFE 1.4.6 comprises different efforts.

The first of them focused on the process definition language where the concept of variable substitution was generalized and is now allowing nested variable / field references. The notation features also the concept of 'look for value in field else in variable' and vice versa.

A command-line tool named '' (.bat) has been created for early validation of a process definition, to eliminate errors that were until now only detected at runtime.... read more

Posted by John Mettraux 2004-11-02

OpenWFE 1.4.5 released

OpenWFE 1.4.5 windows start scripts were checked on winXP and win2000. A new is included in the release, explaining the subtlelities of running OpenWFE on the windows platform.
A few bugs were fixed : the focus of this release is really to provide efficient windows start scripts.

Posted by John Mettraux 2004-10-19

OpenWFE 1.4.4 released

OpenWFE is an open source java workflow engine. It is a complete Business Process Management suite, with 4 components : an engine, a worklist, a webclient and a reactor (host for automatic agents). It can also be used behind the scene. OpenWFE 1.4.4 introduces an important new feature in its process definition language : variable substitution. ${myvar}, when used in the attribute value of a tag gets resolved to the content of the myvar variable. Coupled to an iterator or a concurrent-iterator, it can simplify definitions dramatically.... read more

Posted by John Mettraux 2004-10-05

OpenWFE 1.4.3 released

OpenWFE 1.4.3 is a stabilization release, a certain number of bugs have been fixed.

The new things are : a 'case' expression and support for DB2.

The 1.4.x line focuses on improvements in reliability and performance.

Posted by John Mettraux 2004-09-07

OpenWFE 1.4.2 released

OpenWFE 1.4.2 fixes a lot of bugs, as the move to 1.4.0 did not mature entirely with 1.4.1.

Some new features are introduced : a MailNotifiedParticipant which takes advantage of Jakarta Velocity to send notification of workitem to participants, a 'all-in-one' (or almost) packaged release, a DB2DataSource for Xdbc and Swis.

The 'all-in-one' release packs together an engine, a worklist and a reactor. It consumes less ressource and really demonstrates another way of deploying OpenWFE.

Posted by John Mettraux 2004-08-25