You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by bu...@apache.org on 2013/04/09 11:38:00 UTC

svn commit: r857855 [4/6] - in /websites/staging/felix/trunk/content: ./ documentation/ documentation/subprojects/ documentation/subprojects/apache-felix-ipojo/ documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-devguide/ documentation/sub...

Modified: websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-arch-command.html
==============================================================================
--- websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-arch-command.html (original)
+++ websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-arch-command.html Tue Apr  9 09:37:59 2013
@@ -104,7 +104,7 @@
                                         <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-userguide/ipojo-faq.html">FAQ</a></li>
                                         <li><a href="">Reference Card</a></li>
                                         <li class="divider"></li>
-                                        <li><a href="">Handler development</a></li>
+                                        <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-devguide/how-to-write-your-own-handler.html">Handler development</a></li>
                                         <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-devguide/how-to-use-ipojo-manipulation-metadata.html">Manipulation Metadata </a></li>
                                         <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-devguide/dive-into-the-ipojo-manipulation-depths.html">Dive into the iPOJO Manipulation depths</a></li>
                                     </ul>
@@ -116,11 +116,10 @@
                             <a class="dropdown-toggle" data-toggle="dropdown" href="#">Tools <b class="caret"></b></a>
                             <ul class="dropdown-menu" id="swatch-menu">
                                 <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-ant-task.html">Ant Task</a></li>
-                                <li><a href="">Eclipse Plugin</a></li>
-                                <li><a href="">Maven Plugin</a></li>
-                                <li><a href="">`arch` shell command</a></li>
-                                <li><a href="">Online Manipulator</a></li>
-                                <li><a href="">Webconsole plugin</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-maven-plug-in.html">Maven Plugin</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-arch-command.html">Architecture commands</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/apache-felix-ipojo-online-manipulator.html">Online Manipulator</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-webconsole-plugin.html">Webconsole plugin</a></li>
                             </ul>
                         </li>
 
@@ -153,172 +152,167 @@
 
     <div class="container">
         <div class="content">
-            <h1 id="ipojo-arch-command">iPOJO <code>Arch</code> command</h1>
-<p><em>Architecture introspection is required when the system doesn't work as expected. In this case, having a quick access to instances states and interconnection is a stringent requirement. The <code>arch</code> command allows getting these data from the Felix Shell, from the Equinox shell and Gogo.</em></p>
-<p><em>Note</em> : The Gogo commands are not yet released but are available from the iPOJO trunk.</p>
-<p>{div:class=toc}
-[TOC]
-{div}</p>
-<h2 id="download">Download</h2>
-<p>The Felix commands is available from the <a href="/documentation/subprojects/apache-felix-ipojo/download.html">download</a> page.
-The Equinox command sources are available <a href="http://svn.apache.org/viewvc/felix/sandbox/clement/ipojo-utils/arch-equinox/">http://svn.apache.org/repos/asf/felix/sandbox/clement/ipojo-utils/arch-equinox/</a>. To compile sources, just launch the <code>mvn clean install</code> and deploy the resulting bundle.</p>
+            <h1 id="ipojo-architecture-commands">iPOJO architecture commands</h1>
+<p><em>Architecture introspection is required when the system doesn't work as expected. In this case, having a quick access to instances states and interconnection is a stringent requirement. The architecture commands allows getting these data from the Felix Shell, from the Equinox shell and Gogo.</em></p>
+<div class="toc">
+<ul>
+<li><a href="#ipojo-architecture-commands">iPOJO architecture commands</a><ul>
+<li><a href="#installation">Installation</a></li>
+<li><a href="#gogo">Gogo</a></li>
+<li><a href="#equinox-and-felix-shells">Equinox and Felix Shells</a></li>
+<li><a href="#reading-instance-architecture">Reading instance architecture:</a></li>
+<li><a href="#list-available-factories">List available factories</a></li>
+<li><a href="#list-available-handlers">List available handlers</a></li>
+</ul>
+</li>
+</ul>
+</div>
 <h2 id="installation">Installation</h2>
-<p>Once you get the bundle, just install and start it in the OSGi Framework shell:
-{code:xml|title=Felix}
-start file:/BUNDLE_URL.jar</p>
-<div class="codehilite"><pre><span class="p">{</span><span class="n">code:xml</span><span class="o">|</span><span class="n">title</span><span class="o">=</span><span class="n">Equinox</span><span class="p">}</span>
-<span class="n">install</span> <span class="n">file:</span><span class="o">/</span><span class="n">BUNDLE_URL</span><span class="o">.</span><span class="n">jar</span>
-<span class="n">Bundle</span> <span class="n">X</span> <span class="n">installed</span>
-<span class="n">start</span> <span class="n">X</span>
-</pre></div>
-
-
-<p>{code:xml|title=Gogo}
-install file:/ARCH<em>GOGO</em>URL.jar
-Bundle X installed
-start X</p>
-<div class="codehilite"><pre><span class="n">h2</span><span class="o">.</span> <span class="n">Equinox</span> <span class="ow">and</span> <span class="n">Felix</span> <span class="n">Shells</span>
-
-<span class="n">Then</span><span class="p">,</span> <span class="n">you</span> <span class="n">can</span> <span class="k">use</span> <span class="n">it</span> <span class="n">to</span> <span class="n">introspect</span> <span class="n">the</span> <span class="nb">system</span> <span class="n">by</span> <span class="n">launching</span> <span class="n">the</span>  <span class="n">command</span><span class="o">.</span>
-</pre></div>
-
-
-<p>arch =&gt; displays instances name &amp; state (equivalent to arch -instances)
-arch -instance $instance<em>name =&gt; displays complete information about the instance $instance</em>name
-arch -factories =&gt; display the list of available factories
-arch -factory $factory<em>name =&gt; display complete information about the factory $factory</em>name
-arch -handlers =&gt; list available handlers</p>
-<div class="codehilite"><pre><span class="n">h2</span><span class="o">.</span> <span class="n">Gogo</span> <span class="n">Shell</span> <span class="n">Commands</span>
-<span class="n">The</span> <span class="n">set</span> <span class="n">of</span> <span class="n">commands</span> <span class="n">available</span> <span class="n">from</span> <span class="n">Gogo</span> <span class="n">is</span> <span class="n">a</span> <span class="n">little</span> <span class="n">bit</span> <span class="n">different:</span>
-<span class="o">*</span>  <span class="p">(</span><span class="ow">or</span> <span class="n">just</span> <span class="p">)</span> <span class="n">lists</span> <span class="n">the</span> <span class="n">instances</span> <span class="ow">and</span> <span class="n">state</span>
-<span class="o">*</span>  <span class="p">(</span><span class="ow">or</span> <span class="n">just</span> <span class="p">)</span> <span class="n">displays</span> <span class="n">the</span> <span class="n">complete</span> <span class="n">information</span> <span class="n">about</span> <span class="n">the</span> <span class="n">specified</span> <span class="nv">$instance_name</span>
-<span class="o">*</span>  <span class="p">(</span><span class="ow">or</span> <span class="n">just</span> <span class="p">)</span> <span class="n">lists</span> <span class="n">the</span> <span class="n">available</span> <span class="n">public</span> <span class="n">factories</span>
-<span class="o">*</span>  <span class="p">(</span><span class="ow">or</span> <span class="n">just</span> <span class="p">)</span> <span class="n">displays</span> <span class="n">complete</span> <span class="n">information</span> <span class="n">about</span> <span class="n">the</span> <span class="n">factory</span> <span class="nv">$factory_name</span>
-<span class="o">*</span>  <span class="p">(</span><span class="ow">or</span> <span class="n">just</span>  <span class="n">lists</span> <span class="n">available</span> <span class="n">handlers</span>
-
-<span class="n">h2</span><span class="o">.</span> <span class="n">Reading</span> <span class="n">instance</span> <span class="n">architecture</span> 
-<span class="n">When</span> <span class="n">you</span> <span class="n">launch</span> <span class="n">the</span>  <span class="n">command</span> <span class="p">(</span><span class="ow">or</span>  <span class="n">on</span> <span class="n">Gogo</span><span class="p">),</span> <span class="n">the</span> <span class="n">list</span> <span class="n">of</span> <span class="n">created</span> <span class="n">instances</span> <span class="p">(</span><span class="n">enabling</span> <span class="n">architecture</span> <span class="n">introspection</span><span class="p">)</span> <span class="n">is</span> <span class="n">displayed</span><span class="o">.</span>
-<span class="p">{</span><span class="n">code:title</span><span class="o">=</span><span class="n">Felix</span> <span class="ow">or</span> <span class="n">Equinox</span><span class="p">}</span>
-<span class="o">-&gt;</span> <span class="n">arch</span>
-<span class="n">Instance</span> <span class="n">ArchCommand</span> <span class="o">-&gt;</span> <span class="n">valid</span>
-<span class="n">Instance</span> <span class="n">spell</span><span class="o">.</span><span class="n">english</span><span class="o">.</span><span class="n">EnglishDictionary</span><span class="o">-</span><span class="mi">0</span> <span class="o">-&gt;</span> <span class="n">valid</span>
-<span class="n">Instance</span> <span class="n">spell</span><span class="o">.</span><span class="n">checker</span><span class="o">.</span><span class="n">SpellCheck</span><span class="o">-</span><span class="mi">0</span> <span class="o">-&gt;</span> <span class="n">valid</span>
-<span class="n">Instance</span> <span class="n">spell</span><span class="o">.</span><span class="n">gui</span><span class="o">.</span><span class="n">SpellCheckerGui</span><span class="o">-</span><span class="mi">0</span> <span class="o">-&gt;</span> <span class="n">valid</span>
-</pre></div>
-
-
-<p><DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Gogo</B></DIV><DIV class="codeContent panelContent">
-    $ instances
-    Instance ArchCommand -&gt; valid
-    Instance spell.english.EnglishDictionary-0 -&gt; valid
-    Instance spell.checker.SpellCheck-0 -&gt; valid
-    Instance spell.gui.SpellCheckerGui-0 -&gt; valid</p>
-<p>To get more information on an instance, launch <code>arch -instance the*instance*name</code> (or <code>instance the*instance*name</code> on Gogo)
-<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Felix or Equinox</B></DIV><DIV class="codeContent panelContent">
-    -&gt; arch -instance spell.checker.SpellCheck-0                                  <br />
-    instance component.type="spell.checker.SpellCheck" state="valid" bundle="8" name="spell.checker.SpellCheck-0"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.dependency.DependencyHandler"
-            requires optional="false" aggregate="false" state="resolved" binding-policy="dynamic" specification="spell.services.DictionaryService"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.providedservice.ProvidedServiceHandler"
-            provides service.id="36" state="registered" specifications="[spell.services.SpellChecker]"
-                property value="spell.checker.SpellCheck" name="factory.name"
-                property value="spell.checker.SpellCheck-0" name="instance.name"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.architecture.ArchitectureHandler"</p>
-<p><DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Gogo</B></DIV><DIV class="codeContent panelContent">
-    $ipojo:instance spell.checker.SpellCheck-0                                  <br />
-    instance component.type="spell.checker.SpellCheck" state="valid" bundle="8" name="spell.checker.SpellCheck-0"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.dependency.DependencyHandler"
-            requires optional="false" aggregate="false" state="resolved" binding-policy="dynamic" specification="spell.services.DictionaryService"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.providedservice.ProvidedServiceHandler"
-            provides service.id="36" state="registered" specifications="[spell.services.SpellChecker]"
-                property value="spell.checker.SpellCheck" name="factory.name"
-                property value="spell.checker.SpellCheck-0" name="instance.name"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.architecture.ArchitectureHandler"</p>
-<p>Instance architecture is organized as follows:
-On the first line, are displayed the component type (i.e. factory), the instance state (<code>valid</code> or <code>invalid</code>), the bundle from which the instance is created, and the instance name.
-Then, the information is organized handler by handler (a piece of container). For each handler plugged on the instance can participate to the instance architecture. For each handler its name (such as <code>org.apache.felix.ipojo.handlers.dependency.DependencyHandler</code> for iPOJO service dependencies, <code>org.apache.felix.ipojo.handlers.providedservice.ProvidedServiceHandler</code> for iPOJO service providing...) and the state (either <code>valid</code> or <code>invalid</code> are displayed. Remember that an instance is valid only and only if all plugged handlers are valid. 
-The <code>org.apache.felix.ipojo.handlers.dependency.DependencyHandler</code> provides data on service dependencies and more precisely on the state of service dependencies. In the previous example, the dependency on <code>spell.services.DictionaryService</code> was resolved. On the following example, the same dependency is no more resolved:</p>
-<div class="codehilite"><pre><span class="n">instance</span> <span class="n">component</span><span class="o">.</span><span class="n">type</span><span class="o">=</span><span class="s">&quot;spell.checker.SpellCheck&quot;</span> <span class="n">state</span><span class="o">=</span><span class="s">&quot;invalid&quot;</span> <span class="n">bundle</span><span class="o">=</span><span class="s">&quot;8&quot;</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;spell.checker.SpellCheck-0&quot;</span>
-    <span class="n">handler</span> <span class="n">state</span><span class="o">=</span><span class="s">&quot;invalid&quot;</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;org.apache.felix.ipojo.handlers.dependency.DependencyHandler&quot;</span>
-        <span class="n">requires</span> <span class="n">optional</span><span class="o">=</span><span class="s">&quot;false&quot;</span> <span class="n">aggregate</span><span class="o">=</span><span class="s">&quot;false&quot;</span> <span class="n">state</span><span class="o">=</span><span class="s">&quot;unresolved&quot;</span> <span class="n">binding</span><span class="o">-</span><span class="n">policy</span><span class="o">=</span><span class="s">&quot;dynamic&quot;</span> <span class="n">specification</span><span class="o">=</span><span class="s">&quot;spell.services.DictionaryService&quot;</span>
-    <span class="n">handler</span> <span class="n">state</span><span class="o">=</span><span class="s">&quot;valid&quot;</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;org.apache.felix.ipojo.handlers.providedservice.ProvidedServiceHandler&quot;</span>
-        <span class="n">provides</span> <span class="n">state</span><span class="o">=</span><span class="s">&quot;unregistered&quot;</span> <span class="n">specifications</span><span class="o">=</span><span class="s">&quot;[spell.services.SpellChecker]&quot;</span>
-            <span class="n">property</span> <span class="n">value</span><span class="o">=</span><span class="s">&quot;spell.checker.SpellCheck&quot;</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;factory.name&quot;</span>
-            <span class="n">property</span> <span class="n">value</span><span class="o">=</span><span class="s">&quot;spell.checker.SpellCheck-0&quot;</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;instance.name&quot;</span>
-    <span class="n">handler</span> <span class="n">state</span><span class="o">=</span><span class="s">&quot;valid&quot;</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;org.apache.felix.ipojo.handlers.architecture.ArchitectureHandler&quot;</span>
+<p>According to your shell, download the adequate bundles from <a href="http://felix.apache.org/downloads.cgi">the Felix download page</a></p>
+<h2 id="gogo">Gogo</h2>
+<p>The Gogo commands are the following:</p>
+<ul>
+<li><code>ipojo:instances</code> (or just <code>instances</code>) lists the instances and state</li>
+<li><code>ipojo:instance $instance_name</code> (or just <code>instance $instance_name</code>) displays the complete information about the specified $instance_name</li>
+<li><code>ipojo:factories</code> (or just <code>factories</code>) lists the available public factories</li>
+<li><code>ipojo:factory $factory_name</code> (or just <code>factory $factory_name</code>) displays complete information about the factory $factory_name</li>
+<li><code>ipojo:handlers</code> (or just <code>handlers</code> lists available handlers</li>
+</ul>
+<p>For example:</p>
+<div class="codehilite"><pre><span class="nv">$ </span>instances
+Instance ArchCommand -&gt; valid
+Instance spell.english.EnglishDictionary-0 -&gt; valid
+Instance spell.checker.SpellCheck-0 -&gt; valid
+Instance spell.gui.SpellCheckerGui-0 -&gt; valid
+
+<span class="nv">$ </span>instance spell.checker.SpellCheck-0                                    
+instance component.type<span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck&quot;</span> <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">bundle</span><span class="o">=</span><span class="s2">&quot;8&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck-0&quot;</span>
+    handler <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;org.apache.felix.ipojo.handlers.dependency.DependencyHandler&quot;</span>
+        requires <span class="nv">optional</span><span class="o">=</span><span class="s2">&quot;false&quot;</span> <span class="nv">aggregate</span><span class="o">=</span><span class="s2">&quot;false&quot;</span> <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;resolved&quot;</span> binding-policy<span class="o">=</span><span class="s2">&quot;dynamic&quot;</span> <span class="nv">specification</span><span class="o">=</span><span class="s2">&quot;spell.services.DictionaryService&quot;</span>
+    handler <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;org.apache.felix.ipojo.handlers.providedservice.ProvidedServiceHandler&quot;</span>
+        provides service.id<span class="o">=</span><span class="s2">&quot;36&quot;</span> <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;registered&quot;</span> <span class="nv">specifications</span><span class="o">=</span><span class="s2">&quot;[spell.services.SpellChecker]&quot;</span>
+            property <span class="nv">value</span><span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;factory.name&quot;</span>
+            property <span class="nv">value</span><span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck-0&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;instance.name&quot;</span>
+    handler <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;org.apache.felix.ipojo.handlers.architecture.ArchitectureHandler&quot;</span>
+</pre></div>
+
+
+<h2 id="equinox-and-felix-shells">Equinox and Felix Shells</h2>
+<p>On Equinox and Felix (old) shell, the command is named <em>arch</em>:</p>
+<ul>
+<li>arch =&gt; displays instances name &amp; state (equivalent to arch -instances)</li>
+<li>arch -instance $instance<em>name =&gt; displays complete information about the instance $instance</em>name</li>
+<li>arch -factories =&gt; display the list of available factories</li>
+<li>arch -factory $factory<em>name =&gt; display complete information about the factory $factory</em>name</li>
+<li>
+<p>arch -handlers =&gt; list available handlers</p>
+<p>:::sh
+-&gt; arch
+Instance ArchCommand -&gt; valid
+Instance spell.english.EnglishDictionary-0 -&gt; valid
+Instance spell.checker.SpellCheck-0 -&gt; valid
+Instance spell.gui.SpellCheckerGui-0 -&gt; valid</p>
+<p>-&gt; arch -instance spell.checker.SpellCheck-0                                  <br />
+instance component.type="spell.checker.SpellCheck" state="valid" bundle="8" name="spell.checker.SpellCheck-0"
+    handler state="valid" name="org.apache.felix.ipojo.handlers.dependency.DependencyHandler"
+        requires optional="false" aggregate="false" state="resolved" binding-policy="dynamic" specification="spell.services.DictionaryService"
+    handler state="valid" name="org.apache.felix.ipojo.handlers.providedservice.ProvidedServiceHandler"
+        provides service.id="36" state="registered" specifications="[spell.services.SpellChecker]"
+            property value="spell.checker.SpellCheck" name="factory.name"
+            property value="spell.checker.SpellCheck-0" name="instance.name"
+    handler state="valid" name="org.apache.felix.ipojo.handlers.architecture.ArchitectureHandler"</p>
+</li>
+</ul>
+<h2 id="reading-instance-architecture">Reading instance architecture:</h2>
+<p>Instance architecture is organized as follows:</p>
+<ul>
+<li>On the first line, are displayed the component type (i.e. factory), the instance state (<code>valid</code> or <code>invalid</code>), the bundle from which the instance is created, and the instance name.</li>
+<li>Then, the information is organized handler by handler (a piece of container). For each handler plugged on the instance can participate to the instance architecture. For each handler its name (such as <code>org.apache.felix.ipojo.handlers.dependency.DependencyHandler</code> for iPOJO service dependencies, <code>org.apache.felix.ipojo.handlers.providedservice.ProvidedServiceHandler</code> for iPOJO service providing...) and the state (either <code>valid</code> or <code>invalid</code> are displayed. Remember that an instance is valid only and only if all plugged handlers are valid. </li>
+<li>The <code>org.apache.felix.ipojo.handlers.dependency.DependencyHandler</code> provides data on service dependencies and more precisely on the state of service dependencies. In the previous example, the dependency on <code>spell.services.DictionaryService</code> was resolved. On the following example, the same dependency is no more resolved.</li>
+</ul>
+<p>As an example, the following snippet dumps the architecture of an instance:</p>
+<div class="codehilite"><pre>instance component.type<span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck&quot;</span> <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;invalid&quot;</span> <span class="nv">bundle</span><span class="o">=</span><span class="s2">&quot;8&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck-0&quot;</span>
+    handler <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;invalid&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;org.apache.felix.ipojo.handlers.dependency.DependencyHandler&quot;</span>
+        requires <span class="nv">optional</span><span class="o">=</span><span class="s2">&quot;false&quot;</span> <span class="nv">aggregate</span><span class="o">=</span><span class="s2">&quot;false&quot;</span> <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;unresolved&quot;</span> binding-policy<span class="o">=</span><span class="s2">&quot;dynamic&quot;</span> <span class="nv">specification</span><span class="o">=</span><span class="s2">&quot;spell.services.DictionaryService&quot;</span>
+    handler <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;org.apache.felix.ipojo.handlers.providedservice.ProvidedServiceHandler&quot;</span>
+        provides <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;unregistered&quot;</span> <span class="nv">specifications</span><span class="o">=</span><span class="s2">&quot;[spell.services.SpellChecker]&quot;</span>
+            property <span class="nv">value</span><span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;factory.name&quot;</span>
+            property <span class="nv">value</span><span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck-0&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;instance.name&quot;</span>
+    handler <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;org.apache.felix.ipojo.handlers.architecture.ArchitectureHandler&quot;</span>
 </pre></div>
 
 
 <p>Notes that, the instance also becomes invalid and that the provided service is unregistered.
 If the provider comes back, the dependency becomes <code>resolved</code> and the instance becomes <code>valid</code>
-If an instance begins to use a service, the bound providers are described in the instance architecture:
-<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Felix or Equinox</B></DIV><DIV class="codeContent panelContent">
-    -&gt; arch -instance spell.checker.SpellCheck-0 
-    instance component.type="spell.checker.SpellCheck" state="valid" bundle="8" name="spell.checker.SpellCheck-0"
-        object name="spell.checker.SpellCheck@e222eb"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.dependency.DependencyHandler"
-            requires optional="false" aggregate="false" state="resolved" binding-policy="dynamic" specification="spell.services.DictionaryService"
-                uses service.id="41" instance.name="spell.english.EnglishDictionary-0"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.providedservice.ProvidedServiceHandler"
-            provides service.id="42" state="registered" specifications="[spell.services.SpellChecker]"
-                property value="spell.checker.SpellCheck" name="factory.name"
-                property value="spell.checker.SpellCheck-0" name="instance.name"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.architecture.ArchitectureHandler"</p>
-<p><DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Gogo</B></DIV><DIV class="codeContent panelContent">
-    $instance spell.checker.SpellCheck-0 
-    instance component.type="spell.checker.SpellCheck" state="valid" bundle="8" name="spell.checker.SpellCheck-0"
-        object name="spell.checker.SpellCheck@e222eb"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.dependency.DependencyHandler"
-            requires optional="false" aggregate="false" state="resolved" binding-policy="dynamic" specification="spell.services.DictionaryService"
-                uses service.id="41" instance.name="spell.english.EnglishDictionary-0"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.providedservice.ProvidedServiceHandler"
-            provides service.id="42" state="registered" specifications="[spell.services.SpellChecker]"
-                property value="spell.checker.SpellCheck" name="factory.name"
-                property value="spell.checker.SpellCheck-0" name="instance.name"
-        handler state="valid" name="org.apache.felix.ipojo.handlers.architecture.ArchitectureHandler"</p>
+If an instance begins to use a service, the bound providers are described in the instance architecture:</p>
+<div class="codehilite"><pre>instance component.type<span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck&quot;</span> <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">bundle</span><span class="o">=</span><span class="s2">&quot;8&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck-0&quot;</span>
+    object <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck@e222eb&quot;</span>
+    handler <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;org.apache.felix.ipojo.handlers.dependency.DependencyHandler&quot;</span>
+        requires <span class="nv">optional</span><span class="o">=</span><span class="s2">&quot;false&quot;</span> <span class="nv">aggregate</span><span class="o">=</span><span class="s2">&quot;false&quot;</span> <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;resolved&quot;</span> binding-policy<span class="o">=</span><span class="s2">&quot;dynamic&quot;</span> <span class="nv">specification</span><span class="o">=</span><span class="s2">&quot;spell.services.DictionaryService&quot;</span>
+            uses service.id<span class="o">=</span><span class="s2">&quot;41&quot;</span> instance.name<span class="o">=</span><span class="s2">&quot;spell.english.EnglishDictionary-0&quot;</span>
+    handler <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;org.apache.felix.ipojo.handlers.providedservice.ProvidedServiceHandler&quot;</span>
+        provides service.id<span class="o">=</span><span class="s2">&quot;42&quot;</span> <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;registered&quot;</span> <span class="nv">specifications</span><span class="o">=</span><span class="s2">&quot;[spell.services.SpellChecker]&quot;</span>
+            property <span class="nv">value</span><span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;factory.name&quot;</span>
+            property <span class="nv">value</span><span class="o">=</span><span class="s2">&quot;spell.checker.SpellCheck-0&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;instance.name&quot;</span>
+    handler <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;org.apache.felix.ipojo.handlers.architecture.ArchitectureHandler&quot;</span>
+</pre></div>
+
+
 <p>In the previous case, the dependency on <code>spell.services.DictionaryService</code> use the service 41 from the iPOJO instance named <code>spell.english.EnglishDictionary-0</code>
 You can also check created POJO objects (implementation class objet). Here, only one object was created (<code>spell.checker.SpellCheck@e222eb</code>).</p>
 <h2 id="list-available-factories">List available factories</h2>
-<p>To list available factories (i.e. component types), launch the <code>arch -factories</code> command (or <code>factories</code> on Gogo):
-<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Felix or Equinox</B></DIV><DIV class="codeContent panelContent">
-    -&gt; arch -factories
-    Factory spell.checker.SpellCheck (VALID)
-    Factory spell.gui.SpellCheckerGui (VALID)
-    Factory spell.english.EnglishDictionary (VALID)</p>
-<p><DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Gogo</B></DIV><DIV class="codeContent panelContent">
-    $factories
-    Factory spell.checker.SpellCheck (VALID)
-    Factory spell.gui.SpellCheckerGui (VALID)
-    Factory spell.english.EnglishDictionary (VALID)</p>
-<p>For each available (public) factories,the name and the sate are displayed. A factory is valid if and only if all required handlers are available. To get more information on a factory launch the <code>arch -factory factory*name</code> (or <code>factory factory*name</code> on Gogo) command:</p>
-<div class="codehilite"><pre><span class="n">factory</span> <span class="n">implementation</span><span class="o">-</span><span class="n">class</span><span class="o">=</span><span class="s">&quot;spell.english.EnglishDictionary&quot;</span> <span class="n">state</span><span class="o">=</span><span class="s">&quot;valid&quot;</span> <span class="n">bundle</span><span class="o">=</span><span class="s">&quot;7&quot;</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;spell.english.EnglishDictionary&quot;</span>
-    <span class="n">provides</span> <span class="n">specification</span><span class="o">=</span><span class="s">&quot;spell.services.DictionaryService&quot;</span>
-    <span class="n">missinghandlers</span> <span class="n">list</span><span class="o">=</span><span class="s">&quot;[]&quot;</span>
-    <span class="n">requiredhandlers</span> <span class="n">list</span><span class="o">=</span><span class="s">&quot;[org.apache.felix.ipojo:provides, org.apache.felix.ipojo:architecture]&quot;</span>
+<p>You can access factory list using the <code>factories</code> gogo command or the <code>arch -factories</code> on Felix's shell. For every available (public) factories,the name and the state are displayed. A factory is valid if and only if all required handlers are available.</p>
+<div class="codehilite"><pre>-&gt; arch -factories
+Factory spell.checker.SpellCheck <span class="o">(</span>VALID<span class="o">)</span>
+Factory spell.gui.SpellCheckerGui <span class="o">(</span>VALID<span class="o">)</span>
+Factory spell.english.EnglishDictionary <span class="o">(</span>VALID<span class="o">)</span>
+-&gt; arch -factory spell.english.EnglishDictionary
+factory implementation-class<span class="o">=</span><span class="s2">&quot;spell.english.EnglishDictionary&quot;</span> <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">bundle</span><span class="o">=</span><span class="s2">&quot;7&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;spell.english.EnglishDictionary&quot;</span>
+    provides <span class="nv">specification</span><span class="o">=</span><span class="s2">&quot;spell.services.DictionaryService&quot;</span>
+    missinghandlers <span class="nv">list</span><span class="o">=</span><span class="s2">&quot;[]&quot;</span>
+    requiredhandlers <span class="nv">list</span><span class="o">=</span><span class="s2">&quot;[org.apache.felix.ipojo:provides, org.apache.felix.ipojo:architecture]&quot;</span>
+</pre></div>
+
+
+<p>On Gogo:</p>
+<div class="codehilite"><pre><span class="nv">$factories</span>
+Factory spell.checker.SpellCheck <span class="o">(</span>VALID<span class="o">)</span>
+Factory spell.gui.SpellCheckerGui <span class="o">(</span>VALID<span class="o">)</span>
+Factory spell.english.EnglishDictionary <span class="o">(</span>VALID<span class="o">)</span>
+<span class="nv">$factory</span> spell.english.EnglishDictionary
+factory implementation-class<span class="o">=</span><span class="s2">&quot;spell.english.EnglishDictionary&quot;</span> <span class="nv">state</span><span class="o">=</span><span class="s2">&quot;valid&quot;</span> <span class="nv">bundle</span><span class="o">=</span><span class="s2">&quot;7&quot;</span> <span class="nv">name</span><span class="o">=</span><span class="s2">&quot;spell.english.EnglishDictionary&quot;</span>
+    provides <span class="nv">specification</span><span class="o">=</span><span class="s2">&quot;spell.services.DictionaryService&quot;</span>
+    missinghandlers <span class="nv">list</span><span class="o">=</span><span class="s2">&quot;[]&quot;</span>
+    requiredhandlers <span class="nv">list</span><span class="o">=</span><span class="s2">&quot;[org.apache.felix.ipojo:provides, org.apache.felix.ipojo:architecture]&quot;</span>
 </pre></div>
 
 
 <p>On the first line, you get the implementation class of the type, the state of the factory, the bundle declaring the type and the name of the type. You also get the list of required and missing handlers.</p>
 <h2 id="list-available-handlers">List available handlers</h2>
-<p>You can also list available handlers with the <code>arch -handlers</code> (or <code>handlers</code> on Gogo) command.
-<DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Felix or Equinox</B></DIV><DIV class="codeContent panelContent">
-    -&gt; arch -handlers
-    Handler org.apache.felix.ipojo:controller (VALID)
-    Handler org.apache.felix.ipojo:callback (VALID)
-    Handler org.apache.felix.ipojo:requires (VALID)
-    Handler org.apache.felix.ipojo:provides (VALID)
-    Handler org.apache.felix.ipojo:properties (VALID)
-    Handler org.apache.felix.ipojo:architecture (VALID)
-    Handler org.apache.felix.ipojo.handler.whiteboard:wbp (VALID)</p>
-<p><DIV class="code panel" style="border-style: solid;border-width: 1px;"><DIV class="codeHeader panelHeader" style="border-bottom-width: 1px;border-bottom-style: solid;"><B>Gogo</B></DIV><DIV class="codeContent panelContent">
-    $handlers
-    Handler org.apache.felix.ipojo:controller (VALID)
-    Handler org.apache.felix.ipojo:callback (VALID)
-    Handler org.apache.felix.ipojo:requires (VALID)
-    Handler org.apache.felix.ipojo:provides (VALID)
-    Handler org.apache.felix.ipojo:properties (VALID)
-    Handler org.apache.felix.ipojo:architecture (VALID)
-    Handler org.apache.felix.ipojo.handler.whiteboard:wbp (VALID)</p>
+<p>Like listing factories, you can get the list of handlers.</p>
+<div class="codehilite"><pre>-&gt; arch -handlers
+Handler org.apache.felix.ipojo:controller <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo:callback <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo:requires <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo:provides <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo:properties <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo:architecture <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo.handler.whiteboard:wbp <span class="o">(</span>VALID<span class="o">)</span>
+</pre></div>
+
+
+<p>On Gogo:</p>
+<div class="codehilite"><pre><span class="nv">$handlers</span>
+Handler org.apache.felix.ipojo:controller <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo:callback <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo:requires <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo:provides <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo:properties <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo:architecture <span class="o">(</span>VALID<span class="o">)</span>
+Handler org.apache.felix.ipojo.handler.whiteboard:wbp <span class="o">(</span>VALID<span class="o">)</span>
+</pre></div>
+
+
 <p>Handlers with the <code>org.apache.felix.ipojo</code> namespace (section before <code>:</code>) are core handlers (provided by the iPOJO core bundles). Others are external handlers (provided by others bundles).</p>
         </div>
     </div>
@@ -334,7 +328,7 @@ You can also check created POJO objects 
                 may be trademarks or registered trademarks of their respective owners.
                 </div>
                 <div class="timestamp span3 offset2">
-                Rev. 1441864 by fmeschbe on Sun, 3 Feb 2013 06:44:40 +0000
+                Rev. 1465947 by clement on Tue, 9 Apr 2013 09:37:22 +0000
                 </div>
             </div>
         </footer>           

Modified: websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-maven-plug-in.html
==============================================================================
--- websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-maven-plug-in.html (original)
+++ websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-maven-plug-in.html Tue Apr  9 09:37:59 2013
@@ -104,7 +104,7 @@
                                         <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-userguide/ipojo-faq.html">FAQ</a></li>
                                         <li><a href="">Reference Card</a></li>
                                         <li class="divider"></li>
-                                        <li><a href="">Handler development</a></li>
+                                        <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-devguide/how-to-write-your-own-handler.html">Handler development</a></li>
                                         <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-devguide/how-to-use-ipojo-manipulation-metadata.html">Manipulation Metadata </a></li>
                                         <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-devguide/dive-into-the-ipojo-manipulation-depths.html">Dive into the iPOJO Manipulation depths</a></li>
                                     </ul>
@@ -116,11 +116,10 @@
                             <a class="dropdown-toggle" data-toggle="dropdown" href="#">Tools <b class="caret"></b></a>
                             <ul class="dropdown-menu" id="swatch-menu">
                                 <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-ant-task.html">Ant Task</a></li>
-                                <li><a href="">Eclipse Plugin</a></li>
-                                <li><a href="">Maven Plugin</a></li>
-                                <li><a href="">`arch` shell command</a></li>
-                                <li><a href="">Online Manipulator</a></li>
-                                <li><a href="">Webconsole plugin</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-maven-plug-in.html">Maven Plugin</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-arch-command.html">Architecture commands</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/apache-felix-ipojo-online-manipulator.html">Online Manipulator</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-webconsole-plugin.html">Webconsole plugin</a></li>
                             </ul>
                         </li>
 
@@ -154,163 +153,185 @@
     <div class="container">
         <div class="content">
             <h1 id="how-to-use-the-ipojo-maven-plug-in">How to use the iPOJO Maven Plug-in</h1>
-<p>{div:class=toc}
-[TOC]
-{div}</p>
+<div class="toc">
+<ul>
+<li><a href="#how-to-use-the-ipojo-maven-plug-in">How to use the iPOJO Maven Plug-in</a><ul>
+<li><a href="#basic-configuration">Basic configuration</a></li>
+<li><a href="#execution">Execution</a></li>
+<li><a href="#configuration-options">Configuration Options</a></li>
+<li><a href="#generate-the-skeleton-of-your-ipojo-bundle">Generate the skeleton of your iPOJO bundle</a></li>
+<li><a href="#describing-ipojo-configuration-in-the-pom-file">Describing iPOJO configuration in the pom file</a></li>
+</ul>
+</li>
+</ul>
+</div>
 <h2 id="basic-configuration">Basic configuration</h2>
-<p>To use the iPOJO Maven plug-in, edit the following pom.xml (replace all $XXX elements):
-{div:class=pom}
-<project>
-&nbsp;<modelVersion>4.0.0</modelVersion></p>
-<p>&nbsp;<packaging>bundle</packaging> <!-- Use the BND Maven plug-in -->
-{color:red}&nbsp;{color} {color:red}<groupId>$YOUR<em>GROUP</em>ID</groupId>{color}
-{color:red}&nbsp;{color} {color:red}<artifactId>$YOUR<em>ARTIFACT</em>ID</artifactId>{color}
-{color:red}&nbsp;{color} {color:red}<version>$YOUR<em>ARTIFACT</em>VERSION</version>{color}
-{color:red}&nbsp;{color} {color:red}<name>$YOUR<em>PROJECT</em>NAME</name>{color}</p>
-<p>{color:red}&nbsp;{color} {color:red}<dependencies>{color}
-{color:red}&nbsp;&nbsp;&nbsp;{color} {color:red}$YOUR<em>MAVEN</em>DEPENDENCIES{color}
-{color:red}&nbsp;{color} {color:red}</dependencies>{color}</p>
-<p>&nbsp;<build>
-&nbsp;&nbsp;&nbsp;<plugins>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<!-- BND Maven Plugin Configuration -->
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<plugin>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<groupId>org.apache.felix</groupId>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<artifactId>maven-bundle-plugin</artifactId>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <extensions>true</extensions>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <configuration>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <instructions>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
-{color:red}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{color}{color:red}<Private-Package>$YOUR<em>PRIVATE</em>PACKAGE</Private-Package>{color}
-{color:red}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{color}{color:red}<Export-Package>$YOUR<em>EXPORTED</em>PACKAGE</Export-Package>{color}
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</instructions>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</configuration>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</plugin>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<!-- iPOJO Maven Plugin Configuration : nothing to do -->
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<plugin>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<groupId>org.apache.felix</groupId>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<artifactId>maven-ipojo-plugin</artifactId>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<version>1.6.0</version>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<executions>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<execution>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <goals>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<goal>ipojo-bundle</goal>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</goals>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</execution>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</executions>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</plugin>
-&nbsp;&nbsp;&nbsp;</plugins>
-&nbsp;</build>
-</project>
-{div}
-The iPOJO Maven Plug-in is generally used with the BND Maven Plug-in (more details here). However the two configurations are completely separated. So, you can use all BND Maven plug-in features. The iPOJO configuration section can be used as previously written without any changes. However it requires that your metadata file is either inside <code>src/main/ipojo</code> or inside the <code>src/main/resources</code> folder and named "metadata.xml".</p>
+<p>To use the iPOJO Maven plug-in, edit the following pom.xml (replace all $XXX elements):</p>
+<div class="codehilite"><pre><span class="nt">&lt;project&gt;</span>
+    <span class="nt">&lt;modelVersion&gt;</span>4.0.0<span class="nt">&lt;/modelVersion&gt;</span>
+
+    <span class="nt">&lt;groupId&gt;</span>$YOUR_GROUP_ID<span class="nt">&lt;/groupId&gt;</span>
+    <span class="nt">&lt;artifactId&gt;</span>$YOUR_ARTIFACT_ID<span class="nt">&lt;/artifactId&gt;</span>
+    <span class="nt">&lt;version&gt;</span>$YOUR_ARTIFACT_VERSION<span class="nt">&lt;/version&gt;</span>
+
+    <span class="nt">&lt;name&gt;</span>$YOUR_PROJECT_NAME<span class="nt">&lt;/name&gt;</span>
+
+    <span class="c">&lt;!-- Use the bundle packaging type --&gt;</span>
+    <span class="nt">&lt;packaging&gt;</span>bundle<span class="nt">&lt;/packaging&gt;</span>
+
+    <span class="nt">&lt;dependencies&gt;</span>
+       $YOUR_MAVEN_DEPENDENCIES
+    <span class="nt">&lt;/dependencies&gt;</span>
+
+    <span class="nt">&lt;build&gt;</span>
+      <span class="nt">&lt;plugins&gt;</span>
+          <span class="c">&lt;!-- BND Maven Plugin Configuration --&gt;</span>
+          <span class="nt">&lt;plugin&gt;</span>
+              <span class="nt">&lt;groupId&gt;</span>org.apache.felix<span class="nt">&lt;/groupId&gt;</span>
+              <span class="nt">&lt;artifactId&gt;</span>maven-bundle-plugin<span class="nt">&lt;/artifactId&gt;</span>
+               <span class="nt">&lt;extensions&gt;</span>true<span class="nt">&lt;/extensions&gt;</span>
+               <span class="nt">&lt;configuration&gt;</span>
+                   <span class="nt">&lt;instructions&gt;</span>
+                       <span class="nt">&lt;Bundle-SymbolicName&gt;</span>${pom.artifactId}<span class="nt">&lt;/Bundle-SymbolicName&gt;</span>
+                      <span class="nt">&lt;Private-Package&gt;</span>$YOUR_PRIVATE_PACKAGE<span class="nt">&lt;/Private-Package&gt;</span>
+                      <span class="nt">&lt;Export-Package&gt;</span>$YOUR_EXPORTED_PACKAGE<span class="nt">&lt;/Export-Package&gt;</span>
+                  <span class="nt">&lt;/instructions&gt;</span>
+              <span class="nt">&lt;/configuration&gt;</span>
+          <span class="nt">&lt;/plugin&gt;</span>
+          <span class="nt">&lt;plugin&gt;</span>
+                <span class="nt">&lt;groupId&gt;</span>org.apache.felix<span class="nt">&lt;/groupId&gt;</span>
+                <span class="nt">&lt;artifactId&gt;</span>maven-ipojo-plugin<span class="nt">&lt;/artifactId&gt;</span>
+                <span class="nt">&lt;version&gt;</span>1.8.6<span class="nt">&lt;/version&gt;</span>
+                <span class="nt">&lt;executions&gt;</span>
+                    <span class="nt">&lt;execution&gt;</span>
+                        <span class="nt">&lt;goals&gt;</span>
+                            <span class="nt">&lt;goal&gt;</span>ipojo-bundle<span class="nt">&lt;/goal&gt;</span>
+                        <span class="nt">&lt;/goals&gt;</span>
+                  <span class="nt">&lt;/execution&gt;</span>
+              <span class="nt">&lt;/executions&gt;</span>
+          <span class="nt">&lt;/plugin&gt;</span>
+      <span class="nt">&lt;/plugins&gt;</span>
+  <span class="nt">&lt;/build&gt;</span>
+<span class="nt">&lt;/project&gt;</span>
+</pre></div>
+
+
+<p>The iPOJO Maven Plug-in is generally used with the BND Maven Plug-in (more details here). However the two configurations are completely separated. So, you can use all BND Maven plug-in features. The iPOJO configuration section can be used as previously written without any changes. However it requires that your metadata file is either inside <code>src/main/ipojo</code> or inside the <code>src/main/resources</code> folder and named "metadata.xml".</p>
 <h2 id="execution">Execution</h2>
-<p>To manipulate your project, use the "<em>mvn clean install</em>" command. The output should be like:
-{div:class=pom}
-[INFO]() Scanning for projects...
-[INFO]() ----------------------------------------------------------------------------
-[INFO]() Building Hello Client
-[INFO]()&nbsp;&nbsp;&nbsp;task-segment: [clean, install]
-[INFO]() ----------------------------------------------------------------------------
-[INFO]() [clean:clean]
-[INFO]() Deleting directory D:\clement\workspaces\iPOJO-Dev\hello.client\target
-[INFO]() Deleting directory D:\clement\workspaces\iPOJO-Dev\hello.client\target\classes
-[INFO]() Deleting directory D:\clement\workspaces\iPOJO-Dev\hello.client\target\test-classes
-[INFO]() Deleting directory D:\clement\workspaces\iPOJO-Dev\hello.client\target\site
-[INFO]() [resources:resources]
-[INFO]() Using default encoding to copy filtered resources.
-[INFO]() Copying 1 resource
-[INFO]() [compiler:compile]
-[INFO]() Compiling 1 source file to D:\clement\workspaces\iPOJO-Dev\hello.client\target\classes
-[INFO]() [resources:testResources]
-[INFO]() Using default encoding to copy filtered resources.
-[INFO]() Resource directory does not exist: D:\clement\workspaces\iPOJO-Dev\hello.client\src\test\resources
-[INFO]() [compiler:testCompile]
-[INFO]() No sources to compile
-[INFO]() [surefire:test]
-[INFO]() No tests to run.
-[INFO]() [bundle:bundle]
-[INFO]() [org.apache.felix.ipojo.:ipojo-bundle {execution: default}]
-[INFO]() Start bundle manipulation
-[INFO]() Metadata File : D:\clement\workspaces\iPOJO-Dev\hello.client\target\classes\metadata.xml
-[INFO]() Input Bundle File : D:\clement\workspaces\iPOJO-Dev\hello.client\target\hello.client-0.0.1.jar
-[INFO]() Bundle manipulation - SUCCESS
-[INFO]() [install:install]
-[INFO]() Installing D:\clement\workspaces\iPOJO-Dev\hello.client\target\hello.client-0.0.1.jar to D:\Dev\maven-repo\ipojo\example\hello.client\0.0.1\hello.client-0.0.1.jar
-[INFO]() ------------------------------------------------------------------------
-[INFO]() BUILD SUCCESSFUL
-[INFO]() ------------------------------------------------------------------------
-[INFO]() Total time: 9 seconds
-[INFO]() Finished at: Mon Aug 13 14:04:55 CEST 2007
-[INFO]() Final Memory: 6M/13M
-[INFO]() ------------------------------------------------------------------------
-{div}</p>
+<p>To manipulate your project, use the "<em>mvn clean install</em>" command. The output should be like:</p>
+<div class="codehilite"><pre><span class="o">[</span>INFO<span class="o">]</span> Scanning <span class="k">for </span>projects...
+<span class="o">[</span>INFO<span class="o">]</span> ----------------------------------------------------------------------------
+<span class="o">[</span>INFO<span class="o">]</span> Building Hello Client
+<span class="o">[</span>INFO<span class="o">]</span>      task-segment: <span class="o">[</span>clean, install<span class="o">]</span>
+<span class="o">[</span>INFO<span class="o">]</span> ----------------------------------------------------------------------------
+<span class="o">[</span>INFO<span class="o">]</span> <span class="o">[</span>clean:clean<span class="o">]</span>
+<span class="o">[</span>INFO<span class="o">]</span> Deleting directory ...hello.client<span class="se">\t</span>arget
+<span class="o">[</span>INFO<span class="o">]</span> Deleting directory ...hello.client<span class="se">\t</span>arget<span class="se">\c</span>lasses
+<span class="o">[</span>INFO<span class="o">]</span> Deleting directory ...hello.client<span class="se">\t</span>arget<span class="se">\t</span>est-classes
+<span class="o">[</span>INFO<span class="o">]</span> Deleting directory ...hello.client<span class="se">\t</span>arget<span class="se">\s</span>ite
+<span class="o">[</span>INFO<span class="o">]</span> <span class="o">[</span>resources:resources<span class="o">]</span>
+<span class="o">[</span>INFO<span class="o">]</span> Using default encoding to copy filtered resources.
+<span class="o">[</span>INFO<span class="o">]</span> Copying 1 resource
+<span class="o">[</span>INFO<span class="o">]</span> <span class="o">[</span>compiler:compile<span class="o">]</span>
+<span class="o">[</span>INFO<span class="o">]</span> Compiling 1 <span class="nb">source </span>file to ...hello.client<span class="se">\t</span>arget<span class="se">\c</span>lasses
+<span class="o">[</span>INFO<span class="o">]</span> <span class="o">[</span>resources:testResources<span class="o">]</span>
+<span class="o">[</span>INFO<span class="o">]</span> Using default encoding to copy filtered resources.
+<span class="o">[</span>INFO<span class="o">]</span> Resource directory does not exist: ...hello.client<span class="se">\s</span>rc<span class="se">\t</span>est<span class="se">\r</span>esources
+<span class="o">[</span>INFO<span class="o">]</span> <span class="o">[</span>compiler:testCompile<span class="o">]</span>
+<span class="o">[</span>INFO<span class="o">]</span> No sources to compile
+<span class="o">[</span>INFO<span class="o">]</span> <span class="o">[</span>surefire:test<span class="o">]</span>
+<span class="o">[</span>INFO<span class="o">]</span> No tests to run.
+<span class="o">[</span>INFO<span class="o">]</span> <span class="o">[</span>bundle:bundle<span class="o">]</span>
+<span class="o">[</span>INFO<span class="o">]</span> <span class="o">[</span>org.apache.felix.ipojo.:ipojo-bundle <span class="o">{</span>execution: default<span class="o">}]</span>
+<span class="o">[</span>INFO<span class="o">]</span> Start bundle manipulation
+<span class="o">[</span>INFO<span class="o">]</span> Metadata File : ...hello.client<span class="se">\t</span>arget<span class="se">\c</span>lasses<span class="se">\m</span>etadata.xml
+<span class="o">[</span>INFO<span class="o">]</span> Input Bundle File : ...hello.client<span class="se">\t</span>arget<span class="se">\h</span>ello.client-0.0.1.jar
+<span class="o">[</span>INFO<span class="o">]</span> Bundle manipulation - SUCCESS
+<span class="o">[</span>INFO<span class="o">]</span> <span class="o">[</span>install:install<span class="o">]</span>
+<span class="o">[</span>INFO<span class="o">]</span> Installing ...hello.client<span class="se">\t</span>arget<span class="se">\h</span>ello.client-0.0.1.jar to D:<span class="se">\D</span>ev<span class="se">\m</span>aven-repo<span class="se">\i</span>pojo<span class="se">\e</span>xample<span class="se">\h</span>ello.client<span class="se">\0</span>.0.1<span class="se">\h</span>ello.client-0.0.1.jar
+<span class="o">[</span>INFO<span class="o">]</span> ------------------------------------------------------------------------
+<span class="o">[</span>INFO<span class="o">]</span> BUILD SUCCESSFUL
+<span class="o">[</span>INFO<span class="o">]</span> ------------------------------------------------------------------------
+<span class="o">[</span>INFO<span class="o">]</span> Total <span class="nb">time</span>: 9 seconds
+<span class="o">[</span>INFO<span class="o">]</span> Finished at: Mon Aug 13 14:04:55 CEST 2007
+<span class="o">[</span>INFO<span class="o">]</span> Final Memory: 6M/13M
+<span class="o">[</span>INFO<span class="o">]</span> ------------------------------------------------------------------------
+</pre></div>
+
+
 <h2 id="configuration-options">Configuration Options</h2>
-<p>You can configure the localization of the iPOJO metadata file as following:
-{div:class=pom}
-<plugin>
-&nbsp;&nbsp;&nbsp; <groupId>org.apache.felix</groupId>
-&nbsp;&nbsp;&nbsp; <artifactId>maven-ipojo-plugin</artifactId>
-&nbsp;&nbsp;&nbsp; <version>1.6.0</version>
-&nbsp;&nbsp;&nbsp; <executions>
-&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <execution>
-&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <goals>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <goal>ipojo-bundle</goal>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </goals>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <configuration>
-&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{color:red}<metadata>ipojo/meta.xml</metadata>{color}
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </configuration>
-&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;</execution>
-&nbsp;&nbsp;&nbsp;</executions>
-</plugin>
-{div}
-In the metadata element, you can specify your metadata file or directory. The given file path is relative to the root directory ("./ipojo/meta.xml"). If the specified location is a directory, all contained XML files will be used. By default, the plugin searches metadata files into the <code>src/main/ipojo</code> folder. If not found then it searches for <code>target/classes/metadata.xml</code> and <code>./metadata.xml</code>.</p>
-<p><em>Note:</em> The directory support was introduced in the <code>1.7.0</code> version. Previously only one metadata file was found.
-<em>Compatibility:</em> Before the <code>1.7.0</code>, the set location was searched in all resource folders. This is no more supported because it's an anti-pattern.</p>
-<p>The second option allows skipping annotations processing, by using the <code>ignoreAnnotations</code> element:
-{div:class=pom}
-<plugin>
-&nbsp;&nbsp;&nbsp; <groupId>org.apache.felix</groupId>
-&nbsp;&nbsp;&nbsp; <artifactId>maven-ipojo-plugin</artifactId>
-&nbsp;&nbsp;&nbsp; <version>1.6.0</version>
-&nbsp;&nbsp;&nbsp; <executions>
-&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <execution>
-&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <goals>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <goal>ipojo-bundle</goal>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </goals>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <configuration>
-&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;{color:red}<ignoreAnnotations>true</ignoreAnnotations>{color}
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </configuration>
-&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;</execution>
-&nbsp;&nbsp;&nbsp;</executions>
-</plugin>
-{div}</p>
-<p>You can also ignore embedded XML-Schemas to use external ones. To do so, add the <code>ignoreEmbeddedSchemas</code>. If set to <code>true</code>, the manipulator doesn't use embedded XML-Schemas:
-{div:class=pom}
-<plugin>
-&nbsp;&nbsp;&nbsp; <groupId>org.apache.felix</groupId>
-&nbsp;&nbsp;&nbsp; <artifactId>maven-ipojo-plugin</artifactId>
-&nbsp;&nbsp;&nbsp; <version>1.6.0</version>
-&nbsp;&nbsp;&nbsp; <executions>
-&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <execution>
-&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <goals>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <goal>ipojo-bundle</goal>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </goals>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <configuration>
-&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;{color:red}<ignoreEmbeddedSchemas>true</ignoreEmbeddedSchemas>{color}
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </configuration>
-&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;</execution>
-&nbsp;&nbsp;&nbsp;</executions>
-</plugin>
-{div}</p>
+<p>You can configure the localization of the iPOJO metadata file as following:</p>
+<div class="codehilite"><pre><span class="nt">&lt;plugin&gt;</span>
+       <span class="nt">&lt;groupId&gt;</span>org.apache.felix<span class="nt">&lt;/groupId&gt;</span>
+       <span class="nt">&lt;artifactId&gt;</span>maven-ipojo-plugin<span class="nt">&lt;/artifactId&gt;</span>
+       <span class="nt">&lt;version&gt;</span>1.8.6<span class="nt">&lt;/version&gt;</span>
+       <span class="nt">&lt;executions&gt;</span>
+              <span class="nt">&lt;execution&gt;</span>
+              <span class="nt">&lt;goals&gt;</span>
+                      <span class="nt">&lt;goal&gt;</span>ipojo-bundle<span class="nt">&lt;/goal&gt;</span>
+               <span class="nt">&lt;/goals&gt;</span>
+               <span class="nt">&lt;configuration&gt;</span>
+                        <span class="nt">&lt;metadata&gt;</span>ipojo/meta.xml<span class="nt">&lt;/metadata&gt;</span>
+               <span class="nt">&lt;/configuration&gt;</span>
+               <span class="nt">&lt;/execution&gt;</span>
+      <span class="nt">&lt;/executions&gt;</span>
+<span class="nt">&lt;/plugin&gt;</span>
+</pre></div>
+
+
+<p>In the metadata element, you can specify your metadata file or directory. The given file path is relative to the root directory ("./ipojo/meta.xml"). If the specified location is a directory, all contained XML files will be used. By default, the plugin searches metadata files into the <code>src/main/ipojo</code> folder. If not found then it searches for <code>target/classes/metadata.xml</code> and <code>./metadata.xml</code>.</p>
+<div class="alert alert-info">
+The directory support was introduced in the `1.7.0` version. Previously only one metadata file was found.
+Before the `1.7.0`, the set location was searched in all resource folders. This is no more supported because it's an anti-pattern.
+</div>
+
+<p>The second option allows skipping annotations processing, by using the <code>ignoreAnnotations</code> element:</p>
+<div class="codehilite"><pre><span class="nt">&lt;plugin&gt;</span>
+       <span class="nt">&lt;groupId&gt;</span>org.apache.felix<span class="nt">&lt;/groupId&gt;</span>
+       <span class="nt">&lt;artifactId&gt;</span>maven-ipojo-plugin<span class="nt">&lt;/artifactId&gt;</span>
+       <span class="nt">&lt;version&gt;</span>1.8.6<span class="nt">&lt;/version&gt;</span>
+       <span class="nt">&lt;executions&gt;</span>
+              <span class="nt">&lt;execution&gt;</span>
+              <span class="nt">&lt;goals&gt;</span>
+                      <span class="nt">&lt;goal&gt;</span>ipojo-bundle<span class="nt">&lt;/goal&gt;</span>
+               <span class="nt">&lt;/goals&gt;</span>
+               <span class="nt">&lt;configuration&gt;</span>
+                      <span class="nt">&lt;ignoreAnnotations&gt;</span>true<span class="nt">&lt;/ignoreAnnotations&gt;</span>
+               <span class="nt">&lt;/configuration&gt;</span>
+               <span class="nt">&lt;/execution&gt;</span>
+      <span class="nt">&lt;/executions&gt;</span>
+<span class="nt">&lt;/plugin&gt;</span>
+</pre></div>
+
+
+<p>You can also ignore embedded XML-Schemas to use external ones. To do so, add the <code>ignoreEmbeddedSchemas</code>. If set to <code>true</code>, the manipulator doesn't use embedded XML-Schemas:</p>
+<div class="codehilite"><pre><span class="nt">&lt;plugin&gt;</span>
+       <span class="nt">&lt;groupId&gt;</span>org.apache.felix<span class="nt">&lt;/groupId&gt;</span>
+       <span class="nt">&lt;artifactId&gt;</span>maven-ipojo-plugin<span class="nt">&lt;/artifactId&gt;</span>
+       <span class="nt">&lt;version&gt;</span>1.8.6<span class="nt">&lt;/version&gt;</span>
+       <span class="nt">&lt;executions&gt;</span>
+              <span class="nt">&lt;execution&gt;</span>
+              <span class="nt">&lt;goals&gt;</span>
+                      <span class="nt">&lt;goal&gt;</span>ipojo-bundle<span class="nt">&lt;/goal&gt;</span>
+               <span class="nt">&lt;/goals&gt;</span>
+               <span class="nt">&lt;configuration&gt;</span>
+                      <span class="nt">&lt;ignoreEmbeddedSchemas&gt;</span>true<span class="nt">&lt;/ignoreEmbeddedSchemas&gt;</span>
+               <span class="nt">&lt;/configuration&gt;</span>
+               <span class="nt">&lt;/execution&gt;</span>
+      <span class="nt">&lt;/executions&gt;</span>
+<span class="nt">&lt;/plugin&gt;</span>
+</pre></div>
+
+
 <h2 id="generate-the-skeleton-of-your-ipojo-bundle">Generate the skeleton of your iPOJO bundle</h2>
 <p>The maven-ipojo-plugin provides a way to generate the skeleton of your project. To generate this structure, just launch the following command:</p>
-<div class="codehilite"><pre><span class="n">mvn</span> <span class="n">org</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">maven</span><span class="o">.</span><span class="n">plugins:maven</span><span class="o">-</span><span class="n">archetype</span><span class="o">-</span><span class="n">plugin:generate</span> <span class="o">\</span>
-<span class="o">-</span><span class="n">DarchetypeArtifactId</span><span class="o">=</span><span class="n">maven</span><span class="o">-</span><span class="n">ipojo</span><span class="o">-</span><span class="n">plugin</span> <span class="o">\</span>
-<span class="o">-</span><span class="n">DarchetypeGroupId</span><span class="o">=</span><span class="n">org</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">felix</span> <span class="o">\</span>
-<span class="o">-</span><span class="n">DartifactId</span><span class="o">=</span><span class="n">ARTIFACT_NAME_OF_YOUR_PROJECT</span> <span class="o">\</span>
-<span class="o">-</span><span class="n">DgroupId</span><span class="o">=</span><span class="n">GROUP_ID_OF_YOUR_PROJECT</span> <span class="o">\</span>
-<span class="o">-</span><span class="n">DarchetypeVersion</span><span class="o">=</span><span class="n">VERSION_OF_YOUR_PROJECT</span> <span class="o">\</span>
-<span class="o">-</span><span class="n">DpackageName</span><span class="o">=</span><span class="n">PACKAGE_NAME</span>
+<div class="codehilite"><pre>mvn org.apache.maven.plugins:maven-archetype-plugin:generate <span class="se">\</span>
+-DarchetypeArtifactId<span class="o">=</span>maven-ipojo-plugin <span class="se">\</span>
+-DarchetypeGroupId<span class="o">=</span>org.apache.felix <span class="se">\</span>
+-DartifactId<span class="o">=</span>ARTIFACT_NAME_OF_YOUR_PROJECT <span class="se">\</span>
+-DgroupId<span class="o">=</span>GROUP_ID_OF_YOUR_PROJECT <span class="se">\</span>
+-DarchetypeVersion<span class="o">=</span>VERSION_OF_YOUR_PROJECT <span class="se">\</span>
+-DpackageName<span class="o">=</span>PACKAGE_NAME
 </pre></div>
 
 
@@ -319,57 +340,56 @@ In the metadata element, you can specify
 </em> the src/main/java and src/main/resources folders, 
 * the structure of your package name.</p>
 <p>The generated project uses iPOJO annotation and is ready to be deployed.</p>
-<div class="info" markdown="1">
-**Maven Archetype**
+<div class="alert alert-info" markdown="1">
+<h4>Maven Archetype</h4>
 The maven-ipojo-plugin archetype generates a pom file using the latest released version of the maven-ipojo-plugin.
 </div>
 
 <h2 id="describing-ipojo-configuration-in-the-pom-file">Describing iPOJO configuration in the pom file</h2>
-<p>It is also possible to describe iPOJO components and instances inside the pom file (avoiding using a externalized file). The configuration can be described in the <code>metadata</code> attribute inside a CDATA block.
-{div:class=pom}
-<plugin>
-&nbsp;&nbsp;    <groupId>org.apache.felix</groupId>
-&nbsp;&nbsp;    <artifactId>maven-ipojo-plugin</artifactId>
-&nbsp;&nbsp;    <version>1.6.0</version>
-&nbsp;&nbsp;    <executions>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;    <execution>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;        <goals>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            <goal>ipojo-bundle</goal>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;        </goals>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;        <configuration>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            <ignoreAnnotations>true</ignoreAnnotations>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;            <metadata>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                &lt;![CDATA[
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                <ipojo
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                 xsi:schemaLocation="org.apache.felix.ipojo http://felix.apache.org/ipojo/schemas/CURRENT/core.xsd"
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                 xmlns="org.apache.felix.ipojo">
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;               <component
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  classname="org.apache.felix.ipojo.test.scenarios.component.LifecycleControllerTest"
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  name="LFC-Test">
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  <provides />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  <controller field="m_state" />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  <properties>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                      <property name="conf" field="m_conf" method="setConf" />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  </properties>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;               </component>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;               <component
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  classname="org.apache.felix.ipojo.test.scenarios.component.LifecycleControllerTest"
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  name="LFC-Test-Immediate" immediate="true" architecture="true">
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  <provides />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  <controller field="m_state" />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  <properties>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                      <property name="conf" field="m_conf" method="setConf" />
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                  </properties>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;               </component>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                </ipojo>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;               ]]&gt;
-&nbsp;&nbsp;&nbsp;          </metadata>
-&nbsp;&nbsp;&nbsp;      </configuration>
-&nbsp;&nbsp;&nbsp;  </execution>
-&nbsp;&nbsp;    </executions>
-</plugin>
-{div}</p>
+<p>It is also possible to describe iPOJO components and instances inside the pom file (avoiding using a externalized file). The configuration can be described in the <code>metadata</code> attribute inside a CDATA block.</p>
+<div class="codehilite"><pre><span class="nt">&lt;plugin&gt;</span>
+        <span class="nt">&lt;groupId&gt;</span>org.apache.felix<span class="nt">&lt;/groupId&gt;</span>
+        <span class="nt">&lt;artifactId&gt;</span>maven-ipojo-plugin<span class="nt">&lt;/artifactId&gt;</span>
+        <span class="nt">&lt;version&gt;</span>1.8.6<span class="nt">&lt;/version&gt;</span>
+        <span class="nt">&lt;executions&gt;</span>
+            <span class="nt">&lt;execution&gt;</span>
+                <span class="nt">&lt;goals&gt;</span>
+                    <span class="nt">&lt;goal&gt;</span>ipojo-bundle<span class="nt">&lt;/goal&gt;</span>
+                <span class="nt">&lt;/goals&gt;</span>
+                <span class="nt">&lt;configuration&gt;</span>
+                    <span class="nt">&lt;ignoreAnnotations&gt;</span>true<span class="nt">&lt;/ignoreAnnotations&gt;</span>
+                    <span class="nt">&lt;metadata&gt;</span>
+                            <span class="cp">&lt;![CDATA[</span>
+<span class="cp">                            &lt;ipojo</span>
+<span class="cp">                             xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span>
+<span class="cp">                             xsi:schemaLocation=&quot;org.apache.felix.ipojo http://felix.apache.org/ipojo/schemas/CURRENT/core.xsd&quot;</span>
+<span class="cp">                             xmlns=&quot;org.apache.felix.ipojo&quot;&gt;</span>
+<span class="cp">                             &lt;component</span>
+<span class="cp">                                classname=&quot;org.apache.felix.ipojo.test.scenarios.component.LifecycleControllerTest&quot;</span>
+<span class="cp">                                name=&quot;LFC-Test&quot;&gt;</span>
+<span class="cp">                                &lt;provides /&gt;</span>
+<span class="cp">                                &lt;controller field=&quot;m_state&quot; /&gt;</span>
+<span class="cp">                                &lt;properties&gt;</span>
+<span class="cp">                                    &lt;property name=&quot;conf&quot; field=&quot;m_conf&quot; method=&quot;setConf&quot; /&gt;</span>
+<span class="cp">                                &lt;/properties&gt;</span>
+<span class="cp">                             &lt;/component&gt;</span>
+<span class="cp">                             &lt;component</span>
+<span class="cp">                                classname=&quot;org.apache.felix.ipojo.test.scenarios.component.LifecycleControllerTest&quot;</span>
+<span class="cp">                                name=&quot;LFC-Test-Immediate&quot; immediate=&quot;true&quot; architecture=&quot;true&quot;&gt;</span>
+<span class="cp">                                &lt;provides /&gt;</span>
+<span class="cp">                                &lt;controller field=&quot;m_state&quot; /&gt;</span>
+<span class="cp">                                &lt;properties&gt;</span>
+<span class="cp">                                    &lt;property name=&quot;conf&quot; field=&quot;m_conf&quot; method=&quot;setConf&quot; /&gt;</span>
+<span class="cp">                                &lt;/properties&gt;</span>
+<span class="cp">                             &lt;/component&gt;</span>
+<span class="cp">                            &lt;/ipojo&gt;</span>
+<span class="cp">                           ]]&gt;</span>
+                    <span class="nt">&lt;/metadata&gt;</span>
+                <span class="nt">&lt;/configuration&gt;</span>
+            <span class="nt">&lt;/execution&gt;</span>
+        <span class="nt">&lt;/executions&gt;</span>
+<span class="nt">&lt;/plugin&gt;</span>
+</pre></div>
         </div>
     </div>
 
@@ -384,7 +404,7 @@ The maven-ipojo-plugin archetype generat
                 may be trademarks or registered trademarks of their respective owners.
                 </div>
                 <div class="timestamp span3 offset2">
-                Rev. 1441864 by fmeschbe on Sun, 3 Feb 2013 06:44:40 +0000
+                Rev. 1465947 by clement on Tue, 9 Apr 2013 09:37:22 +0000
                 </div>
             </div>
         </footer>           

Modified: websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-webconsole-plugin.html
==============================================================================
--- websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-webconsole-plugin.html (original)
+++ websites/staging/felix/trunk/content/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-webconsole-plugin.html Tue Apr  9 09:37:59 2013
@@ -104,7 +104,7 @@
                                         <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-userguide/ipojo-faq.html">FAQ</a></li>
                                         <li><a href="">Reference Card</a></li>
                                         <li class="divider"></li>
-                                        <li><a href="">Handler development</a></li>
+                                        <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-devguide/how-to-write-your-own-handler.html">Handler development</a></li>
                                         <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-devguide/how-to-use-ipojo-manipulation-metadata.html">Manipulation Metadata </a></li>
                                         <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-devguide/dive-into-the-ipojo-manipulation-depths.html">Dive into the iPOJO Manipulation depths</a></li>
                                     </ul>
@@ -116,11 +116,10 @@
                             <a class="dropdown-toggle" data-toggle="dropdown" href="#">Tools <b class="caret"></b></a>
                             <ul class="dropdown-menu" id="swatch-menu">
                                 <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-ant-task.html">Ant Task</a></li>
-                                <li><a href="">Eclipse Plugin</a></li>
-                                <li><a href="">Maven Plugin</a></li>
-                                <li><a href="">`arch` shell command</a></li>
-                                <li><a href="">Online Manipulator</a></li>
-                                <li><a href="">Webconsole plugin</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-maven-plug-in.html">Maven Plugin</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-arch-command.html">Architecture commands</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/apache-felix-ipojo-online-manipulator.html">Online Manipulator</a></li>
+                                <li><a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-webconsole-plugin.html">Webconsole plugin</a></li>
                             </ul>
                         </li>
 
@@ -154,10 +153,16 @@
     <div class="container">
         <div class="content">
             <h1 id="ipojo-webconsole-plugin">iPOJO Webconsole Plugin</h1>
-<p><em>If you like the <a href="/documentation/subprojects/apache-felix-web-console.html">Apache Felix Web Console</a>, you will be interested by the iPOJO plugin. This plugin gives you all the information about iPOJO instances, factories and handlers deployed on the framework.</em></p>
-<p>{div:class=toc}
-[TOC]
-{div}</p>
+<p><em>If you like the Apache Felix Web Console, you will be interested by the iPOJO plugin. This plugin gives you all the information about iPOJO instances, factories and handlers deployed on the framework.</em></p>
+<div class="toc">
+<ul>
+<li><a href="#ipojo-webconsole-plugin">iPOJO Webconsole Plugin</a><ul>
+<li><a href="#features">Features</a></li>
+<li><a href="#using-the-plugin">Using the plugin</a></li>
+</ul>
+</li>
+</ul>
+</div>
 <h2 id="features">Features</h2>
 <ul>
 <li>Lists created instances</li>
@@ -167,25 +172,14 @@
 <li>List available handlers</li>
 <li>Instance and Factories are <code>navigable</code>, so you can easily understand the system architecture</li>
 </ul>
-<p>In other words, it replace the <a href="/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-tools/ipojo-arch-command.html"><code>arch</code></a> command.</p>
 <h2 id="using-the-plugin">Using the plugin</h2>
-<p>To use the plugin you need an OSGi platform with:
-<em> an HTTP Service (<a href="">Download</a>)
-</em> The Apache Felix Webconsole
-<em> iPOJO 
-</em> The iPOJO Plugin (compiled with iPOJO)</p>
-<p>To start the web console, please refer to the <a href="/documentation/subprojects/apache-felix-web-console.html">Apache Felix web console documentation</a>.</p>
-<p>You can also use OBR to deploy the web console and the plugin:
-{code:none}
-obr start "Apache Felix Web Management Console"</p>
-<div class="codehilite"><pre><span class="n">This</span> <span class="n">command</span> <span class="n">deploys</span> <span class="n">an</span> <span class="n">HTTP</span> <span class="n">Service</span><span class="p">,</span> <span class="n">the</span> <span class="n">web</span> <span class="n">console</span><span class="p">,</span> <span class="n">iPOJO</span> <span class="p">(</span><span class="n">core</span><span class="p">)</span> <span class="ow">and</span> <span class="n">the</span> <span class="n">plugin</span><span class="o">.</span>
-
-<span class="n">h2</span><span class="o">.</span> <span class="n">Screenshots</span>
-<span class="o">!</span><span class="n">Picture</span> <span class="mi">5</span><span class="o">.</span><span class="n">png</span><span class="o">|</span><span class="n">thumbnail</span><span class="o">!</span> <span class="o">!</span><span class="n">Picture</span> <span class="mi">6</span><span class="o">.</span><span class="n">png</span><span class="o">|</span><span class="n">thumbnail</span><span class="o">!</span> <span class="o">!</span><span class="n">Picture</span> <span class="mi">7</span><span class="o">.</span><span class="n">png</span><span class="o">|</span><span class="n">thumbnail</span><span class="o">!</span>
-<span class="o">!</span><span class="n">Picture</span> <span class="mi">8</span><span class="o">.</span><span class="n">png</span><span class="o">|</span><span class="n">thumbnail</span><span class="o">!</span> <span class="o">!</span><span class="n">Picture</span> <span class="mi">9</span><span class="o">.</span><span class="n">png</span><span class="o">|</span><span class="n">thumbnail</span><span class="o">!</span> <span class="o">!</span><span class="n">Picture</span> <span class="mi">10</span><span class="o">.</span><span class="n">png</span><span class="o">|</span><span class="n">thumbnail</span><span class="o">!</span>
-<span class="o">\\</span>
-<span class="o">\\</span>
-</pre></div>
+<p>To use the plugin you need an OSGi platform with:</p>
+<ul>
+<li>a HTTP Service</li>
+<li>The Apache Felix Webconsole</li>
+<li>iPOJO </li>
+<li>The iPOJO Web console plugin</li>
+</ul>
         </div>
     </div>
 
@@ -200,7 +194,7 @@ obr start "Apache Felix Web Management C
                 may be trademarks or registered trademarks of their respective owners.
                 </div>
                 <div class="timestamp span3 offset2">
-                Rev. 1441864 by fmeschbe on Sun, 3 Feb 2013 06:44:40 +0000
+                Rev. 1465947 by clement on Tue, 9 Apr 2013 09:37:22 +0000
                 </div>
             </div>
         </footer>