servicemix-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ksobkow...@apache.org
Subject svn commit: r1595363 [8/9] - in /servicemix/site/production/docs/5.0.x: activemq/ activiti/ camel/ camel/deployment/ commands/ developers-guide/ karaf/ quickstart/ user/ users-guide/
Date Fri, 16 May 2014 21:50:34 GMT
Modified: servicemix/site/production/docs/5.0.x/quickstart/quickstart.pdf.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/quickstart/quickstart.pdf.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/quickstart/quickstart.pdf.html (original)
+++ servicemix/site/production/docs/5.0.x/quickstart/quickstart.pdf.html Fri May 16 21:50:31 2014
@@ -16,7 +16,92 @@
     </div>
   </div>
   <div id="main">
-    <h1 id="Introduction">Introduction</h1><p>First of all, welcome to the Apache ServiceMix project!</p><p>The goal of this Quickstart guide is to give you a 20-minute overview of what ServiceMix is and what you can do with it.  In that time, we'll install ServiceMix on your machine, deploy some basic integration routes and extend the container with an additional feature.</p><h1 id="Installation">Installation</h1><p>Before we can start working with Apache ServiceMix, we have to get it installed and running on our local machine first.</p><h2 id="Systemrequirements">System requirements</h2><p>For running Apache ServiceMix itself, you'll need</p><ul><li><p>Java Runtime Environment (JRE) 1.6.x (Java 6) or<br/>  Java Runtime Environment (JRE) 1.7.x (Java 7)</p></li><li><p>About 100 MB of free disk space for the default assembly</p></li></ul><p>If you're developing your own integration applications and OSGi bundles, you'll also need</p><ul><li><p>Java Developer Kit (JDK) 1.6.x (Java 6) o
 r<br/>  Java Developer Kit (JDK) 1.7.x (Java 7)</p></li><li><p>Apache Maven 3.0.4 or higher</p></li></ul><h2 id="DownloadingApacheServiceMix">Downloading Apache ServiceMix</h2><p>Apache ServiceMix 5.0.0-SNAPSHOT is available under the Apache License v2 and can be downloaded from <a href="http://servicemix.apache.org/downloads.html">http://servicemix.apache.org/downloads.html</a>.</p><p>Depending on your operation system, you should download either the tar.gz or the zip file:</p><ul><li><p><tt>tar.gz</tt> for Linux/Unix/MacOS X</p></li><li><p><tt>zip</tt> for Windows</p></li></ul><h2 id="InstallingApacheServiceMix">Installing Apache ServiceMix</h2><p>Installing Apache ServiceMix is as simple as uncompressing the downloaded archive on your hard disk.  For the rest of this guide, we'll refer to the this location as <strong><tt>&lt;SERVICEMIX_HOME></tt></strong>.</p><h2 id="StartingApacheServiceMix">Starting Apache ServiceMix</h2><p>Depending on your platform, start Apache ServiceMix by
  following the instructions below.  After starting the container, you will have access to the console from which you can manage the container.</p><h3 id="OnWindows">On Windows</h3><p>In a command prompt window, navigate to the directory where you extracted ServiceMix and run the <tt>bin\servicemix.bat</tt> file.</p><p>Example: if ServiceMix in installed in the <tt>c:\tools\apache-servicemix-5.0.0-SNAPSHOT</tt> directory</p><div class="syntax"><div class="highlight"><pre><span class="p">&gt;</span> <span class="n">cd</span> c:\tools\apache-servicemix<span class="m">-5</span>.<span class="m">0</span>.<span class="m">0</span>-SNAPSHOT&#x000A;&gt; .\bin\servicemix&#x000A;</pre></div>&#x000A;</div><p><img border="0" src="images/start-windows.png"/></p><h3 id="OnLinuxUnixMacOSX">On Linux/Unix/MacOS X</h3><p>On a command shell, navigate to the directory where you extracted ServiceMix and the <tt>bin/servicemix</tt> shell script</p><p>Example: if ServiceMix is installed in the <tt>~/Applica
 tions/apache-servicemix-5.0.0-SNAPSHOT</tt> directory.</p><div class="syntax"><div class="highlight"><pre><span class="nv">$ </span><span class="nb">cd</span> ~/Applications/apache-servicemix-5.0.0-SNAPSHOT&#x000A;<span class="nv">$ </span>./bin/servicemix&#x000A;</pre></div>&#x000A;</div><p>!/quickstart/images/start-linux.png</p>|width=75%|height=75%!<h1 id="ApacheServiceMixconsole">Apache ServiceMix console</h1><p>Now that we successfully installed and started Apache ServiceMix, we'll take a closer look at the console.  This is where you manage your ServiceMix instance, add and remove bundles, install optional features, ...</p><h2 id="Workingwithbundles">Working with bundles</h2><p>When ServiceMix is first started, a whole set of bundles providing the core features for the product are being installed.  Let's use the command console to find out more about them...</p><p>The <tt>osgi:list</tt> command can be used to get a list of all bundles currently installed.  Enter this</p><div c
 lass="syntax"><div class="highlight"><pre>karaf@root&gt; osgi:list&#x000A;</pre></div>&#x000A;</div><p>This is what the output looks like if you run this on your ServiceMix instance.</p><p>!/quickstart/images/osgi-list.png</p>|title=osgi:list!<p>For every bundle, you see:</p><ul><li><p>the bundle id</p></li><li><p>the bundle state</p></li><li><p>if the bundle contains a Blueprint or Spring XML file, the next 2 columns will show you if the beans defined there were created successfully</p></li><li><p>the bundle start level</p></li><li><p>the bundle name and version</p></li></ul><p>If you're looking for something specific in the list, you can use unix-like pipes and utilities to help you.  An example: to look for all Camel related bundles...</p><div class="syntax"><div class="highlight"><pre>karaf@root&gt; osgi:list | grep camel&#x000A;</pre></div>&#x000A;</div><p>!/quickstart/images/osgi-list-pipegrep.png</p>|title=osgi:list!<h2 id="Workingwithlogging">Working with logging</h2><p>Many
  of the applications you write will have some form of log output.  To look at the message in the log file, you can us the <tt>log:diplay</tt> command.</p><div class="syntax"><div class="highlight"><pre>karaf@root&gt; log:display&#x000A;</pre></div>&#x000A;</div><p>!/quickstart/images/log-display.png</p>|title=log:display!<p>If you're only interested in the latest exception in the log file, you can use <tt>log:display-exception</tt> instead.</p><div class="syntax"><div class="highlight"><pre>karaf@root&gt; log:display-exception&#x000A;</pre></div>&#x000A;</div><p>!/quickstart/images/log-display-exception.png</p>|title=log:display-exception!<p>You can also change the log level at runtime by using the <tt>log:set</tt> command.  You can try these commands on your instance now by first setting the log level to <tt>DEBUG</tt> and then using <tt>grep</tt> to make sure that you can actually see the extra logging.</p><div class="syntax"><div class="highlight"><pre>karaf@root&gt; log:set DEBU
 G&#x000A;karaf@root&gt; log:display | grep DEBUG&#x000A;</pre></div>&#x000A;</div><p>!/quickstart/images/log-set-debug.png</p>|title=log:set DEBUG!<p>Afterwards, revert the log level to its original <tt>INFO</tt> value again with <tt>log:set</tt>.</p><div class="syntax"><div class="highlight"><pre>karaf@root&gt; log:set INFO&#x000A;</pre></div>&#x000A;</div><h2 id="...andtheresalotmore">...and there's a lot more</h2><p>These are obviously just a few examples of what the command shell is all about.  There are a lot more commands in the shell to help you deploy, monitor, manage and troubleshoot the applications you're building with ServiceMix.</p><h1 id="UsingCamel">Using Camel</h1><p>Now that we know how to operate Apache ServiceMix through the shell console, it's time to start using it for what it is built for.  Let's build our very first integration solution with a Camel route and deploy it on ServiceMix.</p><h2 id="Oursimplescenario">Our simple scenario</h2><p>In this simple scena
 rio, we're going to move files from an input directory called <tt>camel/input</tt> to an output directory called <tt>camel/output</tt>.  To ensure we can keep track of which files get moved, we'll also write a message to the log file whenever we move a file.</p><h2 id="Creatingtheroute">Creating the route</h2><p>One of the most simple ways to deploy a new route on ServiceMix, is by defining the route in a Blueprint XML file.</p><div class="syntax"><div class="highlight"><pre><span class="cp">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;</span>&#x000A;<span class="nt">&lt;blueprint</span>&#x000A;    <span class="na">xmlns=</span><span class="s">&quot;http://www.osgi.org/xmlns/blueprint/v1.0.0&quot;</span>&#x000A;    <span class="na">xmlns:xsi=</span><span class="s">&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span>&#x000A;    <span class="na">xsi:schemaLocation=</span><span class="s">&quot;</span>&#x000A;<span class="s">      http://www.osgi.org/xmlns/blu
 eprint/v1.0.0</span>&#x000A;<span class="s">      http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd&quot;</span><span class="nt">&gt;</span>&#x000A;&#x000A;    <span class="nt">&lt;camelContext</span> <span class="na">xmlns=</span><span class="s">&quot;http://camel.apache.org/schema/blueprint&quot;</span><span class="nt">&gt;</span>&#x000A;      <span class="nt">&lt;route&gt;</span>&#x000A;        <span class="nt">&lt;from</span> <span class="na">uri=</span><span class="s">&quot;file:camel/input&quot;</span><span class="nt">/&gt;</span>&#x000A;        <span class="nt">&lt;log</span> <span class="na">message=</span><span class="s">&quot;Moving ${file:name} to the output directory&quot;</span><span class="nt">/&gt;</span>&#x000A;        <span class="nt">&lt;to</span> <span class="na">uri=</span><span class="s">&quot;file:camel/output&quot;</span><span class="nt">/&gt;</span>&#x000A;      <span class="nt">&lt;/route&gt;</span>&#x000A;    <span class="nt">&lt;/camelContext&gt;</s
 pan>&#x000A;&#x000A;<span class="nt">&lt;/blueprint&gt;</span>&#x000A;</pre></div>&#x000A;</div><h2 id="Deployingtheroute">Deploying the route</h2><p>In order to deploy and start the route, just copy the XML file you created into ServiceMix' <tt>deploy</tt> directory.  The file will get picked up and deployed by ServiceMix.  You will see a <tt>camel/input</tt> folder appear in your ServiceMix installation directory and any files you copy into that directory will get moved into the <tt>camel/output</tt> directory.</p><p>If you do a <tt>log:display</tt> in the shell, you will also see the log output for every file that's been moved.</p><p><img border="0" src="images/camel-sample-log.png"/></p><h2 id="Usingtheshelltomanagetheroute">Using the shell to manage the route</h2><p>Using <tt>osgi:list</tt>, you'll notice that your XML file has been transformed into a bundle and that the Blueprint container has been created to start your Camel route.</p><p><img border="0" src="images/camel-samp
 le-deploy.png"/></p><p>From this output, you also learn that the bundle id for your XML file is 200.  This allow you to start and stop the route whenever necessary.  Let's give this a go now...</p><p>First, stop the route with</p><div class="syntax"><div class="highlight"><pre>karaf@root&gt; osgi:stop 200&#x000A;</pre></div>&#x000A;</div><p>The route is no longer active, so any files you copy into the <tt>orders/input</tt> folder will remain there for now.  As soon as you restart the route, the pending files will get moving again.</p><div class="syntax"><div class="highlight"><pre>karaf@root&gt; osgi:start 200&#x000A;</pre></div>&#x000A;</div><h1 id="AddingActiveMQtotheMix">Adding ActiveMQ to the 'Mix</h1><p>Out-of-the-box, every Apache ServiceMix instance comes with an embedded ActiveMQ JMS broker.  This makes it easy to communicate between Camel routes using persistent messages on the same machine, but it will also enable you to distribute your routes over multiple instances after
 wards for clustering or load-balancing.</p><h2 id="Ourscenario">Our scenario</h2><p>In this scenario, we also want to move files between directories.  Instead of logging the move directly, we are going to send an event JMS message onto a queue.  Afterwards, we will create a second Camel route to receive the events and log them.</p><h2 id="Beforewestart">Before we start</h2><p>First, we have to install an optional feature to allow Camel send and receive JMS messages.  We'll talk about optional features a bit more in the next page of this quickstart guide, but for now, just run the following command in the console.</p><div class="syntax"><div class="highlight"><pre>karaf@root&gt; features:install camel-jms&#x000A;</pre></div>&#x000A;</div><h2 id="Movingfilesandsendingeventmessages">Moving files and sending event messages</h2><p>The first Blueprint XML file we'll create contains a Camel route that moves the files from <tt>activemq/input</tt> to the <tt>activemq/output</tt> directory.  
 Afterwards, it will generate an event message and send that to an ActiveMQ queue called <tt>events</tt>.</p><div class="syntax"><div class="highlight"><pre><span class="cp">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;</span>&#x000A;<span class="nt">&lt;blueprint</span>&#x000A;    <span class="na">xmlns=</span><span class="s">&quot;http://www.osgi.org/xmlns/blueprint/v1.0.0&quot;</span>&#x000A;    <span class="na">xmlns:xsi=</span><span class="s">&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span>&#x000A;    <span class="na">xsi:schemaLocation=</span><span class="s">&quot;</span>&#x000A;<span class="s">      http://www.osgi.org/xmlns/blueprint/v1.0.0</span>&#x000A;<span class="s">      http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd&quot;</span><span class="nt">&gt;</span>&#x000A;&#x000A;    <span class="nt">&lt;camelContext</span> <span class="na">xmlns=</span><span class="s">&quot;http://camel.apache.org/schema/blueprint&quot;</span><span class
 ="nt">&gt;</span>&#x000A;      <span class="nt">&lt;route&gt;</span>&#x000A;        <span class="nt">&lt;from</span> <span class="na">uri=</span><span class="s">&quot;file:activemq/input&quot;</span><span class="nt">/&gt;</span>&#x000A;        <span class="nt">&lt;to</span> <span class="na">uri=</span><span class="s">&quot;file:activemq/output&quot;</span><span class="nt">/&gt;</span>&#x000A;&#x000A;        <span class="nt">&lt;setBody&gt;</span>&#x000A;          <span class="nt">&lt;simple&gt;</span>&#x000A;            FileMovedEvent(file: ${file:name}, timestamp: ${date:now:hh:MM:ss.SSS})&#x000A;          <span class="nt">&lt;/simple&gt;</span>&#x000A;        <span class="nt">&lt;/setBody&gt;</span>&#x000A;        <span class="nt">&lt;to</span> <span class="na">uri=</span><span class="s">&quot;activemq://events&quot;</span> <span class="nt">/&gt;</span>&#x000A;      <span class="nt">&lt;/route&gt;</span>&#x000A;    <span class="nt">&lt;/camelContext&gt;</span>&#x000A;&#x000A;    <
 span class="nt">&lt;bean</span> <span class="na">id=</span><span class="s">&quot;activemq&quot;</span> <span class="na">class=</span><span class="s">&quot;org.apache.activemq.camel.component.ActiveMQComponent&quot;</span><span class="nt">&gt;</span>&#x000A;        <span class="nt">&lt;property</span> <span class="na">name=</span><span class="s">&quot;brokerURL&quot;</span> <span class="na">value=</span><span class="s">&quot;tcp://localhost:61616&quot;</span><span class="nt">/&gt;</span>&#x000A;    	<span class="nt">&lt;property</span> <span class="na">name=</span><span class="s">&quot;userName&quot;</span> <span class="na">value=</span><span class="s">&quot;smx&quot;</span><span class="nt">/&gt;</span>&#x000A;    	<span class="nt">&lt;property</span> <span class="na">name=</span><span class="s">&quot;password&quot;</span> <span class="na">value=</span><span class="s">&quot;smx&quot;</span><span class="nt">/&gt;</span>&#x000A;    <span class="nt">&lt;/bean&gt;</span>&#x000A;&#x000A;<
 span class="nt">&lt;/blueprint&gt;</span>&#x000A;</pre></div>&#x000A;</div><p>Save this file in ServiceMix' <tt>deploy</tt> folder and use <tt>osgi:list</tt> to check on the bundle status as you did with the simple Camel example.  You should now be able to put files in the <tt>activemq/input</tt> directory and see them being moved to <tt>activemq/output</tt>.</p><h2 id="Receivingtheeventmessages">Receiving the event messages</h2><p>After deploying the first XML file, you're obviously not seeing any events being logged yet.  The event messages are sent to an ActiveMQ queue, but there's nobody to receive the events yet.  Let's change that now by creating a second Blueprint XML file.</p><div class="syntax"><div class="highlight"><pre><span class="cp">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;</span>&#x000A;<span class="nt">&lt;blueprint</span>&#x000A;    <span class="na">xmlns=</span><span class="s">&quot;http://www.osgi.org/xmlns/blueprint/v1.0.0&quot;</span>&#x0
 00A;    <span class="na">xmlns:xsi=</span><span class="s">&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span>&#x000A;    <span class="na">xsi:schemaLocation=</span><span class="s">&quot;</span>&#x000A;<span class="s">      http://www.osgi.org/xmlns/blueprint/v1.0.0</span>&#x000A;<span class="s">      http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd&quot;</span><span class="nt">&gt;</span>&#x000A;&#x000A;    <span class="nt">&lt;camelContext</span> <span class="na">xmlns=</span><span class="s">&quot;http://camel.apache.org/schema/blueprint&quot;</span><span class="nt">&gt;</span>&#x000A;      <span class="nt">&lt;route&gt;</span>&#x000A;        <span class="nt">&lt;from</span> <span class="na">uri=</span><span class="s">&quot;activemq://events&quot;</span><span class="nt">/&gt;</span>&#x000A;        <span class="nt">&lt;to</span> <span class="na">uri=</span><span class="s">&quot;log:events&quot;</span><span class="nt">/&gt;</span>&#x000A;      <span class="nt">&lt;/r
 oute&gt;</span>&#x000A;    <span class="nt">&lt;/camelContext&gt;</span>&#x000A;&#x000A;    <span class="nt">&lt;bean</span> <span class="na">id=</span><span class="s">&quot;activemq&quot;</span> <span class="na">class=</span><span class="s">&quot;org.apache.activemq.camel.component.ActiveMQComponent&quot;</span><span class="nt">&gt;</span>&#x000A;        <span class="nt">&lt;property</span> <span class="na">name=</span><span class="s">&quot;brokerURL&quot;</span> <span class="na">value=</span><span class="s">&quot;tcp://localhost:61616&quot;</span><span class="nt">/&gt;</span>&#x000A;    	<span class="nt">&lt;property</span> <span class="na">name=</span><span class="s">&quot;userName&quot;</span> <span class="na">value=</span><span class="s">&quot;smx&quot;</span><span class="nt">/&gt;</span>&#x000A;    	<span class="nt">&lt;property</span> <span class="na">name=</span><span class="s">&quot;password&quot;</span> <span class="na">value=</span><span class="s">&quot;smx&quot;</span><s
 pan class="nt">/&gt;</span>&#x000A;    <span class="nt">&lt;/bean&gt;</span>&#x000A;&#x000A;<span class="nt">&lt;/blueprint&gt;</span>&#x000A;</pre></div>&#x000A;</div><p>As soon as this second file has been deployed, you'll start seeing the event messages in your <tt>log:display</tt> output.</p><h2 id="Usingtheshelltomanagetheroutes">Using the shell to manage the routes</h2><p>You can now start and stop both routes from the command shell.  The important thing to note here is that you can stop the event handler route while files are being processed.  As soon as you restart that bundle afterwards, you'll receive the events from all files that have been moved while the route was not running.</p><h1 id="Optionalfeatures">Optional features</h1><p>Everything discussed in the quickstart guide so far is installed out-of-the-box in Apache ServiceMix, but we also have a lot of optional features that can be installed in the container when necessary.</p><h2 id="Listoffeatures">List of features
 </h2><p>The list of features is available with the <tt>features:list</tt> command.  The overview shows you whether or not the feature is currently installed, the version and the name of the feature.</p><p><img border="0" src="images/featureslist.png"/></p><p>The full list contains a lot of different features: optional Camel components, features for adding OBR or wrapper support to Serviceix, a web console, ...  Again, you can use things like {{</p>|}} and <tt>grep</tt> to find the things in the list that you're interested in.<div class="syntax"><div class="highlight"><pre>karaf@root&gt; features:list | grep camel&#x000A;</pre></div>&#x000A;</div><h2 id="ExampleWebconsole">Example: Web console</h2><p>To get the web console installed in ServiceMix, install the feature from your console</p><div class="syntax"><div class="highlight"><pre>karaf@root&gt; features:install webconsole&#x000A;</pre></div>&#x000A;</div><p>Afterwards, you can verify that the feature is marked installed in the o
 verview.  You'll notice that the <tt>webconsole-base</tt> feature has also been installed as a requirement for the <tt>webconsole</tt> feature itself.</p><div class="syntax"><div class="highlight"><pre>karaf@root&gt; features:list | grep webconsole&#x000A;</pre></div>&#x000A;</div><p><img border="0" src="images/featureslist-grep-webconsole.png"/></p><p>You will now be able to point your browser to http://localhost:8181/system/console and login with user <tt>smx</tt> and password <tt>smx</tt> to access the web console.  From the webconsole, you can also start and stop bundles, install optional features again, ...</p><h1 id="Wrappingitup...">Wrapping it up...</h1><p>This is where our introductory journey through the world of Apache ServiceMix ends.  We've obviously just scratched the surface of what is possible, but we hope you have an idea of what you can expect from Apache ServiceMix and how you can use it in your environment.</p><p>For more in-depth information, have a look at our 
 set of user guides.  Also, if you have any questions, we welcome you on our user mailing list!</p>
+    <h1 id="Introduction">Introduction</h1><p>First of all, welcome to the Apache ServiceMix project!</p><p>The goal of this Quickstart guide is to give you a 20-minute overview of what ServiceMix is and what you can do with it.  In that time, we'll install ServiceMix on your machine, deploy some basic integration routes and extend the container with an additional feature.</p><h1 id="Installation">Installation</h1><p>Before we can start working with Apache ServiceMix, we have to get it installed and running on our local machine first.</p><h2 id="Systemrequirements">System requirements</h2><p>For running Apache ServiceMix itself, you'll need</p><ul><li><p>Java Runtime Environment (JRE) 1.6.x (Java 6) or<br/>  Java Runtime Environment (JRE) 1.7.x (Java 7)</p></li><li><p>About 100 MB of free disk space for the default assembly</p></li></ul><p>If you're developing your own integration applications and OSGi bundles, you'll also need</p><ul><li><p>Java Developer Kit (JDK) 1.6.x (Java 6) o
 r<br/>  Java Developer Kit (JDK) 1.7.x (Java 7)</p></li><li><p>Apache Maven 3.0.4 or higher</p></li></ul><h2 id="DownloadingApacheServiceMix">Downloading Apache ServiceMix</h2><p>Apache ServiceMix 5.0.0-SNAPSHOT is available under the Apache License v2 and can be downloaded from <a href="http://servicemix.apache.org/downloads.html">http://servicemix.apache.org/downloads.html</a>.</p><p>Depending on your operation system, you should download either the tar.gz or the zip file:</p><ul><li><p><tt>tar.gz</tt> for Linux/Unix/MacOS X</p></li><li><p><tt>zip</tt> for Windows</p></li></ul><h2 id="InstallingApacheServiceMix">Installing Apache ServiceMix</h2><p>Installing Apache ServiceMix is as simple as uncompressing the downloaded archive on your hard disk.  For the rest of this guide, we'll refer to the this location as <strong><tt>&lt;SERVICEMIX_HOME></tt></strong>.</p><h2 id="StartingApacheServiceMix">Starting Apache ServiceMix</h2><p>Depending on your platform, start Apache ServiceMix by
  following the instructions below.  After starting the container, you will have access to the console from which you can manage the container.</p><h3 id="OnWindows">On Windows</h3><p>In a command prompt window, navigate to the directory where you extracted ServiceMix and run the <tt>bin\servicemix.bat</tt> file.</p><p>Example: if ServiceMix in installed in the <tt>c:\tools\apache-servicemix-5.0.0-SNAPSHOT</tt> directory</p><div class="syntax"><pre name='code' class='brush: bat; gutter: false;'><code>
+&gt; cd c:\tools\apache-servicemix-5.0.0-SNAPSHOT
+&gt; .\bin\servicemix</code></pre></div><p><img border="0" src="images/start-windows.png"/></p><h3 id="OnLinuxUnixMacOSX">On Linux/Unix/MacOS X</h3><p>On a command shell, navigate to the directory where you extracted ServiceMix and the <tt>bin/servicemix</tt> shell script</p><p>Example: if ServiceMix is installed in the <tt>~/Applications/apache-servicemix-5.0.0-SNAPSHOT</tt> directory.</p><div class="syntax"><pre name='code' class='brush: bash; gutter: false;'><code>
+$ cd ~/Applications/apache-servicemix-5.0.0-SNAPSHOT
+$ ./bin/servicemix</code></pre></div><p>!/quickstart/images/start-linux.png</p>|width=75%|height=75%!<h1 id="ApacheServiceMixconsole">Apache ServiceMix console</h1><p>Now that we successfully installed and started Apache ServiceMix, we'll take a closer look at the console.  This is where you manage your ServiceMix instance, add and remove bundles, install optional features, ...</p><h2 id="Workingwithbundles">Working with bundles</h2><p>When ServiceMix is first started, a whole set of bundles providing the core features for the product are being installed.  Let's use the command console to find out more about them...</p><p>The <tt>osgi:list</tt> command can be used to get a list of all bundles currently installed.  Enter this</p><div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; osgi:list</code></pre></div><p>This is what the output looks like if you run this on your ServiceMix instance.</p><p>!/quickstart/images/osgi-list.png</p>|title=osgi:list!<p>For every bundle, you see:</p><ul><li><p>the bundle id</p></li><li><p>the bundle state</p></li><li><p>if the bundle contains a Blueprint or Spring XML file, the next 2 columns will show you if the beans defined there were created successfully</p></li><li><p>the bundle start level</p></li><li><p>the bundle name and version</p></li></ul><p>If you're looking for something specific in the list, you can use unix-like pipes and utilities to help you.  An example: to look for all Camel related bundles...</p><div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; osgi:list | grep camel</code></pre></div><p>!/quickstart/images/osgi-list-pipegrep.png</p>|title=osgi:list!<h2 id="Workingwithlogging">Working with logging</h2><p>Many of the applications you write will have some form of log output.  To look at the message in the log file, you can us the <tt>log:diplay</tt> command.</p><div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; log:display</code></pre></div><p>!/quickstart/images/log-display.png</p>|title=log:display!<p>If you're only interested in the latest exception in the log file, you can use <tt>log:display-exception</tt> instead.</p><div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; log:display-exception</code></pre></div><p>!/quickstart/images/log-display-exception.png</p>|title=log:display-exception!<p>You can also change the log level at runtime by using the <tt>log:set</tt> command.  You can try these commands on your instance now by first setting the log level to <tt>DEBUG</tt> and then using <tt>grep</tt> to make sure that you can actually see the extra logging.</p><div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; log:set DEBUG
+karaf@root&gt; log:display | grep DEBUG</code></pre></div><p>!/quickstart/images/log-set-debug.png</p>|title=log:set DEBUG!<p>Afterwards, revert the log level to its original <tt>INFO</tt> value again with <tt>log:set</tt>.</p><div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; log:set INFO</code></pre></div><h2 id="...andtheresalotmore">...and there's a lot more</h2><p>These are obviously just a few examples of what the command shell is all about.  There are a lot more commands in the shell to help you deploy, monitor, manage and troubleshoot the applications you're building with ServiceMix.</p><h1 id="UsingCamel">Using Camel</h1><p>Now that we know how to operate Apache ServiceMix through the shell console, it's time to start using it for what it is built for.  Let's build our very first integration solution with a Camel route and deploy it on ServiceMix.</p><h2 id="Oursimplescenario">Our simple scenario</h2><p>In this simple scenario, we're going to move files from an input directory called <tt>camel/input</tt> to an output directory called <tt>camel/output</tt>.  To ensure we can keep track of which files get moved, we'll also write a message to the log file whenever we move a file.</p><h2 id="Creatingtheroute">Creating the route</h2><p>
 One of the most simple ways to deploy a new route on ServiceMix, is by defining the route in a Blueprint XML file.</p><div class="syntax"><pre name='code' class='brush: xml; gutter: false;'><code>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;blueprint
+    xmlns=&quot;http://www.osgi.org/xmlns/blueprint/v1.0.0&quot;
+    xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
+    xsi:schemaLocation=&quot;
+      http://www.osgi.org/xmlns/blueprint/v1.0.0
+      http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd&quot;&gt;
+
+    &lt;camelContext xmlns=&quot;http://camel.apache.org/schema/blueprint&quot;&gt;
+      &lt;route&gt;
+        &lt;from uri=&quot;file:camel/input&quot;/&gt;
+        &lt;log message=&quot;Moving ${file:name} to the output directory&quot;/&gt;
+        &lt;to uri=&quot;file:camel/output&quot;/&gt;
+      &lt;/route&gt;
+    &lt;/camelContext&gt;
+
+&lt;/blueprint&gt;</code></pre></div><h2 id="Deployingtheroute">Deploying the route</h2><p>In order to deploy and start the route, just copy the XML file you created into ServiceMix' <tt>deploy</tt> directory.  The file will get picked up and deployed by ServiceMix.  You will see a <tt>camel/input</tt> folder appear in your ServiceMix installation directory and any files you copy into that directory will get moved into the <tt>camel/output</tt> directory.</p><p>If you do a <tt>log:display</tt> in the shell, you will also see the log output for every file that's been moved.</p><p><img border="0" src="images/camel-sample-log.png"/></p><h2 id="Usingtheshelltomanagetheroute">Using the shell to manage the route</h2><p>Using <tt>osgi:list</tt>, you'll notice that your XML file has been transformed into a bundle and that the Blueprint container has been created to start your Camel route.</p><p><img border="0" src="images/camel-sample-deploy.png"/></p><p>From this output, you also learn tha
 t the bundle id for your XML file is 200.  This allow you to start and stop the route whenever necessary.  Let's give this a go now...</p><p>First, stop the route with</p><div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; osgi:stop 200</code></pre></div><p>The route is no longer active, so any files you copy into the <tt>orders/input</tt> folder will remain there for now.  As soon as you restart the route, the pending files will get moving again.</p><div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; osgi:start 200</code></pre></div><h1 id="AddingActiveMQtotheMix">Adding ActiveMQ to the 'Mix</h1><p>Out-of-the-box, every Apache ServiceMix instance comes with an embedded ActiveMQ JMS broker.  This makes it easy to communicate between Camel routes using persistent messages on the same machine, but it will also enable you to distribute your routes over multiple instances afterwards for clustering or load-balancing.</p><h2 id="Ourscenario">Our scenario</h2><p>In this scenario, we also want to move files between directories.  Instead of logging the move directly, we are going to send an event JMS message onto a queue.  Afterwards, we will create a second Camel route to receive the events and log them.</p><h2 id="Beforewestart">Before we start</h2><p>First, we have to install an optional feature to allow Camel send and receive JMS messages.  We'll talk about optional features a bit more in the next page of this quickstart guide, but for now, just run the following comman
 d in the console.</p><div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; features:install camel-jms</code></pre></div><h2 id="Movingfilesandsendingeventmessages">Moving files and sending event messages</h2><p>The first Blueprint XML file we'll create contains a Camel route that moves the files from <tt>activemq/input</tt> to the <tt>activemq/output</tt> directory.  Afterwards, it will generate an event message and send that to an ActiveMQ queue called <tt>events</tt>.</p><div class="syntax"><pre name='code' class='brush: xml; gutter: false;'><code>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;blueprint
+    xmlns=&quot;http://www.osgi.org/xmlns/blueprint/v1.0.0&quot;
+    xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
+    xsi:schemaLocation=&quot;
+      http://www.osgi.org/xmlns/blueprint/v1.0.0
+      http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd&quot;&gt;
+
+    &lt;camelContext xmlns=&quot;http://camel.apache.org/schema/blueprint&quot;&gt;
+      &lt;route&gt;
+        &lt;from uri=&quot;file:activemq/input&quot;/&gt;
+        &lt;to uri=&quot;file:activemq/output&quot;/&gt;
+
+        &lt;setBody&gt;
+          &lt;simple&gt;
+            FileMovedEvent(file: ${file:name}, timestamp: ${date:now:hh:MM:ss.SSS})
+          &lt;/simple&gt;
+        &lt;/setBody&gt;
+        &lt;to uri=&quot;activemq://events&quot; /&gt;
+      &lt;/route&gt;
+    &lt;/camelContext&gt;
+
+    &lt;bean id=&quot;activemq&quot; class=&quot;org.apache.activemq.camel.component.ActiveMQComponent&quot;&gt;
+        &lt;property name=&quot;brokerURL&quot; value=&quot;tcp://localhost:61616&quot;/&gt;
+    	&lt;property name=&quot;userName&quot; value=&quot;smx&quot;/&gt;
+    	&lt;property name=&quot;password&quot; value=&quot;smx&quot;/&gt;
+    &lt;/bean&gt;
+
+&lt;/blueprint&gt;</code></pre></div><p>Save this file in ServiceMix' <tt>deploy</tt> folder and use <tt>osgi:list</tt> to check on the bundle status as you did with the simple Camel example.  You should now be able to put files in the <tt>activemq/input</tt> directory and see them being moved to <tt>activemq/output</tt>.</p><h2 id="Receivingtheeventmessages">Receiving the event messages</h2><p>After deploying the first XML file, you're obviously not seeing any events being logged yet.  The event messages are sent to an ActiveMQ queue, but there's nobody to receive the events yet.  Let's change that now by creating a second Blueprint XML file.</p><div class="syntax"><pre name='code' class='brush: xml; gutter: false;'><code>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;blueprint
+    xmlns=&quot;http://www.osgi.org/xmlns/blueprint/v1.0.0&quot;
+    xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
+    xsi:schemaLocation=&quot;
+      http://www.osgi.org/xmlns/blueprint/v1.0.0
+      http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd&quot;&gt;
+
+    &lt;camelContext xmlns=&quot;http://camel.apache.org/schema/blueprint&quot;&gt;
+      &lt;route&gt;
+        &lt;from uri=&quot;activemq://events&quot;/&gt;
+        &lt;to uri=&quot;log:events&quot;/&gt;
+      &lt;/route&gt;
+    &lt;/camelContext&gt;
+
+    &lt;bean id=&quot;activemq&quot; class=&quot;org.apache.activemq.camel.component.ActiveMQComponent&quot;&gt;
+        &lt;property name=&quot;brokerURL&quot; value=&quot;tcp://localhost:61616&quot;/&gt;
+    	&lt;property name=&quot;userName&quot; value=&quot;smx&quot;/&gt;
+    	&lt;property name=&quot;password&quot; value=&quot;smx&quot;/&gt;
+    &lt;/bean&gt;
+
+&lt;/blueprint&gt;</code></pre></div><p>As soon as this second file has been deployed, you'll start seeing the event messages in your <tt>log:display</tt> output.</p><h2 id="Usingtheshelltomanagetheroutes">Using the shell to manage the routes</h2><p>You can now start and stop both routes from the command shell.  The important thing to note here is that you can stop the event handler route while files are being processed.  As soon as you restart that bundle afterwards, you'll receive the events from all files that have been moved while the route was not running.</p><h1 id="Optionalfeatures">Optional features</h1><p>Everything discussed in the quickstart guide so far is installed out-of-the-box in Apache ServiceMix, but we also have a lot of optional features that can be installed in the container when necessary.</p><h2 id="Listoffeatures">List of features</h2><p>The list of features is available with the <tt>features:list</tt> command.  The overview shows you whether or not the featu
 re is currently installed, the version and the name of the feature.</p><p><img border="0" src="images/featureslist.png"/></p><p>The full list contains a lot of different features: optional Camel components, features for adding OBR or wrapper support to Serviceix, a web console, ...  Again, you can use things like {{</p>|}} and <tt>grep</tt> to find the things in the list that you're interested in.<div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; features:list | grep camel</code></pre></div><h2 id="ExampleWebconsole">Example: Web console</h2><p>To get the web console installed in ServiceMix, install the feature from your console</p><div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; features:install webconsole</code></pre></div><p>Afterwards, you can verify that the feature is marked installed in the overview.  You'll notice that the <tt>webconsole-base</tt> feature has also been installed as a requirement for the <tt>webconsole</tt> feature itself.</p><div class="syntax"><pre name='code' class='brush: text; gutter: false;'><code>
+karaf@root&gt; features:list | grep webconsole</code></pre></div><p><img border="0" src="images/featureslist-grep-webconsole.png"/></p><p>You will now be able to point your browser to http://localhost:8181/system/console and login with user <tt>smx</tt> and password <tt>smx</tt> to access the web console.  From the webconsole, you can also start and stop bundles, install optional features again, ...</p><h1 id="Wrappingitup...">Wrapping it up...</h1><p>This is where our introductory journey through the world of Apache ServiceMix ends.  We've obviously just scratched the surface of what is possible, but we hope you have an idea of what you can expect from Apache ServiceMix and how you can use it in your environment.</p><p>For more in-depth information, have a look at our set of user guides.  Also, if you have any questions, we welcome you on our user mailing list!</p>
   </div>
 </body>
 </html>
\ No newline at end of file

Modified: servicemix/site/production/docs/5.0.x/quickstart/toc.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/quickstart/toc.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/quickstart/toc.html (original)
+++ servicemix/site/production/docs/5.0.x/quickstart/toc.html Fri May 16 21:50:31 2014
@@ -89,7 +89,7 @@
 </ul>
         </div>
         <div id="body">
-                    <ul>
+                              <ul>
     <li id="introduction">
         <a href="index.html">Introduction</a>
     </li>

Modified: servicemix/site/production/docs/5.0.x/user/index.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/user/index.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/user/index.html (original)
+++ servicemix/site/production/docs/5.0.x/user/index.html Fri May 16 21:50:31 2014
@@ -80,7 +80,7 @@
 </ul>
         </div>
         <div id="body">
-                    <p>Apache ServiceMix is a flexible, open-source integration container that unifies the features and functionality of<br/>Apache ActiveMQ, Camel, CXF and Karaf into a powerful runtime platform for building integrations solutions.</p><p><img border="0" src="../images/smx-overview.png"/></p><p>The goal of this document is to introduce you to the different components that are part of Apache ServiceMix and explain<br/>how and when they can be used together.</p><p>Table of contents:</p><ul><li><p><a href="what-is-smx4.html">What is (in) Apache ServiceMix 4</a></p></li><li><p><a href="technology-selection.html">Technology selection guidelines</a></p></li></ul>
+                              <p>Apache ServiceMix is a flexible, open-source integration container that unifies the features and functionality of<br/>Apache ActiveMQ, Camel, CXF and Karaf into a powerful runtime platform for building integrations solutions.</p><p><img border="0" src="../images/smx-overview.png"/></p><p>The goal of this document is to introduce you to the different components that are part of Apache ServiceMix and explain<br/>how and when they can be used together.</p><p>Table of contents:</p><ul><li><p><a href="what-is-smx4.html">What is (in) Apache ServiceMix 4</a></p></li><li><p><a href="technology-selection.html">Technology selection guidelines</a></p></li></ul>
         </div>
       
           </div>

Modified: servicemix/site/production/docs/5.0.x/user/technology-selection.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/user/technology-selection.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/user/technology-selection.html (original)
+++ servicemix/site/production/docs/5.0.x/user/technology-selection.html Fri May 16 21:50:31 2014
@@ -80,7 +80,7 @@
 </ul>
         </div>
         <div id="body">
-                    <h2 id="Technologyselectionguide">Technology selection guide</h2><p>ServiceMix 4 offers a set of different messaging and integration technologies:</p><ul><li><p>ActiveMQ</p></li><li><p>Camel</p></li><li><p>CXF</p></li><li><p>JBI</p></li><li><p>NMR</p></li></ul><p>Depending on the solution you're building, you want to select one or more of these technologies.  Below are some guidelines to help you pick the right mix for your problem.</p><h3 id="WhentouseCamel">When to use Camel?</h3><p>For any integration scenario, we recommend to start as simple as possible.  Camel allows you to build routes for integration scenario's quickly and efficiently.  You can deploy these routes directly on ServiceMix by deploying the plain Spring XML route or by packaging the route in an OSGi bundle.</p><p>As you need more (advanced) features, start combining Camel with ActiveMQ, CXF and/or the NMR</p><h3 id="WhentouseActiveMQ">When to use ActiveMQ?</h3><p>ActiveMQ is a JMS message brok
 er, featuring support for clustering, pluggable persistence mechanism, master-slave configuration for failover, ...</p><p>ServiceMix 4 includes an instance of the ActiveMQ broker, which can be combined with Camel to provide easy-to-use message persistence and reliable messaging.</p><p>After setting up multiple instances of ActiveMQ (or ServiceMix 4) on the network, you can configure ActiveMQ clustering or master-slave mode to allow for a more reliable and scalable set-up.</p><h3 id="WhentouseCXF">When to use CXF?</h3><p>CXF is an open-source services framework that you can use to suit your WS-* standards integration needs.  It allows you to use common programming APIs like JAX-RS or JAX-WS for building your own services and to expose them to the outside world.</p><p>You can use CXF from within your Camel routes with the Camel CXF component.</p><h3 id="WhentouseNMR">When to use NMR?</h3><p>The NMR provides the basic ESB features for ServiceMix 4.  You can use it to connect multiple c
 amel routes in a lightweight way.  It can also be used as a common transport on which you can add container-level auditing by registering your own ExchangeListener implementation.</p><h3 id="WhentouseJBI">When to use JBI?</h3><p>We still support JBI 1.0 in ServiceMix 4 so you can leverage your previous investments and move your existing JBI artifacts from ServiceMix 3 to the new container with no/minimal changes before migrating them to use Camel and/or CXF directly.  For new projects, you should consider JBI deprecated and always use Camel and/or CXF inside ServiceMix instead.</p>
+                              <h2 id="Technologyselectionguide">Technology selection guide</h2><p>ServiceMix 4 offers a set of different messaging and integration technologies:</p><ul><li><p>ActiveMQ</p></li><li><p>Camel</p></li><li><p>CXF</p></li><li><p>JBI</p></li><li><p>NMR</p></li></ul><p>Depending on the solution you're building, you want to select one or more of these technologies.  Below are some guidelines to help you pick the right mix for your problem.</p><h3 id="WhentouseCamel">When to use Camel?</h3><p>For any integration scenario, we recommend to start as simple as possible.  Camel allows you to build routes for integration scenario's quickly and efficiently.  You can deploy these routes directly on ServiceMix by deploying the plain Spring XML route or by packaging the route in an OSGi bundle.</p><p>As you need more (advanced) features, start combining Camel with ActiveMQ, CXF and/or the NMR</p><h3 id="WhentouseActiveMQ">When to use ActiveMQ?</h3><p>ActiveMQ is a JMS me
 ssage broker, featuring support for clustering, pluggable persistence mechanism, master-slave configuration for failover, ...</p><p>ServiceMix 4 includes an instance of the ActiveMQ broker, which can be combined with Camel to provide easy-to-use message persistence and reliable messaging.</p><p>After setting up multiple instances of ActiveMQ (or ServiceMix 4) on the network, you can configure ActiveMQ clustering or master-slave mode to allow for a more reliable and scalable set-up.</p><h3 id="WhentouseCXF">When to use CXF?</h3><p>CXF is an open-source services framework that you can use to suit your WS-* standards integration needs.  It allows you to use common programming APIs like JAX-RS or JAX-WS for building your own services and to expose them to the outside world.</p><p>You can use CXF from within your Camel routes with the Camel CXF component.</p><h3 id="WhentouseNMR">When to use NMR?</h3><p>The NMR provides the basic ESB features for ServiceMix 4.  You can use it to connect 
 multiple camel routes in a lightweight way.  It can also be used as a common transport on which you can add container-level auditing by registering your own ExchangeListener implementation.</p><h3 id="WhentouseJBI">When to use JBI?</h3><p>We still support JBI 1.0 in ServiceMix 4 so you can leverage your previous investments and move your existing JBI artifacts from ServiceMix 3 to the new container with no/minimal changes before migrating them to use Camel and/or CXF directly.  For new projects, you should consider JBI deprecated and always use Camel and/or CXF inside ServiceMix instead.</p>
         </div>
       
           </div>

Modified: servicemix/site/production/docs/5.0.x/user/toc.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/user/toc.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/user/toc.html (original)
+++ servicemix/site/production/docs/5.0.x/user/toc.html Fri May 16 21:50:31 2014
@@ -80,7 +80,7 @@
 </ul>
         </div>
         <div id="body">
-                    <ul>
+                              <ul>
     <li id="introduction">
         <a href="index.html">Introduction</a>
     </li>

Modified: servicemix/site/production/docs/5.0.x/user/what-is-smx4.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/user/what-is-smx4.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/user/what-is-smx4.html (original)
+++ servicemix/site/production/docs/5.0.x/user/what-is-smx4.html Fri May 16 21:50:31 2014
@@ -80,7 +80,7 @@
 </ul>
         </div>
         <div id="body">
-                    <h2 id="WhatisServiceMix4">What is ServiceMix 4?</h2><p>Apache ServiceMix is an open source ESB (Enterprise Service Bus) that combines the functionality of a Service Oriented Architecture (SOA) and the modularity. The adoption of a Service Bus allows to decouple the applicatons together and reduce dependencies. Messages are used to wired the applications (=services) and/or connectors to exchange information using different protocols or communications mode like FTP, HTTP, WebServices, ...</p><p>This new version of Apache ServiceMix is more than an evolution of the previous as the kernel of the platform has been completety rewritten and is designed top of the OSGI specification. Using OSGI framework brings a new important feature for SOA development : modularity. That means that we can handle classloading and application lifecycle differently between the components.</p><p>ServiceMix is lightweight and easily embeddable, has integrated Spring support and can be run 
 at the edge of the network (inside a client or server), as a standalone ESB provider or as a service within another ESB. You can use ServiceMix in Java SE or Java EE application server.</p><h3 id="Platformpresentation">Platform presentation</h3><p>Apache ServiceMix is an distributed ESB built from the ground up on the Java Business Integration (JBI) specification JSR 208 and released under the Apache license. The goal of JBI is to allow components and services to be integrated in a vendor independent way, allowing users and vendors to plug and play.</p><p>ServiceMix uses ActiveMQ to provide remoting, clustering, reliability and distributed failover.</p><p>ServiceMix is completely integrated into Apache Geronimo, which allows you to deploy JBI components and services directly into Geronimo. ServiceMix is being JBI certified as part of the Geronimo project.</p><p>ServiceMix can be embedded into a JEE application server such as JBoss, Oracle Weblogic or IBM Websphere.</p><p>ServiceMix 
 includes a complete JBI container supporting all parts of the JBI specification including:</p><ul><li><p>NMR (Normalized Message Router)&lt;/para></p></li><li><p>JBI Management MBeans</p></li><li><p>full support for the JBI deployment units with hot-deployment of JBI components</p></li></ul><p>ServiceMix also provides a simple to use client API for working with JBI components and services.</p><p>ServiceMix includes many JBI components including HTTP, JMX, CXF, BPEL, etc.</p><h3 id="OSGiforDummies">OSGi for Dummies</h3><p><a href="http://www.osgi.org/About/Technology">OSGi technology</a> is the dynamic module system for <a href="http://www.oracle.com/technetwork/java/index.html">Java</a>. The OSGi Service Platform provides functionality to Java that makes Java the premier environment for software integration and thus for development. Java provides the portability that is required to support products on many different platforms. The OSGi technology provides the standardized primitives
  that allow applications to be constructed from small, reusable and collaborative components. These components can be composed into an application and deployed.</p><p>The OSGi Service Platform provides the functions to change the composition dynamically on the device of a variety of networks, without requiring restarts. To minimize the coupling, as well as make these couplings managed, the OSGi technology provides a service-oriented architecture that enables these components to dynamically discover each other for collaboration. The OSGi Alliance has developed many standard component interfaces for common functions like HTTP servers, configuration, logging, security, user administration, XML and many more. Plug-compatible implementations of these components can be obtained from different vendors with different optimizations and costs. However, service interfaces can also be developed on a proprietary basis.</p><p>OSGi technology adopters benefit from improved time-to-market and reduc
 ed development costs because OSGi technology provides for the integration of pre-built and pre-tested component subsystems. The technology also reduces maintenance costs and enables unique new aftermarket opportunities because components can be dynamically delivered to devices in the field.</p><p>For more information, check out the <a href="http://www.osgi.org/Main/HomePage">OSGi Alliance website</a></p><h3 id="PoweredbyApacheKaraf">Powered by Apache Karaf</h3><p>Apache ServiceMix is based on <a href="http://karaf.apache.org/">Apache Karaf</a>. Apache Karaf is a small <a href="http://www.osgi.org/Main/HomePage">OSGi-based</a> runtime which provides a lightweight container onto which various components and applications can be deployed.</p><p>Here is a short list of features supported by the Karaf:</p><p>Hot deployment: Karaf supports hot deployment of OSGi bundles by monitoring jar files inside the $home/deploy directory. Each time a jar is copied in this folder, it will be installed
  inside the runtime. You can then update or delete it and changes will be handled automatically. In addition, the Karaf also supports exploded bundles and custom deployers (blueprint and spring ones are included by default).</p><p>Dynamic configuration: Services are usually configured through the ConfigurationAdmin OSGi service. Such configuration can be defined in Karaf using property files inside the $home/etc directory. These configurations are monitored and changes on the properties files will be propagated to the services.</p><p>Logging System: using a centralized logging back end supported by Log4J, Karaf supports a number of different APIs (JDK 1.4, JCL, SLF4J, Avalon, Tomcat, OSGi)</p><p>Provisioning: Provisioning of libraries or applications can be done through a number of different ways, by which they will be downloaded locally, installed and started.</p><p>Native OS integration: Karaf can be integrated into your own Operating System as a service so that the lifecycle will
  be bound to your Operating System.</p><p>Extensible Shell console: Karaf features a nice text console where you can manage the services, install new applications or libraries and manage their state. This shell is easily extensible by deploying new commands dynamically along with new features or applications.</p><p>Remote access: use any SSH client to connect to Karaf and issue commands in the console </p><p>Security framework based on JAAS</p><p>Managing instances: Karaf provides simple commands for managing multiple instances. You can easily create, delete, start and stop instances of Karaf through the console.</p><p>For more information, check out the <a href="http://karaf.apache.org/">Apache Karaf project page</a></p><h3 id="JBIContainerampIntegrationwithOSGI">JBI Container &amp;Integration with OSGI</h3><p>// TODO: write this bit</p><h3 id="NormalizedMessageRouter">Normalized Message Router</h3><p>The Normalized Message Router (NMR) is a general-purpose message bus used for com
 munication between bundles in the OSGi container.<br/>It's modeled after the Normalized Message Router (NMR) defined in the Java Business Integration (JBI) specification (<a href="http://www.jcp.org/en/jsr/detail?id=208">http://www.jcp.org/en/jsr/detail?id=208</a>).</p><p>It can be used to transport XML messages as well as other message body types, optionally augumented with headers and attachments.</p><p>For more information, check out the <a href="../nmr/index.html">Using the Normalized Message Router User Guide</a></p><h3 id="ApacheCamel">Apache Camel</h3><p>Apache Camel is a powerful open source integration framework based on known <a href="http://camel.apache.org/enterprise-integration-patterns.html">Enterprise Integration Patterns</a> with powerful <a href="http://camel.apache.org/bean-integration.html">Bean Integration</a>.</p><p>Apache Camel lets you create the <a href="http://camel.apache.org/enterprise-integration-patterns.html">Enterprise Integration Patterns</a> to imple
 ment routing and mediation rules in either a Java based <a href="http://camel.apache.org/dsl.html">Domain Specific Language (or Fluent API)</a>, via <a href="http://camel.apache.org/spring.html">Spring based Xml Configuration</a> files or via the <a href="http://camel.apache.org/scala-dsl.html">Scala DSL</a>.</p><p>For more information, check out the <a href="../camel/index.html">Using Apache Camel in ServiceMix User Guide</a>.</p><h3 id="Servicesproposed">Services proposed</h3><p>// TODO: write this bit</p><h4 id="MessageBrokerApacheActiveMQ">Message Broker : Apache ActiveMQ</h4><p>Apache ServiceMix ships with an embedded instance of <a href="http://activemq.apache.org">Apache ActiveMQ</a> out-of-the-box.</p><p>It is a fully functional Apache ActiveMQ message broker instance listening for <a href="http://activemq.apache.org/openwire.html">TCP</a> connections on port 61616 and <a href="http://activemq.apache.org/stomp.html">STOMP</a> connections on port 61613.</p><p>The <a href="htt
 p://activemq.apache.org/xml-configuration.html">default configuration for the Apache ActiveMQ</a> message broker resides in the ServiceMix installation directory under the etc sub-directory. The ActiveMQ configuration file is named activemq-broker.xml. It's configured with reasonable default information like <a href="http://activemq.apache.org/persistence.html">Persistence (KahaDB)</a> and <a href="http://activemq.apache.org/producer-flow-control.html">Producer Flow Control</a> (essentially to make sure the broker does not run out of memory).</p><p>The configuration file also makes use of a reusable connection pool available to all OSGi bundles exposing a <a href="http://docs.oracle.com/javaee/1.4/api/javax/jms/ConnectionFactory.html">javax.jms.ConnectionFactory</a> as a service for consumption. You can re-use this connection pool via tools such as <a href="http://activemq.apache.org/osgi-integration.html">spring-dm or blueprint</a>.</p><p>The ActiveMQ message broker allows several 
 components such as servicemix-cluster, <a href="http://camel.apache.org/jms.html">camel-jms</a>, <a href="http://camel.apache.org/activemq.html">camel-activemq</a>, <a href="http://cxf.apache.org/docs/jms-transport.html">cxf-jms transport</a> to be utilized without any additional configuration.</p><h4 id="TransactionGeronimoTransactionManager">Transaction : Geronimo Transaction Manager</h4><p>// TODO: write this bit</p><h4 id="RoutingandMediationApacheCamel">Routing and Mediation : Apache Camel</h4><h4 id="WebServicesApacheCXF">Web Services : Apache CXF</h4><p>// TODO: write this bit</p><h4 id="WebContainer">Web Container</h4><p>// TODO: write this bit</p><h4 id="SOAplatform">SOA platform</h4><p>// TODO: write this bit</p><h5 id="SpringDMcontainer">Spring DM container</h5><p>// TODO: write this bit</p><h5 id="BlueprintOSGIcontainer">Blueprint OSGI container</h5><p>// TODO: write this bit</p><h5 id="EJBContainer">EJB Container</h5><p>// TODO: write this bit</p>
+                              <h2 id="WhatisServiceMix4">What is ServiceMix 4?</h2><p>Apache ServiceMix is an open source ESB (Enterprise Service Bus) that combines the functionality of a Service Oriented Architecture (SOA) and the modularity. The adoption of a Service Bus allows to decouple the applicatons together and reduce dependencies. Messages are used to wired the applications (=services) and/or connectors to exchange information using different protocols or communications mode like FTP, HTTP, WebServices, ...</p><p>This new version of Apache ServiceMix is more than an evolution of the previous as the kernel of the platform has been completety rewritten and is designed top of the OSGI specification. Using OSGI framework brings a new important feature for SOA development : modularity. That means that we can handle classloading and application lifecycle differently between the components.</p><p>ServiceMix is lightweight and easily embeddable, has integrated Spring support and c
 an be run at the edge of the network (inside a client or server), as a standalone ESB provider or as a service within another ESB. You can use ServiceMix in Java SE or Java EE application server.</p><h3 id="Platformpresentation">Platform presentation</h3><p>Apache ServiceMix is an distributed ESB built from the ground up on the Java Business Integration (JBI) specification JSR 208 and released under the Apache license. The goal of JBI is to allow components and services to be integrated in a vendor independent way, allowing users and vendors to plug and play.</p><p>ServiceMix uses ActiveMQ to provide remoting, clustering, reliability and distributed failover.</p><p>ServiceMix is completely integrated into Apache Geronimo, which allows you to deploy JBI components and services directly into Geronimo. ServiceMix is being JBI certified as part of the Geronimo project.</p><p>ServiceMix can be embedded into a JEE application server such as JBoss, Oracle Weblogic or IBM Websphere.</p><p>S
 erviceMix includes a complete JBI container supporting all parts of the JBI specification including:</p><ul><li><p>NMR (Normalized Message Router)&lt;/para></p></li><li><p>JBI Management MBeans</p></li><li><p>full support for the JBI deployment units with hot-deployment of JBI components</p></li></ul><p>ServiceMix also provides a simple to use client API for working with JBI components and services.</p><p>ServiceMix includes many JBI components including HTTP, JMX, CXF, BPEL, etc.</p><h3 id="OSGiforDummies">OSGi for Dummies</h3><p><a href="http://www.osgi.org/About/Technology">OSGi technology</a> is the dynamic module system for <a href="http://www.oracle.com/technetwork/java/index.html">Java</a>. The OSGi Service Platform provides functionality to Java that makes Java the premier environment for software integration and thus for development. Java provides the portability that is required to support products on many different platforms. The OSGi technology provides the standardized 
 primitives that allow applications to be constructed from small, reusable and collaborative components. These components can be composed into an application and deployed.</p><p>The OSGi Service Platform provides the functions to change the composition dynamically on the device of a variety of networks, without requiring restarts. To minimize the coupling, as well as make these couplings managed, the OSGi technology provides a service-oriented architecture that enables these components to dynamically discover each other for collaboration. The OSGi Alliance has developed many standard component interfaces for common functions like HTTP servers, configuration, logging, security, user administration, XML and many more. Plug-compatible implementations of these components can be obtained from different vendors with different optimizations and costs. However, service interfaces can also be developed on a proprietary basis.</p><p>OSGi technology adopters benefit from improved time-to-market
  and reduced development costs because OSGi technology provides for the integration of pre-built and pre-tested component subsystems. The technology also reduces maintenance costs and enables unique new aftermarket opportunities because components can be dynamically delivered to devices in the field.</p><p>For more information, check out the <a href="http://www.osgi.org/Main/HomePage">OSGi Alliance website</a></p><h3 id="PoweredbyApacheKaraf">Powered by Apache Karaf</h3><p>Apache ServiceMix is based on <a href="http://karaf.apache.org/">Apache Karaf</a>. Apache Karaf is a small <a href="http://www.osgi.org/Main/HomePage">OSGi-based</a> runtime which provides a lightweight container onto which various components and applications can be deployed.</p><p>Here is a short list of features supported by the Karaf:</p><p>Hot deployment: Karaf supports hot deployment of OSGi bundles by monitoring jar files inside the $home/deploy directory. Each time a jar is copied in this folder, it will be
  installed inside the runtime. You can then update or delete it and changes will be handled automatically. In addition, the Karaf also supports exploded bundles and custom deployers (blueprint and spring ones are included by default).</p><p>Dynamic configuration: Services are usually configured through the ConfigurationAdmin OSGi service. Such configuration can be defined in Karaf using property files inside the $home/etc directory. These configurations are monitored and changes on the properties files will be propagated to the services.</p><p>Logging System: using a centralized logging back end supported by Log4J, Karaf supports a number of different APIs (JDK 1.4, JCL, SLF4J, Avalon, Tomcat, OSGi)</p><p>Provisioning: Provisioning of libraries or applications can be done through a number of different ways, by which they will be downloaded locally, installed and started.</p><p>Native OS integration: Karaf can be integrated into your own Operating System as a service so that the life
 cycle will be bound to your Operating System.</p><p>Extensible Shell console: Karaf features a nice text console where you can manage the services, install new applications or libraries and manage their state. This shell is easily extensible by deploying new commands dynamically along with new features or applications.</p><p>Remote access: use any SSH client to connect to Karaf and issue commands in the console </p><p>Security framework based on JAAS</p><p>Managing instances: Karaf provides simple commands for managing multiple instances. You can easily create, delete, start and stop instances of Karaf through the console.</p><p>For more information, check out the <a href="http://karaf.apache.org/">Apache Karaf project page</a></p><h3 id="JBIContainerampIntegrationwithOSGI">JBI Container &amp;Integration with OSGI</h3><p>// TODO: write this bit</p><h3 id="NormalizedMessageRouter">Normalized Message Router</h3><p>The Normalized Message Router (NMR) is a general-purpose message bus us
 ed for communication between bundles in the OSGi container.<br/>It's modeled after the Normalized Message Router (NMR) defined in the Java Business Integration (JBI) specification (<a href="http://www.jcp.org/en/jsr/detail?id=208">http://www.jcp.org/en/jsr/detail?id=208</a>).</p><p>It can be used to transport XML messages as well as other message body types, optionally augumented with headers and attachments.</p><p>For more information, check out the <a href="../nmr/index.html">Using the Normalized Message Router User Guide</a></p><h3 id="ApacheCamel">Apache Camel</h3><p>Apache Camel is a powerful open source integration framework based on known <a href="http://camel.apache.org/enterprise-integration-patterns.html">Enterprise Integration Patterns</a> with powerful <a href="http://camel.apache.org/bean-integration.html">Bean Integration</a>.</p><p>Apache Camel lets you create the <a href="http://camel.apache.org/enterprise-integration-patterns.html">Enterprise Integration Patterns</a
 > to implement routing and mediation rules in either a Java based <a href="http://camel.apache.org/dsl.html">Domain Specific Language (or Fluent API)</a>, via <a href="http://camel.apache.org/spring.html">Spring based Xml Configuration</a> files or via the <a href="http://camel.apache.org/scala-dsl.html">Scala DSL</a>.</p><p>For more information, check out the <a href="../camel/index.html">Using Apache Camel in ServiceMix User Guide</a>.</p><h3 id="Servicesproposed">Services proposed</h3><p>// TODO: write this bit</p><h4 id="MessageBrokerApacheActiveMQ">Message Broker : Apache ActiveMQ</h4><p>Apache ServiceMix ships with an embedded instance of <a href="http://activemq.apache.org">Apache ActiveMQ</a> out-of-the-box.</p><p>It is a fully functional Apache ActiveMQ message broker instance listening for <a href="http://activemq.apache.org/openwire.html">TCP</a> connections on port 61616 and <a href="http://activemq.apache.org/stomp.html">STOMP</a> connections on port 61613.</p><p>The <a
  href="http://activemq.apache.org/xml-configuration.html">default configuration for the Apache ActiveMQ</a> message broker resides in the ServiceMix installation directory under the etc sub-directory. The ActiveMQ configuration file is named activemq-broker.xml. It's configured with reasonable default information like <a href="http://activemq.apache.org/persistence.html">Persistence (KahaDB)</a> and <a href="http://activemq.apache.org/producer-flow-control.html">Producer Flow Control</a> (essentially to make sure the broker does not run out of memory).</p><p>The configuration file also makes use of a reusable connection pool available to all OSGi bundles exposing a <a href="http://docs.oracle.com/javaee/1.4/api/javax/jms/ConnectionFactory.html">javax.jms.ConnectionFactory</a> as a service for consumption. You can re-use this connection pool via tools such as <a href="http://activemq.apache.org/osgi-integration.html">spring-dm or blueprint</a>.</p><p>The ActiveMQ message broker allow
 s several components such as servicemix-cluster, <a href="http://camel.apache.org/jms.html">camel-jms</a>, <a href="http://camel.apache.org/activemq.html">camel-activemq</a>, <a href="http://cxf.apache.org/docs/jms-transport.html">cxf-jms transport</a> to be utilized without any additional configuration.</p><h4 id="TransactionGeronimoTransactionManager">Transaction : Geronimo Transaction Manager</h4><p>// TODO: write this bit</p><h4 id="RoutingandMediationApacheCamel">Routing and Mediation : Apache Camel</h4><h4 id="WebServicesApacheCXF">Web Services : Apache CXF</h4><p>// TODO: write this bit</p><h4 id="WebContainer">Web Container</h4><p>// TODO: write this bit</p><h4 id="SOAplatform">SOA platform</h4><p>// TODO: write this bit</p><h5 id="SpringDMcontainer">Spring DM container</h5><p>// TODO: write this bit</p><h5 id="BlueprintOSGIcontainer">Blueprint OSGI container</h5><p>// TODO: write this bit</p><h5 id="EJBContainer">EJB Container</h5><p>// TODO: write this bit</p>
         </div>
       
           </div>

Modified: servicemix/site/production/docs/5.0.x/users-guide/child-instances.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/users-guide/child-instances.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/users-guide/child-instances.html (original)
+++ servicemix/site/production/docs/5.0.x/users-guide/child-instances.html Fri May 16 21:50:31 2014
@@ -113,7 +113,7 @@
 
         </div>
         <div id="body">
-                    <h1 id="Managingchildinstances">Managing child instances</h1><p>A child instance of Karaf is a copy that you can launch separately and deploy applications into.  An instance does not contain the full copy of Karaf, but only a copy of the configuration files and data folder which contains all the runtime information, logs and temporary files.</p><h2 id="Usingtheadminconsolecommands">Using the admin console commands</h2><p>The <strong>admin</strong> console commands allow you to create and manage instances of Karaf on the same machine.  Each new runtime is a child instance of the runtime that created it.  You can easily manage the children using names instead of network addresses.   For details on the <strong>admin</strong> commands, see the <a href="../commands/admin.html"><tt>admin</tt> commands</a>.</p> <h2 id="Creatingchildinstances">Creating child instances</h2><p>You create a new runtime instance by typing <a href="../commands/admin-create.html"><tt>admin:cre
 ate</tt></a> in the Karaf console.</p><p>As shown in the following example, <tt>admin:create</tt> causes the runtime to create a new runtime installation in the active runtime's {{instances/<a href="name.html">name</a>} directory.  The new instance is a new Karaf instance and is assigned an SSH port number based on an incremental count starting at 8101 and a RMI registry port number based on an incremental count starting at 1099/44444.</p><pre>
+                              <h1 id="Managingchildinstances">Managing child instances</h1><p>A child instance of Karaf is a copy that you can launch separately and deploy applications into.  An instance does not contain the full copy of Karaf, but only a copy of the configuration files and data folder which contains all the runtime information, logs and temporary files.</p><h2 id="Usingtheadminconsolecommands">Using the admin console commands</h2><p>The <strong>admin</strong> console commands allow you to create and manage instances of Karaf on the same machine.  Each new runtime is a child instance of the runtime that created it.  You can easily manage the children using names instead of network addresses.   For details on the <strong>admin</strong> commands, see the <a href="../commands/admin.html"><tt>admin</tt> commands</a>.</p> <h2 id="Creatingchildinstances">Creating child instances</h2><p>You create a new runtime instance by typing <a href="../commands/admin-create.html"><tt
 >admin:create</tt></a> in the Karaf console.</p><p>As shown in the following example, <tt>admin:create</tt> causes the runtime to create a new runtime installation in the active runtime's {{instances/<a href="name.html">name</a>} directory.  The new instance is a new Karaf instance and is assigned an SSH port number based on an incremental count starting at 8101 and a RMI registry port number based on an incremental count starting at 1099/44444.</p><pre>
 karaf@root> admin:create alpha 
 Creating new instance on SSH port 8102 and RMI ports 1100/44445 at: /x3/karaf/test/apache-karaf-2.2.4/instances/alpha
 Creating dir:  /x3/karaf/test/apache-karaf-2.2.4/instances/alpha/bin

Modified: servicemix/site/production/docs/5.0.x/users-guide/configuration.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/users-guide/configuration.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/users-guide/configuration.html (original)
+++ servicemix/site/production/docs/5.0.x/users-guide/configuration.html Fri May 16 21:50:31 2014
@@ -113,7 +113,7 @@
 
         </div>
         <div id="body">
-                    <h1 id="Configuration">Configuration</h1><p>The files in the <tt>etc</tt> directory are used to set the startup configuration.  </p><p>For dynamic configuration, Karaf provides a suite of command to administer the configuration service grouped under <tt>config</tt>. To learn about all currently supported configuration commands type:</p><div class="table-wrap"><table class="confluenceTable"><tr><th class="confluenceTh"> Command                                </th><th class="confluenceTh"> Description   </th></tr><tr><td class="confluenceTd"> <a href="../commands/config-cancel.html"><tt>cancel</tt></a>     </td><td class="confluenceTd"> Change the changes to the configuration being edited. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-edit.html"><tt>edit</tt></a>         </td><td class="confluenceTd"> Create or edit a configuration. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-list.html"><tt>list</tt></a>         </td><t
 d class="confluenceTd"> List existing configurations. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-propdel.html"><tt>propdel</tt></a>   </td><td class="confluenceTd"> Delete a property from the edited configuration. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-proplist.html"><tt>proplist</tt></a> </td><td class="confluenceTd"> List properties from the edited configuration. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-propset.html"><tt>propset</tt></a>   </td><td class="confluenceTd"> Set a property on the edited configuration. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-update.html"><tt>update</tt></a>     </td><td class="confluenceTd"> Save and propagate changes from the configuration being edited. </td></tr></table></div><h2 id="Editing">Editing</h2><h3 id="SelectConfigurationToEdit">Select Configuration To Edit</h3><p>For example to edit configuration <tt>foo.bar</tt>:</p><pre>
+                              <h1 id="Configuration">Configuration</h1><p>The files in the <tt>etc</tt> directory are used to set the startup configuration.  </p><p>For dynamic configuration, Karaf provides a suite of command to administer the configuration service grouped under <tt>config</tt>. To learn about all currently supported configuration commands type:</p><div class="table-wrap"><table class="confluenceTable"><tr><th class="confluenceTh"> Command                                </th><th class="confluenceTh"> Description   </th></tr><tr><td class="confluenceTd"> <a href="../commands/config-cancel.html"><tt>cancel</tt></a>     </td><td class="confluenceTd"> Change the changes to the configuration being edited. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-edit.html"><tt>edit</tt></a>         </td><td class="confluenceTd"> Create or edit a configuration. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-list.html"><tt>list</tt></a>      
    </td><td class="confluenceTd"> List existing configurations. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-propdel.html"><tt>propdel</tt></a>   </td><td class="confluenceTd"> Delete a property from the edited configuration. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-proplist.html"><tt>proplist</tt></a> </td><td class="confluenceTd"> List properties from the edited configuration. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-propset.html"><tt>propset</tt></a>   </td><td class="confluenceTd"> Set a property on the edited configuration. </td></tr><tr><td class="confluenceTd"> <a href="../commands/config-update.html"><tt>update</tt></a>     </td><td class="confluenceTd"> Save and propagate changes from the configuration being edited. </td></tr></table></div><h2 id="Editing">Editing</h2><h3 id="SelectConfigurationToEdit">Select Configuration To Edit</h3><p>For example to edit configuration <tt>foo.bar</tt>:</p><pre>
 karaf@root> config:edit foo.bar
 </pre><h3 id="ModifyProperties">Modify Properties</h3><p>Use:</p> <p> * <a href="../commands/config-proplist.html"><tt>config:proplist</tt></a> to list existing properties<br/> * <a href="../commands/config-propdel.html"><tt>config:propdel</tt></a> to delete existing properties<br/> * <a href="../commands/config-propset.html"><tt>config:propset</tt></a> to set a new value for a property</p><p>Any number of properties can be modified within a single editing session. </p><h3 id="CommitOrRollbackChanges">Commit Or Rollback Changes</h3><p>Use</p><p> * <a href="../commands/config-update.html"><tt>config:update</tt></a> to commit all changes made in the current session<br/> * <a href="../commands/config-cancel.html"><tt>config:cancel</tt></a> to roll back any changes made in the current session</p>
         </div>

Modified: servicemix/site/production/docs/5.0.x/users-guide/deployer.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/users-guide/deployer.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/users-guide/deployer.html (original)
+++ servicemix/site/production/docs/5.0.x/users-guide/deployer.html Fri May 16 21:50:31 2014
@@ -113,7 +113,7 @@
 
         </div>
         <div id="body">
-                    <h1 id="Deployer">Deployer</h1><p>The following picture describes the architecture of the deployer.</p><p><img border="0" src="../images/deployer.png"/></p><h2 id="Blueprintdeployer">Blueprint deployer</h2><p>Karaf includes a deployer that is able to deploy plain blueprint configuration files.<br/>The deployer will transform on the fly any spring configuration file dropped into the <tt>deploy</tt> folder into a valid OSGi bundle.</p><p>The generated OSGi manifest will contain the following headers:</p><pre>
+                              <h1 id="Deployer">Deployer</h1><p>The following picture describes the architecture of the deployer.</p><p><img border="0" src="../images/deployer.png"/></p><h2 id="Blueprintdeployer">Blueprint deployer</h2><p>Karaf includes a deployer that is able to deploy plain blueprint configuration files.<br/>The deployer will transform on the fly any spring configuration file dropped into the <tt>deploy</tt> folder into a valid OSGi bundle.</p><p>The generated OSGi manifest will contain the following headers:</p><pre>
 Manifest-Version: 2
 Bundle-SymbolicName: [name of the file]
 Bundle-Version: [version of the file]

Modified: servicemix/site/production/docs/5.0.x/users-guide/directory-structure.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/users-guide/directory-structure.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/users-guide/directory-structure.html (original)
+++ servicemix/site/production/docs/5.0.x/users-guide/directory-structure.html Fri May 16 21:50:31 2014
@@ -113,7 +113,7 @@
 
         </div>
         <div id="body">
-                    <h1 id="Directorystructure">Directory structure</h1><p>The directory layout of a Karaf installation is as follows:</p><ul><li><p><tt>/bin</tt>: startup scripts</p></li><li><p><tt>/etc</tt>: configuration files</p></li><li><p><tt>/data</tt>: working directory </p><ul><li><p><tt>/cache</tt>: OSGi framework bundle cache</p></li><li><p><tt>/generated-bundles</tt>: temporary folder used by the deployer</p></li><li><p><tt>/log</tt>: log files</p></li></ul></li><li><p><tt>/deploy</tt>: hot deploy directory</p></li><li><p><tt>/instances</tt>: directory containing <a href="child-instances.html">child instances</a></p></li><li><p><tt>/lib</tt>: contains the bootstrap libraries</p><ul><li><p><tt>/lib/ext</tt>: directory for JRE extensions</p></li><li><p><tt>/lib/endorsed</tt>: directory for endorsed libraries</p></li></ul></li><li><p><tt>/system</tt>: OSGi bundles repository, laid out as a Maven 2 repository</p></li></ul><div class="tip" style="border: 1px solid #090;backgr
 ound-color: #dfd;margin: 20px;padding: 0px 6px 0px 6px;"><p>The <tt>data</tt> folder contains all the working and temporary files for Karaf.  If you want to restart from a clean state, you can wipe out this directory, which has the same effect as <a href="start-stop#Starting Karaf from clean.html">using the clean option</a>.</p></div>	
+                              <h1 id="Directorystructure">Directory structure</h1><p>The directory layout of a Karaf installation is as follows:</p><ul><li><p><tt>/bin</tt>: startup scripts</p></li><li><p><tt>/etc</tt>: configuration files</p></li><li><p><tt>/data</tt>: working directory </p><ul><li><p><tt>/cache</tt>: OSGi framework bundle cache</p></li><li><p><tt>/generated-bundles</tt>: temporary folder used by the deployer</p></li><li><p><tt>/log</tt>: log files</p></li></ul></li><li><p><tt>/deploy</tt>: hot deploy directory</p></li><li><p><tt>/instances</tt>: directory containing <a href="child-instances.html">child instances</a></p></li><li><p><tt>/lib</tt>: contains the bootstrap libraries</p><ul><li><p><tt>/lib/ext</tt>: directory for JRE extensions</p></li><li><p><tt>/lib/endorsed</tt>: directory for endorsed libraries</p></li></ul></li><li><p><tt>/system</tt>: OSGi bundles repository, laid out as a Maven 2 repository</p></li></ul><div class="tip" style="border: 1px solid #
 090;background-color: #dfd;margin: 20px;padding: 0px 6px 0px 6px;"><p>The <tt>data</tt> folder contains all the working and temporary files for Karaf.  If you want to restart from a clean state, you can wipe out this directory, which has the same effect as <a href="start-stop#Starting Karaf from clean.html">using the clean option</a>.</p></div>	
         </div>
       
           </div>

Modified: servicemix/site/production/docs/5.0.x/users-guide/failover.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/users-guide/failover.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/users-guide/failover.html (original)
+++ servicemix/site/production/docs/5.0.x/users-guide/failover.html Fri May 16 21:50:31 2014
@@ -113,7 +113,7 @@
 
         </div>
         <div id="body">
-                    <h1 id="FailoverDeployments">Failover Deployments</h1><p>Karaf provides failover capability using either a simple lock file system or a JDBC locking mechanism. In both cases, a container-level lock system allows bundles to be preloaded into the slave Karaf instance in order to provide faster failover performance.</p><h2 id="Simplelockfile">Simple lock file</h2><p>The simple lock file mechanism is intended for failover configurations where instances reside on the same host machine.</p><p>To use this feature, edit the <tt>$KARAF_HOME/etc/system.properties</tt> file as follows on each system in the master/slave setup:</p><pre>karaf.lock=true
+                              <h1 id="FailoverDeployments">Failover Deployments</h1><p>Karaf provides failover capability using either a simple lock file system or a JDBC locking mechanism. In both cases, a container-level lock system allows bundles to be preloaded into the slave Karaf instance in order to provide faster failover performance.</p><h2 id="Simplelockfile">Simple lock file</h2><p>The simple lock file mechanism is intended for failover configurations where instances reside on the same host machine.</p><p>To use this feature, edit the <tt>$KARAF_HOME/etc/system.properties</tt> file as follows on each system in the master/slave setup:</p><pre>karaf.lock=true
 karaf.lock.class=org.apache.karaf.main.SimpleFileLock
 karaf.lock.dir=&lt;PathToLockFileDirectory>
 karaf.lock.delay=10

Modified: servicemix/site/production/docs/5.0.x/users-guide/http.html
URL: http://svn.apache.org/viewvc/servicemix/site/production/docs/5.0.x/users-guide/http.html?rev=1595363&r1=1595362&r2=1595363&view=diff
==============================================================================
--- servicemix/site/production/docs/5.0.x/users-guide/http.html (original)
+++ servicemix/site/production/docs/5.0.x/users-guide/http.html Fri May 16 21:50:31 2014
@@ -113,7 +113,7 @@
 
         </div>
         <div id="body">
-                    <h1 id="PaxWebOSGiHttpService">Pax Web (OSGi HttpService)</h1><p>The Karaf http feature enables the Pax Web implementation of the OSGi HTTP service.</p><h2 id="InstallingtheHTTPfeature">Installing the HTTP feature</h2><pre>
+                              <h1 id="PaxWebOSGiHttpService">Pax Web (OSGi HttpService)</h1><p>The Karaf http feature enables the Pax Web implementation of the OSGi HTTP service.</p><h2 id="InstallingtheHTTPfeature">Installing the HTTP feature</h2><pre>
 root@karaf> features:install http
 </pre><p>Create a file <tt>etc/org.ops4j.pax.web.cfg</tt> with the following content:</p><pre>
 org.osgi.service.http.port=8080



Mime
View raw message