BPM SOLUTION FOR GLASSFISH AND JBOSS

Imixs Software Solutions GmbH presents with the Open Source project “Imixs Workflow” a Business Process Management (BPM) solution for Glassfish and JBoss Application Servers. Glassfish and JBoss are open source application servers based on the Java EE specification. These server platforms are widely-used by a lot of small and medium companies. The Imixs JEE Workflow components can be seamlessly integrated into Glassfish 2.1, 3.0 and JBoss 5.0 and 6.0 infrastructure. Thus the project provides a highly scalable and robust BPM solution. The Imixs workflow project makes use from the powerful component framework provided by the Java EE specification. All Imixs Workflow Java EE components are implemented as Enterprise Session and Entity EJBs. This makes it very easy to integrate these components in a new or existing enterprise software project. Continue reading “BPM SOLUTION FOR GLASSFISH AND JBOSS”

SWITCHING JDK FOR GLASSFISH APPLICATION SERVER

Since the latest Imixs Workflow release 2.1.0 we recommend to run Imixs Workflow Applications on Glassfish Application Server using JDK 1.6.

If you use Linux Debian as your Server platform – which is a nice choice – the upgrade from JDK 1.5 to JDK 1.6 is a little bit tricky. So make sure to pay attention to the following points:

  1. Java 1.6 for debian 4 (etch) is available in backports, so just add backports.org to sources.list:
      >vi /etc/apt/sources.list
    and add the following line to the list of repositories:
    deb http://www.backports.org/debian etch-backports main contrib non-free
  2. Next you can install the JDK 1.6 with following command
    >aptitude update
    >aptitude -t etch-backports install sun-java6-jdk
  3. Now you be able to switch to the new java version using the following command:
    >update-alternatives –config java
    You will see an output like this:
 There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                      Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-6-sun/jre/bin/java       63        auto mode
  1            /usr/lib/jvm/java-1.5.0-sun/jre/bin/java   53        manual mode
* 2            /usr/lib/jvm/java-6-sun/jre/bin/java       63        manual mode

Press enter to keep the current choice[*], or type selection number:

now you can choose the new JDK.
After you have upgraded the Java Version you can check the version number with

 >java -version

You should now see something like this:

java version "1.6.0_07"
Java(TM) SE Runtime Environment (build 1.6.0_07-b06)
Java HotSpot(TM) 64-Bit Server VM (build 10.0-b23, mixed mode)

UPDATE THE GLASSFISH ENVIRONMENT

After you have changed the JDK on your OS you need to change also the JDK setting used by the Glassfish Server.

The JDK which is used to start the Glassfish Server is configured in the file

GLASSFISH_INSTALL/config/asenv.conf

Edit the file with

>vi asenv.conf

and change the line

AS_JAVA="/usr/lib/jvm/java-1.5.0-sun-1.5.0.14/jre/.."

into

AS_JAVA="/usr/lib/jvm/java-6-sun/jre/.."

Now you can restart Glassfish Server which will now run with the new JDK 1.6.

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.

ORACLE-FIX 2.0.1

Running the latest stable release of the Imixs JEE Workflow components (imixs-workflow-jee-impl-2.0.1) on a Oracle database can lead into a situation where users did not find any entities or can process new workitems.

The reason for this issue is a query optimizer used in one of the core EJBs. The Problem did not occur on MySQL Database Pools but on Oracle Database Pools.

To fix this problem please use on oracle based workflow systems the following hot fix release:

imixs-workflow-jee-impl-2.0.1-ORACLE-FIX

This patch is available in the subversion repository in /branches. Please let us know if you have any problems. The bug will be fixed in upcoming new 2.0.2 release. Please see also details at Issue Tracker Issue #55.

RELEASE 2.0.2 – ENHANCED WEB SERVICES

In the upcoming new release 2.0.2 the Imixs JEE Workflow provides – among other things a new Web Service implementation which will become much more flexible. Now as the Imixs XML API is fully based on JAXB the SOAP Web Services and the REST Web Services are separated into web modules. This makes is much more easy to use these interfaces in workflow projects as the deployment strategy has changed. As announced the new release will run on JEE5 (Glassfish 2.1) as also under JEE6 (Glassfish 3). And also the deplyoment becomes more flexible as you are now no longer forced to deploy all web service modules together with your application.

The project documentation will be extended in the near future with an additional section for XML & Web Services.

You can check out the current 2.0.2-SNAPSHOT release from the Subversion repository. See also the new snapshot releases of imixs-workflow-xml, imixs-workflow-rest and imixs-workflow-soap. If you have any comments or questions please post the in the Imixs Forum.

MANAGING FILE ATTACHMENTS AND LARGE BINARY OBJECTS (BLOB)

In the latest version of the Imixs JSF Tools 2.0.2 we provide a new Controller Bean which allows managing file attachments and large binary objects (BLOB). The new contoller class is called BLOBWorkitemController.

This BLOBWorkitemController is used to store large objects into a single ItemCollection mapped to a EntityBean. The BlobWorkitem is always bounded to a parent workitem by its referrer id ($uniqueidRef). So an application can implement a lazy loading for BLOBWorkitems. The read- and write access settings of BLOBWorkitems are automatically synchronized to the settings of the parent workitem. So the security features of the Imixs Workflow controller are full supported. The Data of a BLOB WOrkitem can be accessed by an embedded Itemcollection which can be loaded and saved throgh the controller bean. This makes it really easy to manage file attachments inside a JSF application. See also more infos and examples on the Imixs JSF-Tools Project Homepage.

MIGRATION TO NEW IMIXS WORKFLOW JEE API

If you migrate form the ix-workflow project to the new imixs-workflow project it is not posible to redeploy with the new JEE Implementation into an existing EJB / EAR module.

So I recommand to follwo these steps:

  1.   backup the entities form you exsiting Imixs Worklfow Application with the new (!) org.imixs.workflow.jee.adminclient.web 1.4.3 using the Export Feature.
  2. Take care about the new persistence unit used in the persistence.xml
    org.imixs.workflow.jee.jpa
  3. Redeploy you new project with the persistence.xml option:
    <property name=”toplink.ddl-generation”
    value=”drop-and-create-tables” />
  4. Reimport you backupfile with the new imixs WOrkflow AdminClient Tool