Additional Documentation

You can also find additional documentation on the Fuse ESB Getting Started Page

Getting Started

The purpose of this document is to provide a starting point for those new to ServiceMix and JBI. Please read through each section here and if you have any questions, please just hop on the ServiceMix user mailing list to ask any questions you might have.

Are You Familiar With Web Applications?

If you are at all familiar with web applications, then you should find that the high level steps of getting started with ServiceMix are not much different than getting started in building web applications and deploying them to a web container like Jetty or Tomcat. First you need a good understanding of web application concepts. Next, you walk through some tutorials and examples to help you build and package a web application. Third, you install the binary distribution of the web container so that you can deploy your WAR files and run your application. The same basic steps apply here except that you're using ServiceMix instead of a web container and SUs/SAs instead of WARs.

Introduction

First read the FAQ entry titled, What is JBI and each page linked to that page. This document provides some good base knowledge about JBI concepts before diving any deeper into the the use of the technology.

Tutorials

The Tutorials section is the next step. These tutorials walk you through the basic use of the technology and show you how to build various examples. We are working to continually add new tutorials so please check back often. If there is a use case that you'd like to see, please hop on the ServiceMix user mailing list to discuss it. We're all very interested in what you'd like to see and we highly encourage contributions from the community.

Installing the ServiceMix Binary Distribution

Once you've followed the tutorials to create some SUs and SAs, you'll need to deploy them to ServiceMix. This requires that you install the binary distribution of ServiceMix so that you can deploy your SAs to it. Below are the steps to achieve this.

Pre-Installation Requirements

Hardware:

  • 100 MB of disk space for the ServiceMix 3.x binary distribution.

Operating Systems:

  • Windows: Windows XP SP2, Windows 2000
  • Unix: Any Linux/Unix platform that supports Java

Environment:

  • Java Developer Kit (JDK) 1.5.x (Java 5) for both deployment and compiling.

Binary Distribution Installation Procedure

This procedure explains how to download and install the binary distribution.

  1. Download the binary distribution for your platform (either a tarball for a zip file). The latest release can be downloaded here: http://servicemix.apache.org/download.html
  2. Extract the download into a directory of your choice.
  3. Proceed to the Starting ServiceMix section of this document.
  4. Following start-up, go to Testing the Installation section of this document.

Starting ServiceMix

This section provides instructions on starting ServiceMix from both Windows and Unix platforms. Below are the steps to follow:

 
> cd <SERVICEMIX_HOME>

The <SERVICEMIX_HOME> above is just simply a placeholder for the ServiceMix binary distribution directory, i.e., the directory you expanded from the downloaded tarball or zip file.

Windows:

  
> .\bin\servicemix

Linux/Unix:

  
$ ./bin/servicemix
Warning

Using a IBM 1.5 JVM, you can have error at startup looking like this :
Caught : org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource activemq.xml; nested exception is java.lang.ClassCircularityError
org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource activemq.xml; nested exception is java.lang.ClassCircularityError
To avoid this, add -Xverify:none flag to the java command line.

Warning

Don't close the window containing the command prompt in which ServiceMix is running as doing so will terminate ServiceMix. On Linux/Unix, this can be worked around by starting ServiceMix with the nohup utility.

Stopping ServiceMix

For both Windows and Unix installations, terminate ServiceMix by typing "CTRL-C" on the command line where ServiceMix is running. ServiceMix uses the Java shutdown hook to cleanly shut down the container.

Additional Resources

After the installation, ServiceMix is running with a basic configuration. For details on configuring additional options, please see Configuration.

Before trying to use ServiceMix, make sure to read the What is JBI document, take a look at the available Components list for a list of JBI compliant components and get an idea for the ServiceMix Architecture along with the supported NMR Flows.

A good next step is to deploy and run the Examples that are part of the ServiceMix binary distribution. The examples are located in the examples directory under the directory in which ServiceMix was installed.

Handy Hint

Add $SERVICEMIX_HOME/bin directory to $PATH variable to simplify execution of the examples.

To view the statistics and operation of ServiceMix in a JMX Console and see how the Management works please read the page about the JMX Console and the page about Management.

Working With the ServiceMix Source Code

If you're interested to dig in and work with the ServiceMix source code, take a look at the Source and the Building documents. These documents will help you check out the ServiceMix source code using Subversion and build it using Maven.