Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

anchortoptop

...

2. Quick start

If you are in a hurry to have Apache ServiceMix Kernel Karaf up and running right away, this section will provide you with some basic steps for downloading, building (when needed) and running the server in no time. This is clearly not a complete guide so you may want to check other sections of this guide for further information.

All you need is 5 to 10 minutes and to follow these basic steps.

Background

Apache ServiceMix Kernel Karaf is a small and lightweight OSGi based runtime. This provides a small lightweight container onto which various bundles can be deployed.

...

Apache Karaf started life as the Apache ServiceMix kernel and then moved as a Apache Felix subproject.
Don't be surprised by any transitional references which remain.

...

#top1. Quick Start

Getting the software

At this time you have one option to get the software. The fastest and easiest way is to get the binary directly from the Apache site. Since this article is intended to help you to have Apache ServiceMix Kernel Karaf up and running in the fastest way only the binary download will be covered at this time.

Prerequisites

Although this installation path is the fastest one, still you will need to install some software before installing ServiceMix KernelKaraf.

ServiceMix Kernel Karaf requires a Java 5 environment to run. Refer to http://java.sun.com for details on how to download and install J2SE 1.5 or greater.

Download binaries

Depending on the platform you plan to install and run Apache ServiceMix Karaf you will select the appropriate installation image. Open a Web browser and access the following URL, there you will find the available packages for download (binaries and source code).

http://servicemixkaraf.apache.org/kernel/download.html

Select the file compression format compatible with your system (zip for windows, tar.gz for unixes) by clicking directly on the link, download it and expand the binary to your hard drive in a new directory; for example in z:\servicemix karaf - from now on this directory will be referenced as <SERVICEMIX<KARAF_HOME>. Please remember the restrictions concerning illegal characters in Java paths, e.g. !, % etc.

The installation of Apache ServiceMix Kernel Karaf is as simple as uncompressing the .zip or .tar files. The next step is to start the server.

1. Quick Start#top

Start the server

With Apache ServiceMix Kernel Karaf already installed, open a command line console and change directory to <SERVICEMIX<KARAF_HOME>. To start the server, run the following command in Windows:

...

respectively on Unix:

...

...

You should see the following informations on the command line console:

Panel
bgColor#000000

No Format
nopaneltrue
 ____                  _          __  __ _
/ ___|  ___ _ ____   _(_) ___ ___|  \/  (_)_  __
\___ \ / _ \ '__\ \ / / |/ __/ _ \ |\/| | \ \/ /
 ___) |  __/ |   \ V /| | (_|  __/ |  | | |>  <
|____/ \___|_|    \_/ |_|\___\___|_|  |_|_/_/\_\
No Format
nopaneltrue

 ServiceMix Kernel (1.1.0)

Type 'help' for more information.
--------------------------------------------------------------------------------------------------------------------------------
smx@root:/>

...

You can now run your first command. Simply enter help type the <tab> key in the console followed by a carriage return.

Panel
bgColor#000000

No Format
nopaneltrue

smx@root:/> help
Available commands:
  about     Display information about the current GShell application.
  help      Display help for the current context.
  exit      Exit the current shell.
  echo      Print arguments to standard output.
  clear     Clear the terminal screen.
  source    Read and execute commands from a file in the current shell environment.
  set       Set a variable or property.
  unset     Unset a variable or property.
  alias     Define an alias.
  unalias   Undefine an alias.
  history   Display history.
  info      Display JVM informations about the current application.
  quit      Link to: exit
  ssh       Connect to a SSH server.
  sshd      Start a SSH server.
  exec      Execute system processes.
  java      Execute a Java standard application.
  sleep     Sleep for a bit then wake up.
  date      Displays the current time and date.
  edit      Edit a file with an external editor.
  find      Find files in a hierarchy.
  hostname  Displays the name of the current host.
  printf    Print formatted output.
  cat       Displays the contents of a file.
  grep      Displays lines matching a pattern.
  print     Link to: echo
  cd        Changes the current directory.
  pwd       Displays the current directory.
  ls        List the contents of a file or directory.
  cp        Copies a file or directory.
  rm        Remove a file or directory.
  fileinfo  Displays information about a file.
  touch     Sets the last-modified time of a file.
  dir       Link to: ls
  copy      Link to: cp
  del       Link to: rm
  osgi      Command group: osgi
  log       Command group: log
  admin     Command group: admin
  packages  Command group: packages
  config    Command group: config
  features  Command group: features

.

...

You can then grab more specific help for a given command using the --help option for this command:

...

Note that the console supports tab completion, so you just need to enter ad <tab> cr <tab> instead of admin:create.
#top1. Quick Start

Deploy a sample application

While you will learn in the remainder of this guide how to use and leverage Apache ServiceMix KernelKaraf, we will just use the pre-built packaging for now.

In the console, run the following commands:

Code Block

osgi/install -s mvn:org.apache.geronimo.specs/geronimo-activation_1.1_spec/1.0.2
osgi/install -s mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.stax-api-1.0/1.1.0
osgi/install -s mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.1/1.1.0
osgi/install -s mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jaxb-impl/2.1.6_1
osgi/install -s mvn:org.apache.camel/camel-core/1.4.0
osgi/install -s mvn:org.springframework/spring-tx/2.5.5
osgi/install -s mvn:org.apache.camel/camel-spring/1.4.0
osgi/install -s mvn:org.apache.camel/camel-osgi/1.4.0
osgi/install -s mvn:org.apache.camel/camel-example-osgi/1.4.0

...

This commands will download, install and start the specified jars.The example installed is using Camel to start a timer every 2 seconds and output a message on the console.

...

The previous commands download the Camel features descriptor and install the example feature.

...

Stopping and uninstalling the sample application

To stop this demo, run the following command:

Code Block

osgi/list | grep example

...

If you wish, you can start again the sample by using the following command:

Code Block

osgi/start [SMX4KNL:id]

To uninstall the demo, run the following command:

Code Block

osgi/uninstall [SMX4KNL:id]

Common Problems

  1. Launching SMX4 Karaf can result in a deadlock in Felix during module dependency resolution. This is often a result of sending a SIGINT (control-C) to the process when it will not cleanly exit. This can corrupt the caches and cause startup problems in the very next launch. It is fixed by emptying the component cache: Code Block rm -rf data/cache/*

Stopping

...

Karaf

To stop ServiceMix Kernel from the console, Karaf from the console, enter ^D in the console:

...

Alternatively, you can also run the following command:

Code Block

exit

...

Summary

This document showed you how simple it is to have Apache ServiceMix Kernel Karaf up and running. The overall time for getting the server running should be less than five minutes if you have the prerequisite (Java 1.5) already installed. Additionally, this article also showed you how to deploy and test a simple Apache Camel application in less than five minutes.

1. Quick Start

...

#top

...