Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: for the plan.

Jump to: navigation, search

JWT NewNoteworthy 0 6

This document describes the New&Noteworthy of version 0.6 of JWT. Version 0.6 is shipped together with Galileo. As this is the first version of JWT that is shipped with a yearly release, we start explaining the ideas, motivation and goal for the project JWT, before we go into some more detail about the new features of version 0.6.

Java Workflow Tooling (JWT)

JWT is an Eclipse Technology sub-project founded in 2007. It's committers, contributors and mentors mostly come from France, Germany and the US with persons from OpenWide SA (France) and University of Augsburg (Germany) leading the project.

Goals of JWT

  • Support for workflow and business process modeling, deployment, execution and monitoring inside Eclipse
  • Provide a complete, flexible, interoperable and usable BPM toolkit
  • Set of generic and extensible plugins and APIs
  • Extensions allowing support for specific business representations, process language formats, process engines, service platforms, etc.
  • Targeting and supporting SOA in close collaboration with the Eclipse STP project

Components of JWT

JWT Components.gif

  • Workflow Editor (WE): Create a graphical model of the process/workflow for discussion purposes, but also to enrich it with technical details to execute it afterwards
  • Transformations: Import existing models into JWT or generate code from JWT models
  • Desktop: Simulate and preview a modeled process
  • Workflow Administration and Monitoring (WAM): Deploy your workflow, specify users and administrators and monitor your workflow
  • Runtime: Provide support for runtime engines (process and workflow engines, etc.)

Features in version 0.6

Workflow Editor (WE)


Jwt we tut viewstechnical.gif

Existing extension points

  • Extension point to customize cell editors: can be used to assist user in entering right values and to give him some feedback (unitary validation)
  • Extension point to listen to value changed on property editors and handle them with custom actions.
  • Extension point to listen to drop events.
  • Extension point to listen to double-click event on diagram nodes.
  • Drag'n'drop of an existing Java class from the Navigator or Package Browser onto workflow model creates a Java Application in the model

New views of a process (UML Activity diagram and EPC view)

  • A workflow can be seen in different views: showing more or less details, having different figures, etc.
  • See the following book order example one time in a view for UML activity diagrams...

BookOrderJWT UMLAD.png

  • ... and another time in a view for event-driven process chains.

BookOrderJWT EPC.png

New view editor

  • Views can be precisely defined using an own view editor
  • There one can select which elements shall be shown or hidden

JWT ViewEditor.png

Aspect-oriented extensions

  • In order to provide additional nodes that don't exist in the original metamodel
  • Call vendor specific custom actions for specific model elements
  • Have additional properties on already existing metamodel elements

JWT ConfModel.gif

Workflow templates

  • Possibility to import and export parts of the the workflow into templates (Data, Roles and Applications but also whole Activities)
  • Exported templates can be imported into existing workflows


Invoking Transformations

  • Transformations can now be found in Import and Export menues
  • Transformations use wizards to easily configure them

Existing transformations

  • The following transformations exist:
    • From the STP BPMN modeler to JWT and vice versa
    • From JWT to STP-IM (the STP Intermediate Model)
    • From JWT to HTML: creating a documentation of the existing processes
    • From JWT to XPDL (XML Process Definition Language)


  • Task Engine Framework: An API to handle automated tasks at runtime with the same paradigm as the one used at model-time
    • Applications as black boxes
    • Independent from engine
    • Using data mapping
  • Builds a bridge between process engines and human interaction on the one side with automated task implementations on the other.

Back to the top