Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: for the plan.

Jump to: navigation, search

Swordfish Documentation: Installing ODE

Installing the ODE Engine

This section contains information and instructions on ODE and BPEL in Swordfish, starting and configuring the ODE.

About ODE and BPEL in Swordfish

The Apache ODE BPEL engine supports the execution of BPEL processes in Swordfish. In Swordfish, the ODE uses Servicemix 4 as the JBI container and an adapted ODE JBI integration layer that supports an EclipseLink based database integration to persist the process state.

For information on the general issues about the ODE JBI deployment, see ODE User Guide. If you want to try out a tutorial on ODE, see ODE Tutorials. The deployment and execution of BPEL processes in Swordfish is described in Executing BPEL processes.

Swordfish ODE is provided as an OSGI bundle which can be installed/started using OSGI mechanisms - either using the install/start commands of the OSGI console or by listing the ODE bundle inside the Equinox config.ini file.

Starting ODE

To start ODE:

  1. Create a target platform which extends the standard Swordfish target platform with all the bundles in the ODE.extension project which, can be found in the Swordfish
  2. Create an Eclipse OSGI Run Configuration using the ODE target platform as described above where:
      	Program arguments
    		-os ${target.os} -ws ${} -arch ${target.arch} -nl ${} -console -clean
    	VM arguments
    		-Declipse.ignoreApp=true -Dosgi.noShutdown=true
    		-Djava.util.logging.config.file="your location"
    	Working directory
  3. Export the org.apache.ode project in as an eclipse plugin
  4. Install and start the created ODE bundle using the OSGI console

Configuring ODE

In the debugging phase we recommend that you increase the default global logging level in the file, which is referred to in the -Djava.util.logging.config.file option in the run configuration.

The ODE specific logging options can found in the file in org.apache.ode in sandbox.


The option, also contains the definition of the database layer that is used to persist the process state. The use of EclipseLink is hard coded in our ODE database integration layer. This was originally developed in SMILA. However, it is possible to change the database used, for example, instead of Apache Derby you can use HSQLDB, or an Oracle Database for lengthy processes where reliable persistence is required.

The JPA configuration is located in META-INF/persistence.xml in org.apache.ode. For more information, see persistence_xml.

Swordfish Documentation Home
Swordfish Wiki Home

Back to the top