Friday May 11, 2012

Model-Binding versus Method-Binding

The common way to implement an Imixs Workflow application is to bind a business object to a workflow model and process it by calling the Imixs Workflow engine.

  @EJB
WorkflowService wfm;   ItemCollection workitem=new ItemCollection(); .... // set model data workitem.replaceItemValue("$modelversion", "1.0.0"); workitem.replaceItemValue("$processid", 100); workitem.replaceItemValue("$activityid", 10); // process workitem workitem=wfm.processWorkItem(workitem);

We call this a 'model-binding' because you bind your business object during the development of your application to a workflow model. This means that you typical first design your workflow model and after that you start implementing your application. So as a developer you know the model and can assign a possible workflow activity into your business object. Imixs Workflow provides different methods to compute the possible workflow activities during runtime so you are not forced to hard code the activities in your code.

The method-binding

But in some cases you might need to follow a different strategy. In a scenario where the modeling process takes place very late, you may not be able to bind your business objects to an workflow activity by assigning an activityID. This situation occurs when you first develop your business methods, and then need to link them to workflow activities of a workflow model. This means that the method call itself identifies the activity in the workflow model to be processed by the workflow engine. So each method call is bound to an workflow activity. We call it the 'method-binding'. To provide an appropriate model, the process designer need to know the different business methods implemented from the workflow application. So he can bind the method-name directly to the workflow activities of a workflow model.

This kind of late binding enforces to work with Interceptor classes. This concept is a common way in Java EE to implement cross-cutting functionality. So the solution here is to intercept the call of a business method and find the corresponding workflow activity in a model. Then you can process the business object.

 

   @EJB
WorkflowService wfm;   ItemCollection workitem=findWorkitem();
ItemCollection activity=findActivityByMethod(workitem,methodName); .... // set activityid workitem.replaceItemValue("$activityid", activity.getItemValueInteger("numActivityID"); // process workitem workitem=wfm.processWorkItem(workitem);

 

 

Monday Jul 19, 2010

BPM solutions using Java EE

The Imixs Workflow project is an open source project that relieved the construction of business process management systems (BPMS). An essential part of the project are the Imixs JEE Workflow components. These components can be used to build BPM solutions based on the Java EE plattform.

The following tutorial will show how an Imixs BPM solution can be created in a few minutes with the help of Eclipse, Maven and Glassfish Application Server.

[Read More]

Monday Jun 28, 2010

Imixs Workflow runs on JBoss Application Server

The Imixs JEE Workflow components are successfully tested on the latest release of JBoss Application Server V 5.1.0.GA (JBossAS 5). The JBoss Application Server is the one of the most widely used Java application servers on the market.

The Imixs JEE Workflow is a full featured Workflow Management System (WFMS) based on the Java EE5 specification and fulfills the requirements to a scalable, transactional, robust and simple deployable Java EE Workflow System.
JBoss 5 for the Java EE5 codebase fully complies with the Java EE5 specification. So the JBossAS 5 is an ideal platform for Workflow Management Systems based on the Imixs Open Source Workflow.
The Imixs JEE Project site provides additional Installation guides for JBoss and also informations about deployment strategies to get best results running the Imixs Worklow on JBoss Application Server.

Read more about the Imixs Java EE Workflow System.

Saturday Nov 28, 2009

Imixs Workflow API 2.0.1 released

Today the new version 2.0.1 of the Imixs Worklfow API was finally released.

Read more about the Imixs Workflow API on the www.imixs.org Project Site.

Thursday Jul 16, 2009

New! Imixs Workflow Project

I am proud to announce that we started the new Open Source Workflow Project Imixs-Workflow on dev.java.net. This project arise from the ix-workflow project we developed about for more than 3 years. But the new project is much more easy to use. We developed a bunch of simplifications in the Workflow API so the hole project is now much easier to integreate. I would be happy if you can give me some feedback to that project on the project home page.

I will provide a short video next time to show how easy it is building workflow applications based on the API.

Monday Sep 01, 2008

New Version 1.6 of Imixs IX JEE Workflow

Currently we are working on the new 1.6 release of Imixs IX Workflow API and IX JEE Workflow Server. The new release will include a ReportService. This feature support a power full report function which allows you to generate dynamic reports based on running Business Processes. The Report Feature will be included into the IX REST Services so reports can be used very easy. 

Also we extend the IX Workflow Modeler with a new Report Editor that allows a Workflow Modeler to create and manage reports as *.ixr files directly in a Eclipse project.

The new functionality will expand the Imixs IX Workflow Tool with a really strong feature set! Source code of new Version 1.6 will be available on subversion repository in a pre-beta version:

https://ix-workflow.dev.java.net/source/browse/ix-workflow/

Saturday Jul 26, 2008

Building a Workflow Application - Part I

The following Tutorial I will explain how easy it is to build a Workflow Application using the IX Open Source Workflow Components. The Tutorial is divided into three parts:

[Read More]

Sunday Jul 20, 2008

IX Modeler - new Version 2.2.4

The new version 2.2.4 of the Imixs IX Workflow Modeler is now released. This version includes a lot of improvements concerning the graphical modeling. Therefor the popular style has changed. The attributes of activity entities,like Mail or Access Configurations, now are displayed graphicaly. The handling of users and time objects has been improved.[Read More]