Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • connect the dots between the documentation already existing on the Servicemix website
  • Give a developer interested in Servicemix a run through on getting the software up and running (with examples!)
  • Give the developer instructions on compiling/installing the packaged Smix examples
  • Give the developer information on monitoring/configuring the software via jconsolethe software via jconsole
  • Create two working service assemblies (SA's) which work together, using out of the box Smix components!

Also...

Check out Georg Dembowski's tutorial in progress on creating a simple service engine (JBI component).

Conventions:

TERMS:

  1. 'company repository' = a remote Maven 2 repository used within your company to hold dependencies/artifacts.
  2. Wiki Markup
    \[Smix_source_folder\] = the location of the folder created after uncompressing the downloaded Smix source distribution (from .zip, .tar.gz etc.).
  3. Wiki Markup
    \[Servicemix_binary_distribution_home\] = installation location of the Smix binary distribution on your machine

...

If you are going to be running any of the examples or doing any development with a current SNAPSHOT/release then you may want to do a few things first. It makes sense to check out the 3.0 (SNAPSHOT if you want the newest) source code so that you can install the Smix component dependencies in your local repository. First go here and download the ServiceMix 3.0 sources. Next you will want to build the Servicemix app and it's included components. Go here for instructions.

Wiki MarkupOnce you have built the 3.0 app, following the instructions linked above, the Smix component modules will be installed locally.

Info
iconfalse
titleGetting the Smix dependencies into your company repository

Wiki Markup
If you want to deploy those dependencies to a company repository then keep reading. I can only give information on doing this for Maven 2 as I did not try this for Maven 1. First go into the top level project pom.xml with you favorite editor. This will be in the \[Smix_source_folder\]/src folder. You are going to first edit out the references to Maven 1. Search for 'm1', or in another case I searched for 'maven-one'. There was a property and a plug in section I deleted (maybe some other sections also). I think the plug in is the important one to delete/coment out. Next edit the 'distributionManagement' section. Put the relevent information for you company repository here. If you are working with a SNAPSHOT release then you will need to put your snapshot repository information in here.

You should now be able to 'mvn -Dmaven.test.skip=true deploy' and the dependencies will upload to the remote repository you defined. This is a good thing when people you are working with will need the Smix component dependencies. If others will be working on a Smix project you create it will also come in handy, as they will not have to chase down dependencies. THANKS MAVEN!!! I think there are other benefits too, such as faster fetching since the dependencies are more local (physically).

Next up install the compiled binary Servicemix...

...

One great benefit to JBI and Smix is are the monitoring capabilities. Using the jconsole application packaged with the Java SDK you can tap into your Smix instance. In doing so you can get all sorts of information on things like thread and memory usage, and have the ability to configure the Smix environment dynamically. Lets use jconsole! Open a terminal session and type 'nohup jconsole &'. If your machine has the Java SDK's /bin folder in it's path then this should launch the jconsole application. If the application has launched then you should be able to close the terminal window now.

...