dimanche 13 juin 2010

How to install Bonita on a Glassfish server with an Oracle database

According to the official documentation, Bonita runtime and user experience can only be installed on JBoss or Tomcat servers. With little patience, those components can be deployed on Glassfish servers.

Introduction to Bonita

Bonita is an open-source workflow solution supported by the BPM company BonitaSoft.

The Bonita solution combines :

A standalone process design studio (the Bonita Studio)

A BPM engine (the Runtime)

A graphical user interface (the Bonita User Experience - BUE)

Goal

The goal of this tutorial is to install the runtime and the BUE on a Glassfish v2.1.1 server. The runtime will use a remote Oracle 10g database (XE). The Bonita Studio will be installed on the administrator's computer.

Process users will connect to the User Experience from a remote computer (WinXP / Firefox). So will the administrator.The operating system installed on the application and database servers is CentOS 5.5.

In this tutorial, the application server's hostname is bonita.localdomain. The database server's hostname is database.localdomain

Note: this guide only contains information related to the appplication server's configuration. For instance, DBMS installation won't be covered in this article.

Requirements

Bonita Studio has already been installed on the administrator's computer

Step 1 - Export the engine

Start Bonita Studio, then click on "Process > Export application".

Check the "Export UserXP" and "All UserXP" checkboxCheck the "Export runtime" checkboxCheck the "Extract selected war libraries {...] in a common folder [...]"Don't select any process in the process listSelect a location (for instance: /home/pingtimeout/bonita_application.zip)

A file named bonita_application.zip is created in the specified folder.

Unzip this file (e.g. in /home/pingtimeout/bonita_application/). The newly created folder now contains these elements:

common-war-lib

conf

runtime

wars

INSTALL.txt

Bonita UserXP and Runtime are now ready to be installed.

Step 2 - Create and initialize the databases

Note : in this tutorial, the databases "core" and "history" are stored on the same Oracle instance. However, they could be separated on two different instances.

Create two db users named CORE and HISTORY.

In the bonita_application folder, edit the file runtime/conf/hibernate-core.properties. Change the following parameters:

5 commentaires:

Until 30 minutes ago, no, I hadn't tried :)The new versions of Bonita and Glassfish come with lots of changes. This article is only suitable for Bonita 5.2 and Glassfish 2.

However, it's still possible to install Bonita 5.4 in Glassfish 3.1. Here are some tips :- In bonita studio, click on "Process > Advanced Export"- Checked "yes" for the two questions and hit "Next"- Select your process and the User XP, and hit "Next"- Check "Export Runtime" and hit "Export"=> You'll get a bonita_application folder

It seems that Bonita doesn't need us to create the BONITA_CORE and BONITA_HISTORY databases. By default, those databases are bundled in the server using H2 Database.

Now, it's time to install it in glassfish- Create a new domain using "asadmin create-domain". Don't use the useradmin option.- Copy the jar files from bonita_application/runtime/lib/server/ to glassfish/domains/bonita/lib/- Append the content of bonita_applications/conf/external/security/jaas-standard.cfg to glassfish/domains/bonita/config/login.conf- Copy the folder bonita_applications/conf/bonita/ in your glassfish directory- Add the following line to glassfish/domains/bonita/config/domain.xml<system-property name="BONITA_HOME" value="PATH_THE_BONITA_FOLDER_YOU_JUST_COPIED"></system-property>

I deployed Arrival_of_a_New_Employee--4.1.war and have successfully installed Arrival_of_a_New_Employee--4.1.bar in the administration screen.

However when I tried to run the case it comes out with an error "Error while getting the process configuration" - hen configured copyOnRead or copyOnWrite, a Store will only accept Serializable values.

Hello, thanks so much for write this blog, here i create a tutorial for deploy bonita 5.4.1 on glassfish 3.1, i hope it could be useful: http://silviajquiroga.blogspot.com/2011/08/deploy-bonita-user-xp-541-on-glassfish.html