Red Hat Training

A Red Hat training course is available for Red Hat Fuse

Chapter 10. XA Tutorial


This tutorial describes how to define and build a transactional route involving two XA resources (a JMS resource and a JDBC resource), based on the Apache Aries transaction manager in the OSGi container. For the purposes of illustration, the tutorial uses the Apache Derby database, which provides the JDBC XA resource.

10.1. Install Apache Derby


For this tutorial, you need an installation of the Apache Derby database, which is an open source database that supports XA transactions. In particular, you will need to use the ij command-line utility later in the tutorial to create a database schema.


Download the latest binary distribution of Apache Derby,, from the Apache Derby download page:
The same binary distribution is used both for Windows and *NIX operating systems.


To install Apache Derby, use an archive utility to extract the binary distribution into a convenient directory (for example, C:\Program Files on Windows, or /usr/local on *NIX).

Environment variables

To gain access to the Derby command-line utilities, add the Derby bin directory to your PATH variable.
On Windows, you could use a batch script like the following:
REM Set Apache Derby environment on Windows
SET DERBY_HOME=DerbyInstallDir

On *NIX, you could use a bash script like the following:
# Set Apache Derby environment on *NIX