Modified: websites/production/camel/content/jcr.html
==============================================================================
--- websites/production/camel/content/jcr.html (original)
+++ websites/production/camel/content/jcr.html Wed Aug 19 10:19:58 2015
@@ -86,26 +86,26 @@
<tr>
<td valign="top" width="100%">
<div class="wiki-content maincontent"><h2 id="JCR-JCRComponent">JCR
Component</h2><p>The <strong><code>jcr</code></strong> component allows you to
add/read nodes to/from a JCR compliant content repository (for example, <a
shape="rect" class="external-link" href="http://jackrabbit.apache.org/">Apache
Jackrabbit</a>) with its producer, or register an EventListener with the
consumer.</p><p>Maven users will need to add the following dependency to their
<code>pom.xml</code> for this component:</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><dependency>
+<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-jcr</artifactId>
<version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>
-</pre>
+]]></script>
</div></div><h3 id="JCR-URIformat">URI format</h3><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">jcr://user:password@repository/path/to/node
-</pre>
-</div></div><div class="confluence-information-macro
confluence-information-macro-tip"><p class="title">Consumer added</p><span
class="aui-icon aui-icon-small aui-iconfont-approve
confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>From <strong>Camel 2.10</strong>
onwards you can use consumer as an EventListener in JCR or a producer to read a
node by identifier.</p></div></div><h3 id="JCR-Usage">Usage</h3><p>The
<code>repository</code> element of the URI is used to look up the JCR
<code>Repository</code> object in the Camel context registry.</p><h4
id="JCR-Producer">Producer</h4><div class="confluenceTableSmall"><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p
><code>CamelJcrOperation</code></p></td><td colspan="1" rowspan="1"
>class="confluenceTd"><p><code>CamelJcrInsert</code></p></td><td colspan="1"
>rowspan="1" class="confluenceTd"><p>CamelJcrInsert or CamelJcrGetById
>operation to use</p></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd"><p><code>CamelJcrNodeName</code></p></td><td colspan="1"
>rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
>rowspan="1" class="confluenceTd"><p>Used to determine the node name to
>use.</p></td></tr></tbody></table></div></div><p>When a message is sent to a
>JCR producer endpoint:</p><ul><li>If the operation is CamelJcrInsert: A new
>node is created in the content repository, all the message headers of the IN
>message are transformed to <code><a shape="rect" class="external-link"
>href="http://www.day.com/specs/javax.jcr/javadocs/jcr-2.0/javax/jcr/Value.html"
> rel="nofollow">javax.jcr.Value</a></code> instances and added to the new
>node and the node's UUID is returned in
the OUT message.</li><li>If the operation is CamelJcrGetById: A new node is
retrieved from the repository using the message body as node
identifier.</li></ul><div class="confluence-information-macro
confluence-information-macro-note"><span class="aui-icon aui-icon-small
aui-iconfont-warning confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>Please note that the JCR Producer
used message properties instead of message headers in Camel versions earlier
than 2.12.3. See <a shape="rect" class="external-link"
href="https://issues.apache.org/jira/browse/CAMEL-7067">https://issues.apache.org/jira/browse/CAMEL-7067</a>
for more details.</p></div></div><p> </p><h4
id="JCR-Consumer">Consumer</h4><p>The consumer will connect to JCR periodically
and return a List<<a shape="rect" class="external-link"
href="http://www.day.com/specs/javax.jcr/javadocs/jcr-2.0/javax/jcr/observation/Event.html"
rel="nofollow">javax.jcr.observation.Event</a>> in the
message body.</p><div class="confluenceTableSmall"><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>eventTypes</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>A combination of one or more
event types encoded as a bit mask value such as
javax.jcr.observation.Event.NODE_ADDED,
javax.jcr.observation.Event.NODE_REMOVED, etc.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>deep</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>When it is true, events whose associated
parent node is at
current path or within its subgraph are received.</p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>uuids</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Only events whose associated
parent node has one of the identifiers in the comma separated uuid list will be
received.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>nodeTypeNames</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Only events whose associated parent node
has one of the node types (or a subtype of one of the node types) in this list
will be received.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>noLocal</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>
If <code>noLocal</code> is <code>true</code>, then events generated by the
session through which the listener was registered are ignored. Otherwise, they
are not ignored.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>sessionLiveCheckInterval</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>60000</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Interval in milliseconds to
wait before each session live checking.</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>sessionLiveCheckIntervalOnStart</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>3000</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Interval in milliseconds to
wait before the first session live checking.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><span style="font-family:
monospace;">username</span></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>
0;</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel
2.15:</strong> Allows to specify the username as a uri parameter instead of in
the authority section of the uri</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="font-family:
monospace;">password</span></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Camel 2.15:</strong> Allows to specify the
password as a uri parameter instead of in the authority section of the
uri</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><span
style="font-family: monospace;">workspaceName</span></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.16:</strong><span> Allows
to specify a workspace different from
default</span></p></td></tr></tbody></table></div></div><h3
id="JCR-Example">Example</
h3><p>The snippet below creates a node named <code>node</code> under the
<code>/home/test</code> node in the content repository. One additional property
is added to the node as well: <code>my.contents.property</code> which will
contain the body of the message being sent.</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">from("direct:a").setHeader(JcrConstants.JCR_NODE_NAME,
constant("node"))
- .setHeader("my.contents.property", body())
- .to("jcr://user:pass@repository/home/test");</pre>
+<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[jcr://user:password@repository/path/to/node
+]]></script>
+</div></div><div class="confluence-information-macro
confluence-information-macro-tip"><p class="title">Consumer added</p><span
class="aui-icon aui-icon-small aui-iconfont-approve
confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>From <strong>Camel 2.10</strong>
onwards you can use consumer as an EventListener in JCR or a producer to read a
node by identifier.</p></div></div><h3 id="JCR-Usage">Usage</h3><p>The
<code>repository</code> element of the URI is used to look up the JCR
<code>Repository</code> object in the Camel context registry.</p><h4
id="JCR-Producer">Producer</h4><div class="confluenceTableSmall"><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p
><code>CamelJcrOperation</code></p></td><td colspan="1" rowspan="1"
>class="confluenceTd"><p><code>CamelJcrInsert</code></p></td><td colspan="1"
>rowspan="1" class="confluenceTd"><p>CamelJcrInsert or CamelJcrGetById
>operation to use</p></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd"><p><code>CamelJcrNodeName</code></p></td><td colspan="1"
>rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
>rowspan="1" class="confluenceTd"><p>Used to determine the node name to
>use.</p></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd"><code>CamelJcrNodeType</code></td><td colspan="1"
>rowspan="1" class="confluenceTd"><code>null</code></td><td colspan="1"
>rowspan="1" class="confluenceTd"><strong>Camel 2.16:</strong> To use a
>specify primary node type when creating adding a new
>node.</td></tr></tbody></table></div></div><p>When a message is sent to a JCR
>producer endpoint:</p><ul><li>If the operation is CamelJcrInsert: A new node
>is created in the conte
nt repository, all the message headers of the IN message are transformed to
<code><a shape="rect" class="external-link"
href="http://www.day.com/specs/javax.jcr/javadocs/jcr-2.0/javax/jcr/Value.html"
rel="nofollow">javax.jcr.Value</a></code> instances and added to the new node
and the node's UUID is returned in the OUT message.</li><li>If the operation is
CamelJcrGetById: A new node is retrieved from the repository using the message
body as node identifier.</li></ul><div class="confluence-information-macro
confluence-information-macro-note"><span class="aui-icon aui-icon-small
aui-iconfont-warning confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>Please note that the JCR Producer
used message properties instead of message headers in Camel versions earlier
than 2.12.3. See <a shape="rect" class="external-link"
href="https://issues.apache.org/jira/browse/CAMEL-7067">https://issues.apache.org/jira/browse/CAMEL-7067</a>
for more details.</p></di
v></div><p> </p><h4 id="JCR-Consumer">Consumer</h4><p>The consumer will
connect to JCR periodically and return a List<<a shape="rect"
class="external-link"
href="http://www.day.com/specs/javax.jcr/javadocs/jcr-2.0/javax/jcr/observation/Event.html"
rel="nofollow">javax.jcr.observation.Event</a>> in the message
body.</p><div class="confluenceTableSmall"><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>eventTypes</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>A combination of one or more
event types encoded as a bit mask value such as
javax.jcr.observation.Event.NODE_ADDED, javax.jcr.observat
ion.Event.NODE_REMOVED, etc.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>deep</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>false</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>When it is true, events whose associated parent node is
at current path or within its subgraph are received.</p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>uuids</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Only events whose associated
parent node has one of the identifiers in the comma separated uuid list will be
received.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>nodeTypeNames</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Only events whose associated parent node
has one of th
e node types (or a subtype of one of the node types) in this list will be
received.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>noLocal</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>If <code>noLocal</code> is
<code>true</code>, then events generated by the session through which the
listener was registered are ignored. Otherwise, they are not
ignored.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>sessionLiveCheckInterval</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>60000</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Interval in milliseconds to
wait before each session live checking.</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>sessionLiveCheckIntervalOnStart</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>3000</code></p></td
><td colspan="1" rowspan="1" class="confluenceTd"><p>Interval in milliseconds
>to wait before the first session live checking.</p></td></tr><tr><td
>colspan="1" rowspan="1" class="confluenceTd"><p><span style="font-family:
>monospace;">username</span></p></td><td colspan="1" rowspan="1"
>class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1"
>class="confluenceTd"><p><strong>Camel 2.15:</strong> Allows to specify the
>username as a uri parameter instead of in the authority section of the
>uri</p></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd"><p><span style="font-family:
>monospace;">password</span></p></td><td colspan="1" rowspan="1"
>class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1"
>class="confluenceTd"><p><strong>Camel 2.15:</strong> Allows to specify the
>password as a uri parameter instead of in the authority section of the
>uri</p></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd"><p><span style="font-family: monospace;">workspaceNam
e</span></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Camel 2.16:</strong><span> Allows to specify a
workspace different from
default</span></p></td></tr></tbody></table></div></div><h3
id="JCR-Example">Example</h3><p>The snippet below creates a node named
<code>node</code> under the <code>/home/test</code> node in the content
repository. One additional property is added to the node as well:
<code>my.contents.property</code> which will contain the body of the message
being sent.</p><div class="code panel pdl" style="border-width: 1px;"><div
class="codeContent panelContent pdl">
+<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[from("direct:a").setHeader(JcrConstants.JCR_NODE_NAME,
constant("node"))
+ .setHeader("my.contents.property", body())
+ .to("jcr://user:pass@repository/home/test");]]></script>
</div></div><p> </p><p>The following code will register an EventListener
under the path import-application/inbox for Event.NODE_ADDED and
Event.NODE_REMOVED events (event types 1 and 2, both masked as 3) and listening
deep for all the children.</p><div class="code panel pdl" style="border-width:
1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: xml; gutter: false; theme: Default"
style="font-size:12px;"><route>
- <from
uri="jcr://user:pass@repository/import-application/inbox?eventTypes=3&deep=true"
/>
- <to uri="direct:execute-import-application" />
+<script class="brush: xml; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[<route>
+ <from
uri="jcr://user:pass@repository/import-application/inbox?eventTypes=3&deep=true"
/>
+ <to uri="direct:execute-import-application" />
</route>
-</pre>
+]]></script>
</div></div><p></p><h3 id="JCR-SeeAlso">See Also</h3>
<ul><li><a shape="rect" href="configuring-camel.html">Configuring
Camel</a></li><li><a shape="rect"
href="component.html">Component</a></li><li><a shape="rect"
href="endpoint.html">Endpoint</a></li><li><a shape="rect"
href="getting-started.html">Getting Started</a></li></ul></div>
</td>
@@ -113,7 +113,7 @@
<div class="navigation">
<div class="navigation_top">
<!-- NavigationBar -->
-<div class="navigation_bottom" id="navigation_bottom"><h3
id="Navigation-Overviewhttps://cwiki.apache.org/confluence/pages/viewpage.action?pageId=49132"><a
shape="rect" href="overview.html">Overview</a></h3><ul
class="alternate"><li><a shape="rect" href="index.html">Home</a></li><li><a
shape="rect" href="download.html">Download</a></li><li><a shape="rect"
href="getting-started.html">Getting Started</a></li><li><a shape="rect"
href="faq.html">FAQ</a></li></ul><h3
id="Navigation-Documentationhttps://cwiki.apache.org/confluence/pages/viewpage.action?pageId=49534"><a
shape="rect" href="documentation.html">Documentation</a></h3><ul
class="alternate"><li><a shape="rect" href="user-guide.html">User
Guide</a></li><li><a shape="rect" href="manual.html">Manual</a></li><li><a
shape="rect" href="books.html">Books</a></li><li><a shape="rect"
href="tutorials.html">Tutorials</a></li><li><a shape="rect"
href="examples.html">Examples</a></li><li><a shape="rect"
href="cookbook.html">Cookbook</a></li>
<li><a shape="rect" href="architecture.html">Architecture</a></li><li><a
shape="rect" href="enterprise-integration-patterns.html">Enterprise Integration
Patterns</a></li><li><a shape="rect" href="dsl.html">DSL</a></li><li><a
shape="rect" href="components.html">Components</a></li><li><a shape="rect"
href="data-format.html">Data Format</a></li><li><a shape="rect"
href="languages.html">Languages</a></li><li><a shape="rect"
href="security.html">Security</a></li><li><a shape="rect"
href="security-advisories.html">Security Advisories</a></li></ul><h3
id="Navigation-Search">Search</h3><form
enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box"
action="http://www.google.com/cse">
+<div class="navigation_bottom" id="navigation_bottom"><h3
id="Navigation-Overview"><a shape="rect"
href="overview.html">Overview</a></h3><ul class="alternate"><li><a shape="rect"
href="index.html">Home</a></li><li><a shape="rect"
href="download.html">Download</a></li><li><a shape="rect"
href="getting-started.html">Getting Started</a></li><li><a shape="rect"
href="faq.html">FAQ</a></li></ul><h3 id="Navigation-Documentation"><a
shape="rect" href="documentation.html">Documentation</a></h3><ul
class="alternate"><li><a shape="rect" href="user-guide.html">User
Guide</a></li><li><a shape="rect" href="manual.html">Manual</a></li><li><a
shape="rect" href="books.html">Books</a></li><li><a shape="rect"
href="tutorials.html">Tutorials</a></li><li><a shape="rect"
href="examples.html">Examples</a></li><li><a shape="rect"
href="cookbook.html">Cookbook</a></li><li><a shape="rect"
href="architecture.html">Architecture</a></li><li><a shape="rect"
href="enterprise-integration-patterns.html">Enterprise
Integration Patterns</a></li><li><a shape="rect"
href="dsl.html">DSL</a></li><li><a shape="rect"
href="components.html">Components</a></li><li><a shape="rect"
href="data-format.html">Data Format</a></li><li><a shape="rect"
href="languages.html">Languages</a></li><li><a shape="rect"
href="security.html">Security</a></li><li><a shape="rect"
href="security-advisories.html">Security Advisories</a></li></ul><h3
id="Navigation-Search">Search</h3><form
enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box"
action="http://www.google.com/cse">
<div>
<input type="hidden" name="cx" value="007878419884033443453:m5nhvy4hmyq">
<input type="hidden" name="ie" value="UTF-8">
@@ -121,7 +121,7 @@
<input type="submit" name="sa" value="Search">
</div>
</form>
-<script type="text/javascript"
src="http://www.google.com/coop/cse/brand?form=cse-search-box&lang=en"></script><h3
id="Navigation-Communityhttps://cwiki.apache.org/confluence/pages/viewpage.action?pageId=49115"><a
shape="rect" href="community.html">Community</a></h3><ul
class="alternate"><li><a shape="rect"
href="support.html">Support</a></li><li><a shape="rect"
href="contributing.html">Contributing</a></li><li><a shape="rect"
href="discussion-forums.html">Discussion Forums</a></li><li><a shape="rect"
href="mailing-lists.html">Mailing Lists</a></li><li><a shape="rect"
href="user-stories.html">User Stories</a></li><li><a shape="rect"
href="news.html">News</a></li><li><a shape="rect"
href="articles.html">Articles</a></li><li><a shape="rect"
href="site.html">Site</a></li><li><a shape="rect"
href="team.html">Team</a></li><li><a shape="rect" class="external-link"
href="http://camel-extra.googlecode.com/" rel="nofollow">Camel
Extra</a></li></ul><h3 id="Navigation-Developershttps://cwi
ki.apache.org/confluence/pages/viewpage.action?pageId=49124"><a shape="rect"
href="developers.html">Developers</a></h3><ul class="alternate"><li><a
shape="rect" href="developers.html">Developer Guide</a></li><li><a shape="rect"
href="source.html">Source</a></li><li><a shape="rect"
href="building.html">Building</a></li><li><a shape="rect"
href="javadoc.html">JavaDoc</a></li><li><a shape="rect"
href="irc-room.html">IRC Room</a></li></ul><h3
id="Navigation-ApacheSoftwareFoundation">Apache Software Foundation</h3><ul
class="alternate"><li><a shape="rect" class="external-link"
href="http://www.apache.org/licenses/">License</a></li><li><a shape="rect"
class="external-link"
href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li><li><a
shape="rect" class="external-link"
href="http://www.apache.org/foundation/thanks.html">Thanks</a></li><li><a
shape="rect" class="external-link"
href="http://www.apache.org/security/">Security</a></li></ul></div>
+<script type="text/javascript"
src="http://www.google.com/coop/cse/brand?form=cse-search-box&lang=en"></script><h3
id="Navigation-Community"><a shape="rect"
href="community.html">Community</a></h3><ul class="alternate"><li><a
shape="rect" href="support.html">Support</a></li><li><a shape="rect"
href="contributing.html">Contributing</a></li><li><a shape="rect"
href="discussion-forums.html">Discussion Forums</a></li><li><a shape="rect"
href="mailing-lists.html">Mailing Lists</a></li><li><a shape="rect"
href="user-stories.html">User Stories</a></li><li><a shape="rect"
href="news.html">News</a></li><li><a shape="rect"
href="articles.html">Articles</a></li><li><a shape="rect"
href="site.html">Site</a></li><li><a shape="rect"
href="team.html">Team</a></li><li><a shape="rect" class="external-link"
href="http://camel-extra.googlecode.com/" rel="nofollow">Camel
Extra</a></li></ul><h3 id="Navigation-Developers"><a shape="rect"
href="developers.html">Developers</a></h3><ul class="alternate"
><li><a shape="rect" href="developers.html">Developer Guide</a></li><li><a
>shape="rect" href="source.html">Source</a></li><li><a shape="rect"
>href="building.html">Building</a></li><li><a shape="rect"
>href="javadoc.html">JavaDoc</a></li><li><a shape="rect"
>href="irc-room.html">IRC Room</a></li></ul><h3
>id="Navigation-ApacheSoftwareFoundation">Apache Software Foundation</h3><ul
>class="alternate"><li><a shape="rect" class="external-link"
>href="http://www.apache.org/licenses/">License</a></li><li><a shape="rect"
>class="external-link"
>href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li><li><a
> shape="rect" class="external-link"
>href="http://www.apache.org/foundation/thanks.html">Thanks</a></li><li><a
>shape="rect" class="external-link"
>href="http://www.apache.org/security/">Security</a></li></ul></div>
<!-- NavigationBar -->
</div>
</div>