diff --git a/ipojo/handler/jmx/doc/ipojo-jmx-handler.html b/ipojo/handler/jmx/doc/ipojo-jmx-handler.html
index 822df50..fd1d6d5 100644
--- a/ipojo/handler/jmx/doc/ipojo-jmx-handler.html
+++ b/ipojo/handler/jmx/doc/ipojo-jmx-handler.html
@@ -1,343 +1,430 @@
-
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<HTML>
+<html><head>
+
+
   
-<!-- Mirrored Site: felix.apache.org. File: /site/ipojo-jmx-handler.html. Date: Mon, 13 Oct 2008 06:53:08 GMT -->
-<HEAD>
-    <TITLE>Apache Felix - iPOJO JMX Handler</TITLE>
-    <LINK rel="stylesheet" href="media.data/site.css" type="text/css" media="all">
-    <META http-equiv="Content-Type" content="text/html;charset=UTF-8">
-  </HEAD>
-  <BODY>
-    <DIV class="title"><DIV class="logo"><A href="index.html"><IMG border="0" alt="Apache Felix" src="media.data/logo.png"></A></DIV><DIV class="header"><A href="http://www.apache.org/"><IMG border="0" alt="Apache" src="media.data/apache.png"></A></DIV></DIV>
-    <DIV class="menu">
- 
-             
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
-                                     
-                                                 
-            <UL>
-	<LI><A href="news.html" title="news">news</A></LI>
-	<LI><A href="license.html" title="license">license</A></LI>
-	<LI><SPAN class="nobr"><A href="downloads.html" title="Visit page outside Confluence" rel="nofollow">downloads<SUP><IMG class="rendericon" src="../../cwiki.apache.org/confluence/images/icons/linkext7.gif" height="7" width="7" align="absmiddle" alt="" border="0"></SUP></A></SPAN></LI>
-	<LI><A href="documentation.html" title="documentation">documentation</A></LI>
-	<LI><A href="mailinglists.html" title="mailinglists">mailing lists</A></LI>
-	<LI><A href="contributing.html" title="Contributing">contributing</A></LI>
-	<LI><SPAN class="nobr"><A href="http://www.apache.org/" title="Visit page outside Confluence" rel="nofollow">asf<SUP><IMG class="rendericon" src="../../cwiki.apache.org/confluence/images/icons/linkext7.gif" height="7" width="7" align="absmiddle" alt="" border="0"></SUP></A></SPAN></LI>
-	<LI><SPAN class="nobr"><A href="http://www.apache.org/foundation/sponsorship.html" title="Visit page outside Confluence" rel="nofollow">sponsorship<SUP><IMG class="rendericon" src="../../cwiki.apache.org/confluence/images/icons/linkext7.gif" height="7" width="7" align="absmiddle" alt="" border="0"></SUP></A></SPAN></LI>
-	<LI><SPAN class="nobr"><A href="http://www.apache.org/foundation/thanks.html" title="Visit page outside Confluence" rel="nofollow">sponsors<SUP><IMG class="rendericon" src="../../cwiki.apache.org/confluence/images/icons/linkext7.gif" height="7" width="7" align="absmiddle" alt="" border="0"></SUP></A></SPAN>
+    <title>Apache Felix - iPOJO JMX Handler</title>
+    <link rel="stylesheet" href="ipojo-jmx-handler_files/site.css" type="text/css" media="all">
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+  </head><body>
+    <div class="title"><div class="logo"><a href="http://felix.apache.org/site/index.html"><img alt="Apache Felix" src="ipojo-jmx-handler_files/logo.png" border="0"></a></div><div class="header"><a href="http://www.apache.org/"><img alt="Apache" src="ipojo-jmx-handler_files/apache.png" border="0"></a></div></div>
+    <div class="menu">
+<ul>
+	<li><a href="http://felix.apache.org/site/news.html" title="news">news</a></li>
+	<li><a href="http://felix.apache.org/site/license.html" title="license">license</a></li>
+	<li><span class="nobr"><a href="http://felix.apache.org/site/downloads.cgi" title="Visit page outside Confluence" rel="nofollow">downloads<sup><img class="rendericon" src="ipojo-jmx-handler_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span></li>
+	<li><a href="http://felix.apache.org/site/documentation.html" title="documentation">documentation</a></li>
+	<li><a href="http://felix.apache.org/site/mailinglists.html" title="mailinglists">mailing lists</a></li>
+	<li><a href="http://felix.apache.org/site/contributing.html" title="Contributing">contributing</a></li>
+	<li><span class="nobr"><a href="http://www.apache.org/" title="Visit page outside Confluence" rel="nofollow">asf<sup><img class="rendericon" src="ipojo-jmx-handler_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span></li>
+	<li><span class="nobr"><a href="http://www.apache.org/foundation/sponsorship.html" title="Visit page outside Confluence" rel="nofollow">sponsorship<sup><img class="rendericon" src="ipojo-jmx-handler_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span></li>
+	<li><span class="nobr"><a href="http://www.apache.org/foundation/thanks.html" title="Visit page outside Confluence" rel="nofollow">sponsors<sup><img class="rendericon" src="ipojo-jmx-handler_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span>
 <!-- ApacheCon Ad -->
-<IFRAME src="http://www.apache.org/ads/button.html" style="border-width:0; float: left" frameborder="0" scrolling="no" width="135" height="135"></IFRAME>
-<P style="height: 100px">
-<!-- ApacheCon Ad --></LI>
-</UL>
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </DIV>
-    <DIV class="main">
-<TABLE class="sectionMacro" border="0" cellpadding="5" cellspacing="0" width="100%"><TBODY><TR>
-<TD class="confluenceTd" valign="top" width="80%">
+<iframe src="ipojo-jmx-handler_files/button.html" style="border-width: 0pt; float: left;" scrolling="no" width="135" frameborder="0" height="135"></iframe>
+<p style="height: 100px;">
+<!-- ApacheCon Ad -->
+</p></li></ul> </div>
+    <div class="main">
+<table class="sectionMacro" border="0" cellpadding="5" cellspacing="0" width="100%"><tbody><tr>
+<td class="confluenceTd" valign="top" width="80%">
 
-<H1><A name="iPOJOJMXHandler-iPOJOJMXHandler"></A>iPOJO JMX Handler</H1>
+<h1><a name="iPOJOJMXHandler-iPOJOJMXHandler"></a>iPOJO JMX Handler</h1>
 
-<P>This handler provides JMX management of component instance. It could be useful to manage instance remotely. As the handler exposes MBeans, you must have a MBean server running on your platform (as the platform MBean server or the MOSGi MBean Server).</P>
+<p>This handler provides JMX management of component instance. It could
+be useful to manage instance remotely. As the handler exposes MBeans,
+you must have a MBean server running on your platform (as the platform
+MBean server or the MOSGi MBean Server).</p>
 
-<H2><A name="iPOJOJMXHandler-Features"></A>Features</H2>
+<h2><a name="iPOJOJMXHandler-Features"></a>Features</h2>
 
-<P>The handler allows to:</P>
-<UL>
-	<LI>Expose attributes accessible via JMX (with rights management).</LI>
-	<LI>Expose methods to be called through JMX.</LI>
-	<LI>Get notifications when attributes are modified .</LI>
-</UL>
+<p>The handler allows to:</p>
+<ul>
+	<li>Expose attributes accessible via JMX (with rights management).</li>
+	<li>Expose methods to be called through JMX.</li>
+	<li>Get notifications when attributes are modified .</li>
+</ul>
 
 
-<H2><A name="iPOJOJMXHandler-Prerequisites"></A>Prerequisites</H2>
+<h2><a name="iPOJOJMXHandler-Prerequisites"></a>Prerequisites</h2>
 
-<P>To be functional this handler must register on an MBean Server,thus you obviously need it. Several servers are currently supported : the standard platform MBean server (included in the JDK), MOSGi (provided with Felix), ...<BR>
-To use MOSGi, you have to deploy at least the following three bundles of MOSGi:</P>
-<UL>
-	<LI>org.apache.felix.mosgi.jmx.agent</LI>
-	<LI>org.apache.felix.mosgi.jmx.registry</LI>
-	<LI>org.apache.felix.mosgi.jmx.rmiconnector</LI>
-</UL>
+<p>To be functional this handler must register on an MBean Server,thus
+you obviously need it. Several servers are currently supported : the
+standard platform MBean server (included in the JDK), MOSGi (provided
+with Felix), ...<br>
+To use MOSGi, you have to deploy at least the following three bundles of MOSGi:</p>
+<ul>
+	<li>org.apache.felix.mosgi.jmx.agent</li>
+	<li>org.apache.felix.mosgi.jmx.registry</li>
+	<li>org.apache.felix.mosgi.jmx.rmiconnector</li>
+</ul>
 
 
-<P>You can find MOSGi documentation on <SPAN class="nobr"><A href="http://cwiki.apache.org/FELIX/mosgi-managed-osgi-framework.html" title="Visit page outside Confluence" rel="nofollow">http://cwiki.apache.org/FELIX/mosgi-managed-osgi-framework.html<SUP><IMG class="rendericon" src="../../cwiki.apache.org/confluence/images/icons/linkext7.gif" height="7" width="7" align="absmiddle" alt="" border="0"></SUP></A></SPAN></P>
+<p>You can find MOSGi documentation on <span class="nobr"><a href="http://cwiki.apache.org/FELIX/mosgi-managed-osgi-framework.html" title="Visit page outside Confluence" rel="nofollow">http://cwiki.apache.org/FELIX/mosgi-managed-osgi-framework.html<sup><img class="rendericon" src="ipojo-jmx-handler_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span></p>
 
-<H2><A name="iPOJOJMXHandler-Download"></A>Download</H2>
+<h2><a name="iPOJOJMXHandler-Download"></a>Download</h2>
 
-<P>The JMX handler is available in the Felix trunk in the iPOJO project. See the <A href="download.html" title="Download">Download</A> page to download and compile these sources.</P>
+<p>The JMX handler is available in the Felix trunk in the iPOJO project. See the <a href="http://felix.apache.org/site/download.html" title="Download">Download</a> page to download and compile these sources.</p>
 
-<H2><A name="iPOJOJMXHandler-Howtouseit"></A>How to use it</H2>
+<h2><a name="iPOJOJMXHandler-Howtouseit"></a>How to use it</h2>
 
-<P>The handler needs to be added in the metadata.xml, you just add a namespace (e.g., jmx) :</P>
-<DIV class="code"><DIV class="codeContent">
-<PRE class="code-xml"><SPAN class="code-tag">&lt;ipojo <SPAN class="code-keyword">xmlns:jmx</SPAN>=<SPAN class="code-quote">&quot;org.apache.felix.ipojo.handlers.jmx&quot;</SPAN>&gt;</SPAN>
+<p>The handler needs to be added in the metadata.xml, you just add a namespace (e.g., jmx) :</p>
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;ipojo <span class="code-keyword">xmlns:jmx</span>=<span class="code-quote">"org.apache.felix.ipojo.handlers.jmx"</span>&gt;</span>
 	...
-<SPAN class="code-tag">&lt;/ipojo&gt;</SPAN></PRE>
-</DIV></DIV>
-<P>So, you could now expose in JMX properties and methods of your component. They are surrounded by the &lt;jmx:config&gt;<BR>
-tag.</P>
-<DIV class="code"><DIV class="codeContent">
-<PRE class="code-xml"><SPAN class="code-tag">&lt;jmx:config&gt;</SPAN>
-    <SPAN class="code-tag">&lt;property name=<SPAN class="code-quote">&quot;message&quot;</SPAN> field=<SPAN class="code-quote">&quot;m_msg&quot;</SPAN> rights=<SPAN class="code-quote">&quot;w&quot;</SPAN> notification=<SPAN class="code-quote">&quot;true&quot;</SPAN>/&gt;</SPAN>
-    <SPAN class="code-tag">&lt;method name=<SPAN class="code-quote">&quot;doSomethingBad&quot;</SPAN>/&gt;</SPAN>
-    <SPAN class="code-tag">&lt;method name=<SPAN class="code-quote">&quot;doSomethingGood&quot;</SPAN>/&gt;</SPAN>
-<SPAN class="code-tag">&lt;/jmx:config&gt;</SPAN></PRE>
-</DIV></DIV>
-<P><EM>Note:</EM> Be careful that the argument and return type of methods must be serializable. In case of several methods have the same name, each of them will be exposed.</P>
+<span class="code-tag">&lt;/ipojo&gt;</span></pre>
+</div></div>
+<p>So, you could now expose in JMX properties and methods of your component. They are surrounded by the &lt;jmx:config&gt;<br>
+tag.</p>
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;jmx:config&gt;</span>
+    <span class="code-tag">&lt;jmx:property name=<span class="code-quote">"message"</span> field=<span class="code-quote">"m_msg"</span> rights=<span class="code-quote">"w"</span> notification=<span class="code-quote">"true"</span>/&gt;</span>
+    <span class="code-tag">&lt;jmx:method name=<span class="code-quote">"doSomethingBad"</span>/&gt;</span>
+    <span class="code-tag">&lt;jmx:method name=<span class="code-quote">"doSomethingGood"</span>/&gt;</span>
+<span class="code-tag">&lt;/jmx:config&gt;</span></pre>
+</div></div>
+<p><em>Note:</em> Be careful that the argument and return type of
+methods must be serializable. In case of several methods have the same
+name, each of them will be exposed.</p>
 
-<H2><A name="iPOJOJMXHandler-JMXHandleroptions"></A>JMX Handler options</H2>
+<h2><a name="iPOJOJMXHandler-JMXHandleroptions"></a>JMX Handler options</h2>
 
-<P>Here you can find all configuration options of the JMX handler. There are two kinds of manageable elements : properties and methods. First is described the global configuration of the handler. Then elements can be configured, using several attributes, as described below.</P>
+<p>Here you can find all configuration options of the JMX handler.
+There are two kinds of manageable elements : properties and methods.
+First is described the global configuration of the handler. Then
+elements can be configured, using several attributes, as described
+below.</p>
 
-<H2><A name="iPOJOJMXHandler-Globalhandlerattributes"></A>Global handler attributes</H2>
-<TABLE class="confluenceTable"><TBODY>
-<TR>
-<TH class="confluenceTh">Attribute name </TH>
-<TH class="confluenceTh"> Required </TH>
-<TH class="confluenceTh"> Description</TH>
-</TR>
-<TR>
-<TD class="confluenceTd">objectName</TD>
-<TD class="confluenceTd">NO</TD>
-<TD class="confluenceTd">The complete object name of the managed component. The syntax of this attribute must be compliant with the ObjectName syntax, detailed in the JMX specification.<BR>
-If neither domain nor name attributes are specified, the default value  is determined by the package, the type and the instance name of the component. This attribute overrides the domain and name attributes.<BR>
-<EM>Example:</EM> &quot;my.domain:type=myType,name=myName&quot;</TD>
-</TR>
-<TR>
-<TD class="confluenceTd">domain</TD>
-<TD class="confluenceTd">NO</TD>
-<TD class="confluenceTd">The domain of the managed object (i.e., the left part of the object name). This attribute must be compliant with the domain syntax, as described in the JMX specification.<BR>
-<EM>Example:</EM> &quot;my.domain&quot;</TD>
-</TR>
-<TR>
-<TD class="confluenceTd">name</TD>
-<TD class="confluenceTd">NO</TD>
-<TD class="confluenceTd">The name property of the managed object. The value of this attribute must comply with the ObjectName value syntax, as described in the JMX specification.</TD>
-</TR>
-<TR>
-<TD class="confluenceTd">usesMOSGi</TD>
-<TD class="confluenceTd">NO</TD>
-<TD class="confluenceTd">Determines if the component must be register on the MOSGi MBean server or not.</TD>
-</TR>
-<TR>
-<TD class="confluenceTd">preRegister <BR>
-postRegister <BR>
-preDeregister<BR>
-postDeregister</TD>
-<TD class="confluenceTd">NO</TD>
-<TD class="confluenceTd">These attributes allow to specify methods to carry out operations before and after being registered or unregistered from the MBean server.</TD>
-</TR>
-</TBODY></TABLE>
+<h2><a name="iPOJOJMXHandler-Globalhandlerattributes"></a>Global handler attributes</h2>
+<table class="confluenceTable"><tbody>
+<tr>
+<th class="confluenceTh">Attribute name </th>
+<th class="confluenceTh"> Required </th>
+<th class="confluenceTh"> Description</th>
+</tr>
+<tr>
+<td class="confluenceTd">objectName</td>
+<td class="confluenceTd">NO</td>
+<td class="confluenceTd">The complete object name of the managed
+component. The syntax of this attribute must be compliant with the
+ObjectName syntax, detailed in the JMX specification.<br>
+If neither domain nor name attributes are specified, the default value
+is determined by the package, the type and the instance name of the
+component. This attribute overrides the domain and name attributes.<br>
+<em>Example:</em> "my.domain:type=myType,name=myName"</td>
+</tr>
+<tr>
+<td class="confluenceTd">domain</td>
+<td class="confluenceTd">NO</td>
+<td class="confluenceTd">The domain of the managed object (i.e., the
+left part of the object name). This attribute must be compliant with
+the domain syntax, as described in the JMX specification.<br>
+<em>Example:</em> "my.domain"</td>
+</tr>
+<tr>
+<td class="confluenceTd">name</td>
+<td class="confluenceTd">NO</td>
+<td class="confluenceTd">The name property of the managed object. The
+value of this attribute must comply with the ObjectName value syntax,
+as described in the JMX specification.</td>
+</tr>
+<tr>
+<td class="confluenceTd">usesMOSGi</td>
+<td class="confluenceTd">NO</td>
+<td class="confluenceTd">Determines if the component must be register on the MOSGi MBean server or not.</td>
+</tr>
+<tr>
+<td class="confluenceTd">preRegister <br>
+postRegister <br>
+preDeregister<br>
+postDeregister</td>
+<td class="confluenceTd">NO</td>
+<td class="confluenceTd">These attributes allow to specify methods to
+carry out operations before and after being registered or unregistered
+from the MBean server.</td>
+</tr>
+</tbody></table>
 
-<H2><A name="iPOJOJMXHandler-Propertiesattributes"></A>Properties attributes</H2>
-<TABLE class="confluenceTable"><TBODY>
-<TR>
-<TH class="confluenceTh">Attribute name</TH>
-<TH class="confluenceTh">Required</TH>
-<TH class="confluenceTh">Description</TH>
-</TR>
-<TR>
-<TD class="confluenceTd">field</TD>
-<TD class="confluenceTd">YES</TD>
-<TD class="confluenceTd">The name of the component's field to expose.</TD>
-</TR>
-<TR>
-<TD class="confluenceTd">name</TD>
-<TD class="confluenceTd">NO</TD>
-<TD class="confluenceTd">The name of the property as it will appear in JMX. If unspecified, the default value is the name of the exposed field.</TD>
-</TR>
-<TR>
-<TD class="confluenceTd">rights</TD>
-<TD class="confluenceTd">NO</TD>
-<TD class="confluenceTd">Specify the access permission of the exposed field. The accepted values are : 
-<UL>
-	<LI>&quot;r&quot; : read-only access, the default value.</LI>
-	<LI>&quot;w&quot; : read and write access.</LI>
-</UL>
-</TD>
-</TR>
-<TR>
-<TD class="confluenceTd">notification</TD>
-<TD class="confluenceTd">NO</TD>
-<TD class="confluenceTd">Enable or disable attribute change notification sending for this property. If set to &quot;true&quot;, a notification is sent each time the value of the field changes.</TD>
-</TR>
-</TBODY></TABLE>
+<h2><a name="iPOJOJMXHandler-Propertiesattributes"></a>Properties attributes</h2>
+<table class="confluenceTable"><tbody>
+<tr>
+<th class="confluenceTh">Attribute name</th>
+<th class="confluenceTh">Required</th>
+<th class="confluenceTh">Description</th>
+</tr>
+<tr>
+<td class="confluenceTd">field</td>
+<td class="confluenceTd">YES</td>
+<td class="confluenceTd">The name of the component's field to expose.</td>
+</tr>
+<tr>
+<td class="confluenceTd">name</td>
+<td class="confluenceTd">NO</td>
+<td class="confluenceTd">The name of the property as it will appear in JMX. If unspecified, the default value is the name of the exposed field.</td>
+</tr>
+<tr>
+<td class="confluenceTd">rights</td>
+<td class="confluenceTd">NO</td>
+<td class="confluenceTd">Specify the access permission of the exposed field. The accepted values are : 
+<ul>
+	<li>"r" : read-only access, the default value.</li>
+	<li>"w" : read and write access.</li>
+</ul>
+</td>
+</tr>
+<tr>
+<td class="confluenceTd">notification</td>
+<td class="confluenceTd">NO</td>
+<td class="confluenceTd">Enable or disable attribute change
+notification sending for this property. If set to "true", a
+notification is sent each time the value of the field changes.</td>
+</tr>
+</tbody></table>
 
-<H2><A name="iPOJOJMXHandler-Methodsattributes"></A>Methods attributes</H2>
-<TABLE class="confluenceTable"><TBODY>
-<TR>
-<TH class="confluenceTh">Attribute name</TH>
-<TH class="confluenceTh">Required</TH>
-<TH class="confluenceTh">Description</TH>
-</TR>
-<TR>
-<TD class="confluenceTd">name</TD>
-<TD class="confluenceTd">YES</TD>
-<TD class="confluenceTd">The name of the method to expose. If multiple methods have the same name, all of them are exposed.</TD>
-</TR>
-<TR>
-<TD class="confluenceTd">description</TD>
-<TD class="confluenceTd">NO</TD>
-<TD class="confluenceTd">The description of the exposed method, as it will appear in JMX.</TD>
-</TR>
-</TBODY></TABLE>
+<h2><a name="iPOJOJMXHandler-Methodsattributes"></a>Methods attributes</h2>
+<table class="confluenceTable"><tbody>
+<tr>
+<th class="confluenceTh">Attribute name</th>
+<th class="confluenceTh">Required</th>
+<th class="confluenceTh">Description</th>
+</tr>
+<tr>
+<td class="confluenceTd">name</td>
+<td class="confluenceTd">YES</td>
+<td class="confluenceTd">The name of the method to expose. If multiple methods have the same name, all of them are exposed.</td>
+</tr>
+<tr>
+<td class="confluenceTd">description</td>
+<td class="confluenceTd">NO</td>
+<td class="confluenceTd">The description of the exposed method, as it will appear in JMX.</td>
+</tr>
+</tbody></table>
 
 
-<H2><A name="iPOJOJMXHandler-Examples"></A>Examples</H2>
+<h2><a name="iPOJOJMXHandler-Examples"></a>Examples</h2>
 
-<P>In this part, we will give you a complete example of a component managed with JMX, using the JConsole provided by the SUN JDK.</P>
+<p>In this part, we will give you a complete example of a component managed with JMX, using the JConsole provided by the SUN JDK.</p>
 
-<H3><A name="iPOJOJMXHandler-ExposingAttributes"></A>Exposing Attributes</H3>
+<h3><a name="iPOJOJMXHandler-ExposingAttributes"></a>Exposing Attributes</h3>
 
-<P>In first time we create a simple component named MyComponent. We have add two fields named m_level (int) and m_message (String).</P>
-<DIV class="code"><DIV class="codeContent">
-<PRE class="code-java"><SPAN class="code-keyword">public</SPAN> class
+<p>In first time we create a simple component named MyComponent. We have add two fields named m_level (int) and m_message (String).</p>
+<div class="code"><div class="codeContent">
+<pre class="code-java"><span class="code-keyword">public</span> class
 MyComponent ... {
-	<SPAN class="code-comment">// Exposed attributes
-</SPAN>	<SPAN class="code-keyword">private</SPAN> <SPAN class="code-object">String</SPAN> m_message;
-	<SPAN class="code-keyword">private</SPAN> <SPAN class="code-object">int</SPAN> m_level;
-}</PRE>
-</DIV></DIV>
-<P>We expose now the attributes in the jmx:config<BR>
-tag in the metadata :</P>
-<DIV class="code"><DIV class="codeContent">
-<PRE class="code-xml"><SPAN class="code-tag">&lt;?xml version=<SPAN class="code-quote">&quot;1.0&quot;</SPAN> encoding=<SPAN class="code-quote">&quot;UTF-8&quot;</SPAN>?&gt;</SPAN>
-<SPAN class="code-tag">&lt;iPOJO <SPAN class="code-keyword">xmlns:jmx</SPAN>=<SPAN class="code-quote">&quot;org.apache.felix.ipojo.handlers.jmx&quot;</SPAN>&gt;</SPAN>
-    &lt;component className=<SPAN class="code-quote">&quot;...MyComponent&quot;</SPAN>
-      architecture=<SPAN class="code-quote">&quot;true&quot;</SPAN>
-      immediate=<SPAN class="code-quote">&quot;true&quot;</SPAN>&gt;
+	<span class="code-comment">// Exposed attributes
+</span>	<span class="code-keyword">private</span> <span class="code-object">String</span> m_message;
+	<span class="code-keyword">private</span> <span class="code-object">int</span> m_level;
+}</pre>
+</div></div>
+<p>We expose now the attributes in the jmx:config<br>
+tag in the metadata :</p>
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag">&lt;?xml version=<span class="code-quote">"1.0"</span> encoding=<span class="code-quote">"UTF-8"</span>?&gt;</span>
+<span class="code-tag">&lt;iPOJO <span class="code-keyword">xmlns:jmx</span>=<span class="code-quote">"org.apache.felix.ipojo.handlers.jmx"</span>&gt;</span>
+    &lt;component className=<span class="code-quote">"...MyComponent"</span>
+      architecture=<span class="code-quote">"true"</span>
+      immediate=<span class="code-quote">"true"</span>&gt;
 
-      <SPAN class="code-tag">&lt;provides/&gt;</SPAN>
-      <SPAN class="code-tag">&lt;jmx:config&gt;</SPAN>
-	<SPAN class="code-tag"><SPAN class="code-comment">&lt;!-- Exposed properties --&gt;</SPAN></SPAN>
-	&lt;property field=<SPAN class="code-quote">&quot;m_level&quot;</SPAN>
-          name=<SPAN class="code-quote">&quot;The level&quot;</SPAN>
-          rights=<SPAN class="code-quote">&quot;r&quot;</SPAN>/&gt;
-	&lt;property field=<SPAN class="code-quote">&quot;m_message&quot;</SPAN>
-          name=<SPAN class="code-quote">&quot;The message&quot;</SPAN>
-          rights=<SPAN class="code-quote">&quot;w&quot;</SPAN>/&gt;
-      <SPAN class="code-tag">&lt;/jmx:config&gt;</SPAN>
-    <SPAN class="code-tag">&lt;/component&gt;</SPAN>
+      <span class="code-tag">&lt;provides/&gt;</span>
+      <span class="code-tag">&lt;jmx:config&gt;</span>
+	<span class="code-tag"><span class="code-comment">&lt;!-- Exposed properties --&gt;</span></span>
+	&lt;jmx:property field=<span class="code-quote">"m_level"</span>
+          name=<span class="code-quote">"The level"</span>
+          rights=<span class="code-quote">"r"</span>/&gt;
+	&lt;jmx:property field=<span class="code-quote">"m_message"</span>
+          name=<span class="code-quote">"The message"</span>
+          rights=<span class="code-quote">"w"</span>/&gt;
+      <span class="code-tag">&lt;/jmx:config&gt;</span>
+    <span class="code-tag">&lt;/component&gt;</span>
     &lt;instance
-      component=<SPAN class="code-quote">&quot;...MyComponent&quot;</SPAN>/&gt;
-<SPAN class="code-tag">&lt;/iPOJO&gt;</SPAN></PRE>
-</DIV></DIV>
-<P>Now, we could get and write the properties in the JConsole :<BR>
-<IMG src="ipojo-jmx-handler.data/JMXHandler_1.png" align="absmiddle" border="0"></P>
+      component=<span class="code-quote">"...MyComponent"</span>/&gt;
+<span class="code-tag">&lt;/iPOJO&gt;</span></pre>
+</div></div>
+<p>Now, we could get and write the properties in the JConsole :<br>
+<img src="ipojo-jmx-handler_files/JMXHandler_1.png" align="absmiddle" border="0"></p>
 
-<H3><A name="iPOJOJMXHandler-ExposingMethods"></A>Exposing Methods</H3>
+<h3><a name="iPOJOJMXHandler-ExposingMethods"></a>Exposing Methods</h3>
 
-<P>We could now add methods in the initial class :</P>
-<DIV class="code"><DIV class="codeContent">
-<PRE class="code-java">/**
+<p>We could now add methods in the initial class :</p>
+<div class="code"><div class="codeContent">
+<pre class="code-java">/**
 Do something good
 */
-<SPAN class="code-keyword">public</SPAN> void doSomethingGood() {
+<span class="code-keyword">public</span> void doSomethingGood() {
 		...
 }
 
 /**
 Do something bad
 */
-<SPAN class="code-keyword">public</SPAN> void doSomethingBad() {
+<span class="code-keyword">public</span> void doSomethingBad() {
 		...
 }
 
 /**
 Do nothing
 */
-<SPAN class="code-keyword">public</SPAN> void doNothing() {
+<span class="code-keyword">public</span> void doNothing() {
 		...
-}</PRE>
-</DIV></DIV>
-<P>We add corresponding tags in the metadata to expose these methods:</P>
-<DIV class="code"><DIV class="codeContent">
-<PRE class="code-xml"><SPAN class="code-tag"><SPAN class="code-comment">&lt;!-- Exposed methods --&gt;</SPAN></SPAN>
-&lt;method name=<SPAN class="code-quote">&quot;doSomethingGood&quot;</SPAN>
-      description=<SPAN class="code-quote">&quot;Do something good.&quot;</SPAN>/&gt;
-&lt;method name=<SPAN class="code-quote">&quot;doSomethingBad&quot;</SPAN>
-      description=<SPAN class="code-quote">&quot;Do something bad.&quot;</SPAN>/&gt;
-&lt;method name=<SPAN class="code-quote">&quot;doNothing&quot;</SPAN>
-      description=<SPAN class="code-quote">&quot;Do absolutely nothing.&quot;</SPAN>/&gt;</PRE>
-</DIV></DIV>
-<P>Now the three methods are exposed in the operations tab of the JConsole. We can invoked these methods :</P>
+}</pre>
+</div></div>
+<p>We add corresponding tags in the metadata to expose these methods:</p>
+<div class="code"><div class="codeContent">
+<pre class="code-xml"><span class="code-tag"><span class="code-comment">&lt;!-- Exposed methods --&gt;</span></span>
+&lt;jmx:method name=<span class="code-quote">"doSomethingGood"</span>
+      description=<span class="code-quote">"Do something good."</span>/&gt;
+&lt;jmx:method name=<span class="code-quote">"doSomethingBad"</span>
+      description=<span class="code-quote">"Do something bad."</span>/&gt;
+&lt;jmx:method name=<span class="code-quote">"doNothing"</span>
+      description=<span class="code-quote">"Do absolutely nothing."</span>/&gt;</pre>
+</div></div>
+<p>Now the three methods are exposed in the operations tab of the JConsole. We can invoked these methods :</p>
 
-<P><IMG src="ipojo-jmx-handler.data/JMXHandler_2.png" align="absmiddle" border="0"></P>
+<p><img src="ipojo-jmx-handler_files/JMXHandler_2.png" align="absmiddle" border="0"></p>
 
-<H3><A name="iPOJOJMXHandler-AttributeNotifications%3A"></A>Attribute Notifications:</H3>
+<h3><a name="iPOJOJMXHandler-AttributeNotifications:"></a>Attribute Notifications:</h3>
 
-<P>You could subscribe to attribute notification by adding the notification attribute in property tag. In our example if we want to be notified when m_level is modified, we change the property line in the metatada like this:</P>
-<DIV class="code"><DIV class="codeContent">
-<PRE class="code-xml">&lt;property field=<SPAN class="code-quote">&quot;m_level&quot;</SPAN>
-      name=<SPAN class="code-quote">&quot;The level&quot;</SPAN>
-      rights=<SPAN class="code-quote">&quot;r&quot;</SPAN>
-      notification=<SPAN class="code-quote">&quot;true&quot;</SPAN>/&gt;</PRE>
-</DIV></DIV>
-<P>So now if we change the string through JConsole or if the POJO is modified in other way, a notification will be sent to every listener. For example, we subscribe in the notification tab, and we get notification when the message changes :</P>
+<p>You could subscribe to attribute notification by adding the
+notification attribute in property tag. In our example if we want to be
+notified when m_level is modified, we change the property line in the
+metatada like this:</p>
+<div class="code"><div class="codeContent">
+<pre class="code-xml">&lt;jmx:property field=<span class="code-quote">"m_level"</span>
+      name=<span class="code-quote">"The level"</span>
+      rights=<span class="code-quote">"r"</span>
+      notification=<span class="code-quote">"true"</span>/&gt;</pre>
+</div></div>
+<p>So now if we change the string through JConsole or if the POJO is
+modified in other way, a notification will be sent to every listener.
+For example, we subscribe in the notification tab, and we get
+notification when the message changes :</p>
 
-<P><IMG src="ipojo-jmx-handler.data/JMXHandler_3.png" align="absmiddle" border="0"></P>
-</TD>
-<TD class="confluenceTd" valign="top" width="20%">
-<H6><A name="iPOJOJMXHandler-Overview"></A><B>Overview</B></H6>
-<UL>
-	<LI><A href="apache-felix-ipojo.html" title="Apache Felix iPOJO">Home Page</A></LI>
-	<LI><A href="apache-felix-ipojo-feature-overview.html" title="Apache Felix iPOJO Feature Overview">iPOJO Feature Overview</A></LI>
-	<LI><A href="download.html" title="Download">Download &amp; Install </A></LI>
-</UL>
+<p><img src="ipojo-jmx-handler_files/JMXHandler_3.png" align="absmiddle" border="0"></p>
+
+<h2><a name="iPOJOJMXHandler-Configuringthehandlerwithannotations\Newin1.1.0SNAPSHOT\"></a>Configuring the handler with annotations [New in 1.1.0-SNAPSHOT]</h2>
+
+<p>It is possible to configure the handler with simple annotations
+available in the annotation pack ('annotation' project in the iPOJO
+trunk). Here is an example of usage:</p>
+<div class="code"><div class="codeContent">
+<pre class="code-java"><span class="code-keyword">import</span> org.apache.felix.ipojo.annotations.Component;
+<span class="code-keyword">import</span> org.apache.felix.ipojo.handlers.jmx.Config;
+<span class="code-keyword">import</span> org.apache.felix.ipojo.handlers.jmx.Method;
+<span class="code-keyword">import</span> org.apache.felix.ipojo.handlers.jmx.Property;
+
+@Component
+@Config(domain=<span class="code-quote">"my-domain"</span>, usesMOSGi=<span class="code-keyword">false</span>)
+<span class="code-keyword">public</span> class JMXSimple {
+
+    @Property(name=<span class="code-quote">"prop"</span>, notification=<span class="code-keyword">true</span>, rights=<span class="code-quote">"w"</span>) <span class="code-comment">// Field published in the MBean
+</span>    <span class="code-object">String</span> m_foo;
+    
+    @Method(description=<span class="code-quote">"set the foo prop"</span>) <span class="code-comment">// Method published in the MBean
+</span>    <span class="code-keyword">public</span> void setFoo(<span class="code-object">String</span> mes) {
+        <span class="code-object">System</span>.out.println(<span class="code-quote">"Set foo to "</span> + mes);
+        m_foo = mes;
+    }
+    
+    @Method(description=<span class="code-quote">"get the foo prop"</span>) <span class="code-comment">// Method published in the MBean
+</span>    <span class="code-keyword">public</span> <span class="code-object">String</span> getFoo() {
+        <span class="code-keyword">return</span> m_foo;
+    }
+}</pre>
+</div></div>
+<p>The <tt>@org.apache.felix.ipojo.handlers.jmx.Config</tt> (<tt>@Config</tt> if the package it correctly imported) annotation is a type annotation (so placed on the <tt>class</tt> element. This annotation indicates that the instance will be exposed as an MBean. This annotation supports:</p>
+<ul>
+	<li>usesMOSGi: set to <tt>true</tt> to use MOSGi. Otherwise, the MBean will be exposed in the MBean Platform Server (default: <tt>false</tt>).</li>
+	<li>objectname: set the MBean objectname. The objectname must follow JMX specification. (default: <tt>package-name:factory-name:instance-name</tt>)</li>
+	<li>domain: set the MBean domain. (default: <tt>package-name</tt>)</li>
+	<li>name: set the MBean name. (default: <tt>instance-name</tt>).</li>
+</ul>
 
 
-<H6><A name="iPOJOJMXHandler-GettingStarted"></A><B>Getting Started</B></H6>
-<UL>
-	<LI><A href="ipojo-in-10-minutes.html" title="iPOJO in 10 minutes">iPOJO in 10 minutes</A></LI>
-	<LI><A href="ipojo-hello-word-maven-based-tutorial.html" title="iPOJO Hello Word (Maven-Based) tutorial">iPOJO Hello Word &#40;Maven&#45;Based&#41; tutorial</A></LI>
-	<LI><A href="ipojo-advanced-tutorial.html" title="iPOJO Advanced Tutorial">iPOJO Advanced Tutorial</A></LI>
-</UL>
+<p>The <tt>@org.apache.felix.ipojo.handlers.jmx.Property</tt> (<tt>@Property</tt>) annotation is a field annotation indicating that the field is exposed in the MBean. The supported attributes are:</p>
+<ul>
+	<li>name: set the property name</li>
+	<li>rights: set the access permission. Possible values are <tt>r</tt> (read only) and <tt>w</tt> (read and write). By default, properties are in read-only mode.</li>
+	<li>notification: enables notification on this property. By default notifications are disabled.</li>
+</ul>
 
 
-<H6><A name="iPOJOJMXHandler-UserGuide"></A><B>User Guide</B></H6>
-<UL>
-	<LI><A href="describing-components.html" title="Describing components">Describing components (handler list) </A></LI>
-	<LI><A href="how-to-use-ipojo-annotations.html" title="How to use iPOJO Annotations">How to use iPOJO Annotations</A></LI>
-	<LI><A href="ipojo-advanced-topics.html" title="iPOJO Advanced Topics">Advanced Topics</A></LI>
-	<LI><A href="ipojo-faq.html" title="iPOJO FAQ">FAQ</A></LI>
-</UL>
+<p>The <tt>@org.apache.felix.ipojo.handlers.jmx.Method</tt> (<tt>@Method</tt>) annotation is a method annotation indicating that the method is exposed in the MBean. Only one attribute can be customized:</p>
+<ul>
+	<li>description: set the method description.</li>
+</ul>
+</td>
+<td class="confluenceTd" valign="top" width="20%">
+<h6><a name="iPOJOJMXHandler-Overview"></a><b>Overview</b></h6>
+<ul>
+	<li><a href="http://felix.apache.org/site/apache-felix-ipojo.html" title="Apache Felix iPOJO">Home Page</a></li>
+	<li><a href="http://felix.apache.org/site/apache-felix-ipojo-feature-overview.html" title="Apache Felix iPOJO Feature Overview">iPOJO Feature Overview</a></li>
+	<li><a href="http://felix.apache.org/site/download.html" title="Download">Download &amp; Install </a></li>
+</ul>
 
 
-<H6><A name="iPOJOJMXHandler-Tools"></A><B>Tools</B></H6>
-<UL>
-	<LI><A href="ipojo-eclipse-plug-in.html" title="iPOJO Eclipse Plug-in">iPOJO Eclipse Plug&#45;in</A></LI>
-	<LI><A href="ipojo-ant-task.html" title="iPOJO Ant Task">iPOJO Ant Task</A></LI>
-	<LI><A href="ipojo-maven-plug-in.html" title="iPOJO Maven Plug-in">iPOJO Maven Plug&#45;in</A></LI>
-	<LI><A href="ipojo-concepts-overview.html" title="iPOJO Concepts Overview">iPOJO concepts overview</A></LI>
-</UL>
+<h6><a name="iPOJOJMXHandler-GettingStarted"></a><b>Getting Started</b></h6>
+<ul>
+	<li><a href="http://felix.apache.org/site/ipojo-in-10-minutes.html" title="iPOJO in 10 minutes">iPOJO in 10 minutes</a></li>
+	<li><a href="http://felix.apache.org/site/how-to-use-ipojo-annotations.html" title="How to use iPOJO Annotations">How to use iPOJO Annotations</a></li>
+	<li><a href="http://felix.apache.org/site/ipojo-hello-word-maven-based-tutorial.html" title="iPOJO Hello Word (Maven-Based) tutorial">iPOJO Hello Word (Maven-Based) tutorial</a></li>
+	<li><a href="http://felix.apache.org/site/ipojo-advanced-tutorial.html" title="iPOJO Advanced Tutorial">iPOJO Advanced Tutorial</a></li>
+	<li><a href="http://felix.apache.org/site/ipojo-composition-tutorial.html" title="iPOJO Composition Tutorial">iPOJO Composition Tutorial</a></li>
+</ul>
 
 
-<H6><A name="iPOJOJMXHandler-DeveloperGuide"></A><B>Developer Guide</B></H6>
-<UL>
-	<LI>API: <SPAN class="nobr"><A href="http://people.apache.org/~clement/ipojo/api/0.8/" title="Visit page outside Confluence" rel="nofollow">0.8<SUP><IMG class="rendericon" src="../../cwiki.apache.org/confluence/images/icons/linkext7.gif" height="7" width="7" align="absmiddle" alt="" border="0"></SUP></A></SPAN></LI>
-	<LI><A href="how-to-write-your-own-handler.html" title="How to write your own handler">How to write your own handler</A></LI>
-	<LI><A href="how-to-use-ipojo-manipulation-metadata.html" title="How to use iPOJO Manipulation Metadata">How to use iPOJO Manipulation Metadata</A></LI>
-</UL>
+<h6><a name="iPOJOJMXHandler-UserGuide"></a><b>User Guide</b></h6>
+<ul>
+	<li><a href="http://felix.apache.org/site/describing-components.html" title="Describing components">Describing components (handler list) </a></li>
+	<li><a href="http://felix.apache.org/site/using-xml-schemas.html" title="Using XML Schemas">Using XML Schemas</a></li>
+	<li><a href="http://felix.apache.org/site/apache-felix-ipojo-testing-components.html" title="apache-felix-ipojo-testing-components">Testing components</a></li>
+	<li><a href="http://felix.apache.org/site/ipojo-advanced-topics.html" title="iPOJO Advanced Topics">Advanced Topics</a></li>
+	<li><a href="http://felix.apache.org/site/ipojo-faq.html" title="iPOJO FAQ">FAQ</a></li>
+</ul>
 
 
-<H6><A name="iPOJOJMXHandler-Misc%26Contact"></A><B>Misc &amp; Contact</B></H6>
-<UL>
-	<LI><A href="apache-felix-ipojo-issuestracker.html" title="apache-felix-ipojo-issuestracker">Issues Tracker</A></LI>
-	<LI><A href="apache-felix-ipojo-supportedvms.html" title="apache-felix-ipojo-supportedVMs">Supported JVMs</A></LI>
-	<LI><A href="apache-felix-ipojo-supportedosgi.html" title="apache-felix-ipojo-supportedOSGi">Supported OSGi Implementations</A></LI>
-	<LI><A href="future-ideas.html" title="Future Ideas">Future Ideas</A></LI>
-	<LI><A href="contact.html" title="Contact">Contact</A></LI>
-	<LI><A href="related-works.html" title="Related Works">Related Works</A></LI>
-	<LI><A href="article-presentations.html" title="Article & Presentations">Article &amp; Presentations</A></LI>
-</UL>
+<h6><a name="iPOJOJMXHandler-Tools"></a><b>Tools</b></h6>
+<ul>
+	<li><a href="http://felix.apache.org/site/ipojo-eclipse-plug-in.html" title="iPOJO Eclipse Plug-in">iPOJO Eclipse Plug-in</a></li>
+	<li><a href="http://felix.apache.org/site/ipojo-ant-task.html" title="iPOJO Ant Task">iPOJO Ant Task</a></li>
+	<li><a href="http://felix.apache.org/site/ipojo-maven-plug-in.html" title="iPOJO Maven Plug-in">iPOJO Maven Plug-in</a></li>
+	<li><a href="http://felix.apache.org/site/apache-felix-ipojo-junit4osgi.html" title="apache-felix-ipojo-junit4osgi">Junit4OSGi</a></li>
+	<li><a href="http://felix.apache.org/site/ipojo-concepts-overview.html" title="iPOJO Concepts Overview">iPOJO concepts overview</a></li>
+</ul>
 
 
-<HR>
-<DIV class="" align="center">
-<P><SPAN class="nobr"><A href="http://cwiki.apache.org/confluence/createrssfeed.action?types=blogpost&amp;statuses=created&amp;statuses=modified&amp;spaces=FELIX&amp;labelString=iPOJO&amp;rssType=atom&amp;maxResults=10&amp;timeSpan=5&amp;publicFeed=true&amp;title=iPOJO%20Atom%20Feed" title="Stay tuned!" rel="nofollow"><IMG src="../../cwiki.apache.org/confluence/images/icons/feed-icon-32x32.png" align="absmiddle" border="0"><SUP><IMG class="rendericon" src="../../cwiki.apache.org/confluence/images/icons/linkext7.gif" height="7" width="7" align="absmiddle" alt="" border="0"></SUP></A></SPAN></P></DIV></TD></TR></TBODY></TABLE>
-    </DIV>
-  </BODY>
+<h6><a name="iPOJOJMXHandler-DeveloperGuide"></a><b>Developer Guide</b></h6>
+<ul>
+	<li>API: <span class="nobr"><a href="http://people.apache.org/%7Eclement/ipojo/api/1.0/" title="Visit page outside Confluence" rel="nofollow">1.0<sup><img class="rendericon" src="ipojo-jmx-handler_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span></li>
+	<li><a href="http://felix.apache.org/site/how-to-write-your-own-handler.html" title="How to write your own handler">How to write your own handler</a></li>
+	<li><a href="http://felix.apache.org/site/how-to-use-ipojo-manipulation-metadata.html" title="How to use iPOJO Manipulation Metadata">How to use iPOJO Manipulation Metadata</a></li>
+	<li><a href="http://felix.apache.org/site/dive-into-the-ipojo-manipulation-depths.html" title="Dive into the iPOJO Manipulation depths">Dive into the iPOJO Manipulation depths</a></li>
+</ul>
 
-<!-- Mirrored Site: felix.apache.org. File: /site/ipojo-jmx-handler.html. Date: Mon, 13 Oct 2008 06:53:08 GMT -->
-</HTML>
+
+<h6><a name="iPOJOJMXHandler-Misc&amp;Contact"></a><b>Misc &amp; Contact</b></h6>
+<ul>
+	<li><a href="http://felix.apache.org/site/apache-felix-ipojo-issuestracker.html" title="apache-felix-ipojo-issuestracker">Issues Tracker</a></li>
+	<li><a href="http://felix.apache.org/site/apache-felix-ipojo-supportedvms.html" title="apache-felix-ipojo-supportedVMs">Supported JVMs</a></li>
+	<li><a href="http://felix.apache.org/site/apache-felix-ipojo-supportedosgi.html" title="apache-felix-ipojo-supportedOSGi">Supported OSGi Implementations</a></li>
+	<li><span class="nobr"><a href="http://ipojo-dark-side.blogspot.com/" title="Visit page outside Confluence" rel="nofollow">iPOJO's Dark Side Blog<sup><img class="rendericon" src="ipojo-jmx-handler_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span></li>
+	<li><a href="http://felix.apache.org/site/future-ideas.html" title="Future Ideas">Future Ideas</a></li>
+	<li><a href="http://felix.apache.org/site/contact.html" title="Contact">Contact</a></li>
+	<li><a href="http://felix.apache.org/site/related-works.html" title="Related Works">Related Works</a></li>
+	<li><a href="http://felix.apache.org/site/article-presentations.html" title="Article &amp; Presentations">Article &amp; Presentations</a></li>
+</ul>
+
+
+<hr>
+<div class="" align="center">
+<p><span class="nobr"><a href="http://cwiki.apache.org/confluence/createrssfeed.action?types=blogpost&amp;statuses=created&amp;statuses=modified&amp;spaces=FELIX&amp;labelString=iPOJO&amp;rssType=atom&amp;maxResults=10&amp;timeSpan=5&amp;publicFeed=true&amp;title=iPOJO%20Atom%20Feed" title="Stay tuned!" rel="nofollow"><img src="ipojo-jmx-handler_files/feed-icon-32x32.png" align="absmiddle" border="0"><sup><img class="rendericon" src="ipojo-jmx-handler_files/linkext7.gif" alt="" align="absmiddle" border="0" width="7" height="7"></sup></a></span></p></div>
+
+<script type="text/javascript">
+var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
+document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
+</script><script src="ipojo-jmx-handler_files/ga.js" type="text/javascript"></script>
+<script type="text/javascript">
+var pageTracker = _gat._getTracker("UA-1518442-4");
+pageTracker._trackPageview();
+</script>
+</td></tr></tbody></table>
+    </div>
+  </body></html>
\ No newline at end of file
