Modified: websites/production/camel/content/stub.html
==============================================================================
--- websites/production/camel/content/stub.html (original)
+++ websites/production/camel/content/stub.html Tue Sep 22 14:26:24 2015
@@ -95,9 +95,9 @@
<h3 id="Stub-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;">
+<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[
stub:someUri
-</pre>
+]]></script>
</div></div>
<p>Where <strong><code>someUri</code></strong> can be any URI with any query
parameters. </p>
@@ -116,7 +116,7 @@ stub:someUri
<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">
@@ -124,7 +124,7 @@ stub:someUri
<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>
Modified: websites/production/camel/content/swagger.html
==============================================================================
--- websites/production/camel/content/swagger.html (original)
+++ websites/production/camel/content/swagger.html Tue Sep 22 14:26:24 2015
@@ -85,21 +85,21 @@
<tr>
<td valign="top" width="100%">
<div class="wiki-content maincontent"><h2
id="Swagger-SwaggerComponent">Swagger Component</h2><p><strong>Available as of
Camel 2.14</strong></p><p>The  <a shape="rect" href="rest-dsl.html">Rest
DSL</a> can be integrated with the <code>camel-swagger</code> module
which is used for exposing the REST services and their APIs using <a
shape="rect" class="external-link" href="http://swagger.wordnik.com/"
rel="nofollow">Swagger</a>.</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-swagger</artifactId>
<version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>
-</pre>
+]]></script>
</div></div><h3 id="Swagger-UsingwithCamel2.15onwards">Using with Camel 2.15
onwards</h3><p>The default servlet supports any environment using JMX to
discover the CamelContext(s) to use.</p><p>The name of the servlet
is <code>org.apache.camel.component.swagger.DefaultCamelSwaggerServlet</code>.</p><h3
id="Swagger-UsingwithCamel2.14.x">Using with Camel 2.14.x</h3><p>The Swagger
servlet is integrated with Spring or <a shape="rect"
href="servletlistener-component.html">ServletListener
Component</a>. </p><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh">Component</th><th colspan="1" rowspan="1"
class="confluenceTh">Servlet ClassName</th></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">spring</td><td colspan="1" rowspan="1"
class="confluenceTd"><code>org.apache.camel.component.swagger.spring.SpringRestSwaggerApiDeclarationServlet</code> </td></tr><tr><td
colspan="1" rowspan="1" class="confluence
Td">servletlistener</td><td colspan="1" rowspan="1"
class="confluenceTd"><code>org.apache.camel.component.swagger.servletlistener.ServletListenerRestSwaggerApiDeclarationServlet</code></td></tr></tbody></table></div><p>The
servlet support the same options when using spring or servletlistener.</p><div
class="confluence-information-macro confluence-information-macro-warning"><span
class="aui-icon aui-icon-small aui-iconfont-error
confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>The servlets above from Camel
2.14.x is deprecated and replaced with a single default servlet from Camel 2.15
onwards.</p></div></div><p> </p><p>For example when using Spring you need
to configure
the <code>org.apache.camel.component.swagger.spring.SpringRestSwaggerApiDeclarationServlet</code> in
the <code>WEB-INF/web.xml</code> file as shown below:</p><div
class="confluence-information-macro confluence-information-macro-tip"><span
class="aui-i
con aui-icon-small aui-iconfont-approve
confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>If you use Camel 2.15 onwards then
just use the default servlet in any kind of environment.</p></div></div><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;"> <!-- to setup Camel Swagger api servlet when using
Spring -->
+<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[ <!-- to setup Camel Swagger api servlet
when using Spring -->
<servlet>
- 
+Â
<!-- Camel 2.14.x -->
<servlet-name>ApiDeclarationServlet</servlet-name>
<servlet-class>org.apache.camel.component.swagger.spring.SpringRestSwaggerApiDeclarationServlet</servlet-class>
- 
+Â
<!-- Camel 2.15 onwards -->
<servlet-name>ApiDeclarationServlet</servlet-name>
<servlet-class>org.apache.camel.component.swagger.DefaultCamelSwaggerServlet</servlet-class>
@@ -113,7 +113,7 @@
<param-name>api.path</param-name>
<param-value>http://localhost:8080/api-docs</param-value>
</init-param>
- 
+Â
<!-- Camel 2.15 onwards -->
<init-param>
<!-- we specify the base.path using relative notation, that means the
actual path will be calculated at runtime as
@@ -148,13 +148,13 @@
<servlet-mapping>
<servlet-name>ApiDeclarationServlet</servlet-name>
<url-pattern>/api-docs/*</url-pattern>
- </servlet-mapping></pre>
+ </servlet-mapping>]]></script>
</div></div><h3
id="Swagger-Options">Options</h3><p>The <code>org.apache.camel.component.swagger.RestSwaggerApiDeclarationServlet </code>and
<code>org.apache.camel.component.swagger.DefaultCamelSwaggerServlet</code>
supports the following options which can be configured as context-param in the
web.xml file.</p><div class="confluenceTableSmall"><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Option</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd">cors</td><td colspan="1" rowspan="1"
class="confluenceTd">Boolean</td><td colspan="1" rowspan="1"
class="confluenceTd">Whether to enable CORS. Notice this only enables CORS for
the api browser, and not the actual access to the REST services. Is default
false.<br clear="none">Instead of using this option is recom
mended to use the CorsFilte, see further below.</td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd">swagger.version</td><td colspan="1"
rowspan="1" class="confluenceTd">String</td><td colspan="1" rowspan="1"
class="confluenceTd">Swagger spec version. Is default 1.2.</td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd">base.path<p> </p></td><td
colspan="1" rowspan="1" class="confluenceTd">String</td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Required</strong>: To setup the
base path where the REST services is available. Using Camel 2.14.x this path
must be the absolute path to the services. From Camel 2.15 onwards you can use
a relative path instead (eg do not start with http/https) and camel-swagger
will calculate the absolute base path at runtime, which will be</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;">protocol://host:port/context-path/base.path</pre>
+<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[protocol://host:port/context-path/base.path]]></script>
</div></div><p>So using relative paths is much easier. See above for an
example.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">api.version</td><td colspan="1" rowspan="1"
class="confluenceTd">String</td><td colspan="1" rowspan="1"
class="confluenceTd">The version of the api. Is default 0.0.0.</td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd">api.path</td><td colspan="1"
rowspan="1" class="confluenceTd">String</td><td colspan="1" rowspan="1"
class="confluenceTd"><p><span>To setup the path where the API is available (eg
/api-docs). <span>Using Camel 2.14.x this path must be the absolute path to the
services. From Camel 2.15 onwards you can use a relative path instead (eg do
not start with http/https) and camel-swagger will calculate the absolute base
path at runtime, which will be </span></span></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;">protocol://host:port/context-path/api.path</pre>
+<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[protocol://host:port/context-path/api.path]]></script>
</div></div><p><span><span>So using relative paths is much easier. See above
for an example.</span></span></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">api.title</td><td colspan="1" rowspan="1"
class="confluenceTd">String</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong>Required.</strong><span> The title of the
application.</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">api.description</td><td colspan="1" rowspan="1"
class="confluenceTd">String</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong>Required.</strong><span> A short description
of the application.</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">api.<span>termsOfServiceUrl</span></td><td colspan="1"
rowspan="1" class="confluenceTd">String</td><td colspan="1" rowspan="1"
class="confluenceTd"><span>A URL to the Terms of Service of the
API.</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">api.contact</td><td col
span="1" rowspan="1" class="confluenceTd">String</td><td colspan="1"
rowspan="1" class="confluenceTd"><span>An email to be used for API-related
correspondence.</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">api.license</td><td colspan="1" rowspan="1"
class="confluenceTd">String</td><td colspan="1" rowspan="1"
class="confluenceTd"><span>The license name used for the
API.</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">api.licenseUrl</td><td colspan="1" rowspan="1"
class="confluenceTd">String</td><td colspan="1" rowspan="1"
class="confluenceTd"><span>A URL to the license used for the
API.</span></td></tr></tbody></table></div></div><h3
id="Swagger-CorsFilter">CorsFilter</h3><p>If you use the swagger ui to view the
REST api then you likely need to enable support for CORS. This is needed if the
swagger ui is hosted and running on another hostname/port than the actual REST
apis. When doing this the swagger ui needs to be allowed to access the RE
ST resources across the origin (CORS). The CorsFilter adds the necessary HTTP
headers to enable CORS.</p><p>To use CORS adds the following filter
<code>org.apache.camel.component.swagger.RestSwaggerCorsFilter</code> to your
web.xml.</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;"> <!-- enable CORS filter so people can use swagger
ui to browse and test the apis -->
+<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[ <!-- enable CORS filter so people can
use swagger ui to browse and test the apis -->
<filter>
<filter-name>RestSwaggerCorsFilter</filter-name>
<filter-class>org.apache.camel.component.swagger.RestSwaggerCorsFilter</filter-class>
@@ -165,14 +165,14 @@
<filter-name>RestSwaggerCorsFilter</filter-name>
<url-pattern>/api-docs/*</url-pattern>
<url-pattern>/rest/*</url-pattern>
- </filter-mapping></pre>
+ </filter-mapping>]]></script>
</div></div><p>The CorsFilter sets the following headers for all
requests</p><ul><li>Access-Control-Allow-Origin =
*</li><li>Access-Control-Allow-Methods = GET, HEAD, POST, PUT, DELETE,
TRACE, OPTIONS, CONNECT, PATCH</li><li>Access-Control-Max-Age =
3600</li><li>Access-Control-Allow-Headers = Origin, Accept,
X-Requested-With, Content-Type, Access-Control-Request-Method,
Access-Control-Request-Headers</li></ul><p><span style="color:
rgb(52,48,45);">Notice this is a very simple CORS filter. You may need to use a
more sophisticated filter to set the header values differently for a given
client. Or block certain clients etc.</span></p><h3
id="Swagger-MultipleCamelContexts">Multiple
CamelContexts</h3><p><strong>Available as of Camel 2.16</strong></p><p>When
using camel-swagger from Camel 2.16 onwards then it supports detecting all the
running CamelContexts in the same JVM. These contexts are listed in the root
path, eg `/api-docs` as a simple list of names in json format. To ac
cess the swagger documentation then the context-path must be appended with the
Camel context id, such as `api-docs/myCamel`.</p><p> </p><h3
id="Swagger-Examples">Examples</h3><p>In the Apache Camel distribution we ship
the <code>camel-example-servlet-rest-tomcat</code> which demonstrates
using this Swagger component.</p><div><span style="white-space: pre-wrap;"><br
clear="none"></span></div></div>
</td>
<td valign="top">
<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">
@@ -180,7 +180,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>
Modified:
websites/production/camel/content/tutorial-for-camel-on-google-app-engine.html
==============================================================================
---
websites/production/camel/content/tutorial-for-camel-on-google-app-engine.html
(original)
+++
websites/production/camel/content/tutorial-for-camel-on-google-app-engine.html
Tue Sep 22 14:26:24 2015
@@ -91,7 +91,7 @@
<p>Goal of this tutorial is to get a non-trivial Camel application running on
Google App Engine (GAE). For developing that application the <a shape="rect"
href="gae.html">Camel Components for Google App Engine</a> are used. The
example web application generates a weather report for a city that is entered
by the user into a form and sends the weather report via email to either the
currently logged-in user or a user-defined receiver. The following figure gives
an overview. Users of this application need to login with their Google
account.</p>
-<p><span class="confluence-embedded-file-wrapper"><img
class="confluence-embedded-image"
src="tutorial-for-camel-on-google-app-engine.data/gae-0.PNG"></span></p>
+<p><span class="confluence-embedded-file-wrapper"><img
class="confluence-embedded-image"
src="tutorial-for-camel-on-google-app-engine.data/gae-0.PNG"
data-image-src="/confluence/download/attachments/5965078/gae-0.PNG?version=2&modificationDate=1263980966000&api=v2"
data-unresolved-comment-count="0" data-linked-resource-id="6127652"
data-linked-resource-version="2" data-linked-resource-type="attachment"
data-linked-resource-default-alias="gae-0.PNG"
data-base-url="https://cwiki.apache.org/confluence"
data-linked-resource-content-type="image/png"
data-linked-resource-container-id="5965078"
data-linked-resource-container-version="16"></span></p>
<p>POSTed form data are dispatched to the Camel application via the <a
shape="rect" href="ghttp.html">ghttp</a> component. The application transforms
the report request and enqueues it with the <a shape="rect"
href="gtask.html">gtask</a> component for further background processing. It
then generates an immediate HTML response containing information about the city
and the receiver of the report. The response also contains a link logging out
from the application. In the background, the application retrieves weather data
from the Google Weather Service, transforms the data to generate a simple
weather report and sends the report by email via the <a shape="rect"
href="gmail.html">gmail</a> component. </p>
@@ -99,7 +99,7 @@
<p>Clients other than web browsers may also interact with this application by
POSTing the form data and an authentication cookie. At the moment the example
application doesn't include a standalone Java client that demonstrates how to
do that. This is work in progress. In the meantime, refer to the <a
shape="rect" href="glogin.html">glogin</a> component documentation for
instructions how to access security-enabled GAE services.</p></div></div>
<div class="confluence-information-macro confluence-information-macro-tip"><p
class="title">Tutorial online</p><span class="aui-icon aui-icon-small
aui-iconfont-approve confluence-information-macro-icon"></span><div
class="confluence-information-macro-body">
-<p>The next two sections describe how to checkout, build and deploy the
example application. If you want to skip these steps, go directly to the <a
shape="rect" href="tutorial-for-camel-on-google-app-engine.html">#Usage</a>
section and use the pre-deployed example application at <a shape="rect"
class="external-link" href="http://camelcloud.appspot.com"
rel="nofollow">http://camelcloud.appspot.com</a>.</p></div></div>
+<p>The next two sections describe how to checkout, build and deploy the
example application. If you want to skip these steps, go directly to the <a
shape="rect" href="#TutorialforCamelonGoogleAppEngine-Usage">#Usage</a> section
and use the pre-deployed example application at <a shape="rect"
class="external-link" href="http://camelcloud.appspot.com"
rel="nofollow">http://camelcloud.appspot.com</a>.</p></div></div>
<h3 id="TutorialforCamelonGoogleAppEngine-Prerequisites">Prerequisites</h3>
@@ -120,9 +120,9 @@
<p>Open the
<code>camel-example-gae/src/main/webapp/WEB-INF/application-web.xml</code> file
and replace the template application name <code>replaceme</code> with the name
of the application that you created in the previous section. Optionally, adjust
the version number if needed.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader
panelHeader pdl" style="border-bottom-width:
1px;"><b>appengine-web.xml</b></div><div class="codeContent panelContent pdl">
-<pre class="brush: xml; gutter: false; theme: Default" style="font-size:12px;">
-<?xml version="1.0" encoding="utf-8"?>
-<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
+<script class="brush: xml; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[
+<?xml version="1.0" encoding="utf-8"?>
+<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
<!--
Set your application name and version here
-->
@@ -130,15 +130,15 @@
<version>1</version>
<static-files>
- <exclude path="/index.html" />
+ <exclude path="/index.html" />
</static-files>
<system-properties>
- <property name="java.util.logging.config.file"
value="WEB-INF/logging.properties"/>
+ <property name="java.util.logging.config.file"
value="WEB-INF/logging.properties"/>
</system-properties>
</appengine-web-app>
-</pre>
+]]></script>
</div></div>
<p>Then go to the <code>camel-example-gae</code> directory and enter</p>
@@ -161,15 +161,15 @@
<p>In the following, the application name <code>camelcloud</code> will be used
as an example. If you deployed the example application somewhere else, use your
application name instead. Go to <code><a shape="rect" class="external-link"
href="http://camelcloud.appspot.com"
rel="nofollow">http://camelcloud.appspot.com</a></code>. The application will
redirect you to a login page (see also <a shape="rect"
href="gsec.html">Security for Camel GAE Applications</a>). </p>
-<p><span class="confluence-embedded-file-wrapper"><img
class="confluence-embedded-image confluence-content-image-border"
src="tutorial-for-camel-on-google-app-engine.data/gae-1.PNG"></span></p>
+<p><span class="confluence-embedded-file-wrapper"><img
class="confluence-embedded-image confluence-content-image-border"
src="tutorial-for-camel-on-google-app-engine.data/gae-1.PNG"
data-image-src="/confluence/download/attachments/5965078/gae-1.PNG?version=2&modificationDate=1263980966000&api=v2"
data-unresolved-comment-count="0" data-linked-resource-id="6127649"
data-linked-resource-version="2" data-linked-resource-type="attachment"
data-linked-resource-default-alias="gae-1.PNG"
data-base-url="https://cwiki.apache.org/confluence"
data-linked-resource-content-type="image/png"
data-linked-resource-container-id="5965078"
data-linked-resource-container-version="16"></span></p>
<p>After login, the application displays the tutorial's main page where you
can enter the name of a city and optionally enter an email address where to
send the waether report. If you check <code>Send report to me</code> the report
will be send to the email address that you used for login.</p>
-<p><span class="confluence-embedded-file-wrapper"><img
class="confluence-embedded-image confluence-content-image-border"
src="tutorial-for-camel-on-google-app-engine.data/gae-6.PNG"></span></p>
+<p><span class="confluence-embedded-file-wrapper"><img
class="confluence-embedded-image confluence-content-image-border"
src="tutorial-for-camel-on-google-app-engine.data/gae-6.PNG"
data-image-src="/confluence/download/attachments/5965078/gae-6.PNG?version=2&modificationDate=1263980966000&api=v2"
data-unresolved-comment-count="0" data-linked-resource-id="6127651"
data-linked-resource-version="2" data-linked-resource-type="attachment"
data-linked-resource-default-alias="gae-6.PNG"
data-base-url="https://cwiki.apache.org/confluence"
data-linked-resource-content-type="image/png"
data-linked-resource-container-id="5965078"
data-linked-resource-container-version="16"></span></p>
<p>After pressing <code>Submit</code> the response is </p>
-<p><span class="confluence-embedded-file-wrapper"><img
class="confluence-embedded-image confluence-content-image-border"
src="tutorial-for-camel-on-google-app-engine.data/gae-7.PNG"></span></p>
+<p><span class="confluence-embedded-file-wrapper"><img
class="confluence-embedded-image confluence-content-image-border"
src="tutorial-for-camel-on-google-app-engine.data/gae-7.PNG"
data-image-src="/confluence/download/attachments/5965078/gae-7.PNG?version=1&modificationDate=1263980966000&api=v2"
data-unresolved-comment-count="0" data-linked-resource-id="12222466"
data-linked-resource-version="1" data-linked-resource-type="attachment"
data-linked-resource-default-alias="gae-7.PNG"
data-base-url="https://cwiki.apache.org/confluence"
data-linked-resource-content-type="image/png"
data-linked-resource-container-id="5965078"
data-linked-resource-container-version="16"></span></p>
<p>The <code>home</code> link brings you back to the main page, the logout
link is to logout from the application (which brings you back to the login
page). In the background, the current weather conditions for the user-entered
city will be retrieved from the Google weather service and a formatted weather
report will be send by email. Submitting the form the first time initializes
the application on Google App Engine which can take several seconds. Subsequent
submissions (within a certain time frame) are served much faster. Check your
emails and you should now see a new email with subject <code>Wheather
report</code> and content similar to this one:</p>
@@ -184,10 +184,10 @@ Current temperature: 12 (Celsius)
<h3 id="TutorialforCamelonGoogleAppEngine-Codewalkthrough">Code
walkthrough</h3>
-<p>The <a shape="rect" class="external-link"
href="http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-gae/src/main/java/org/apache/camel/example/gae/TutorialRouteBuilder.java?view=markup"><code>TutorialRouteBuilder</code></a>
implements the message processing routes shown in the <a shape="rect"
href="tutorial-for-camel-on-google-app-engine.html">#Overview</a> section.
Input form data are received via the <a shape="rect"
href="ghttp.html">ghttp</a> component. After receiving the request a <a
shape="rect" class="external-link"
href="http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-gae/src/main/java/org/apache/camel/example/gae/RequestProcessor.java?view=markup"><code>RequestProcessor</code></a>
adds the form data and information about the current user to a <a shape="rect"
class="external-link"
href="http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-gae/src/main/java/org/apache/camel/example/gae/ReportData.java?view=markup"><code>ReportData</co
de></a> POJO. The <code>ReportData</code> object is then serialized and queued
for background processing. Queueing messages on GAE is done with the <a
shape="rect" href="gtask.html">gtask</a> component. After adding the
<code>ReportData</code> object to the queue an HTML response is generated with
the <a shape="rect" class="external-link"
href="http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-gae/src/main/java/org/apache/camel/example/gae/ResponseProcessor.java?view=markup"><code>ResponseProcessor</code></a>.</p>
+<p>The <a shape="rect" class="external-link"
href="http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-gae/src/main/java/org/apache/camel/example/gae/TutorialRouteBuilder.java?view=markup"><code>TutorialRouteBuilder</code></a>
implements the message processing routes shown in the <a shape="rect"
href="#TutorialforCamelonGoogleAppEngine-Overview">#Overview</a> section. Input
form data are received via the <a shape="rect" href="ghttp.html">ghttp</a>
component. After receiving the request a <a shape="rect" class="external-link"
href="http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-gae/src/main/java/org/apache/camel/example/gae/RequestProcessor.java?view=markup"><code>RequestProcessor</code></a>
adds the form data and information about the current user to a <a shape="rect"
class="external-link"
href="http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-gae/src/main/java/org/apache/camel/example/gae/ReportData.java?view=markup"><code>ReportData</cod
e></a> POJO. The <code>ReportData</code> object is then serialized and queued
for background processing. Queueing messages on GAE is done with the <a
shape="rect" href="gtask.html">gtask</a> component. After adding the
<code>ReportData</code> object to the queue an HTML response is generated with
the <a shape="rect" class="external-link"
href="http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-gae/src/main/java/org/apache/camel/example/gae/ResponseProcessor.java?view=markup"><code>ResponseProcessor</code></a>.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader
panelHeader pdl" style="border-bottom-width:
1px;"><b>TutorialRouteBuilder.java</b></div><div class="codeContent
panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
+<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[
package org.apache.camel.example.gae;
import org.w3c.dom.Document;
@@ -201,22 +201,22 @@ public class TutorialRouteBuilder extend
@Override
public void configure() throws Exception {
- from("ghttp:///weather")
+ from("ghttp:///weather")
.process(new RequestProcessor())
.marshal().serialization()
- .to("gtask://default")
+ .to("gtask://default")
.unmarshal().serialization()
.process(new ResponseProcessor());
- from("gtask://default")
+ from("gtask://default")
.unmarshal().serialization()
- .setHeader(Exchange.HTTP_QUERY,
constant("weather=").append(ReportData.city()))
- .enrich("ghttp://www.google.com/ig/api", reportDataAggregator())
- .setHeader(GMailBinding.GMAIL_SUBJECT, constant("Weather report"))
+ .setHeader(Exchange.HTTP_QUERY,
constant("weather=").append(ReportData.city()))
+ .enrich("ghttp://www.google.com/ig/api",
reportDataAggregator())
+ .setHeader(GMailBinding.GMAIL_SUBJECT, constant("Weather
report"))
.setHeader(GMailBinding.GMAIL_SENDER, ReportData.requestor())
.setHeader(GMailBinding.GMAIL_TO, ReportData.recipient())
.process(new ReportGenerator())
- .to("gmail://default");
+ .to("gmail://default");
}
private static AggregationStrategy reportDataAggregator() {
@@ -230,7 +230,7 @@ public class TutorialRouteBuilder extend
}
}
-</pre>
+]]></script>
</div></div>
<p>Background processing of the queued messages starts
<code>from("gtask://default")</code>. The first step is to enrich the
previously generated <code>ReportData</code> object with data from the Google
weather service. The service URL is dynamically constructed by setting the
<code>Exchange.HTTP_QUERY</code> header to <code>weather=<city></code>.
For example, if the user entered <code>London</code> in the city field of the
form the resulting URL is <a shape="rect" class="external-link"
href="http://www.google.com/ig/api?weather=London"
rel="nofollow">ghttp://www.google.com/ig/api?weather=London</a>. The weather
service is accessed with the <a shape="rect" href="ghttp.html">ghttp</a>
component and the weather service response is aggregated into the
<code>ReportData</code> object using a custom aggregator returned by the
<code>reportDataAggregator()</code> method. Generating a simple weather report
from <code>ReportData</code> is done by the <a shape="rect" class="external-link
"
href="http://svn.apache.org/viewvc/camel/trunk/examples/camel-example-gae/src/main/java/org/apache/camel/example/gae/ReportGenerator.java?view=markup"><code>ReportGenerator</code></a>.
The report is then sent by email with the <a shape="rect"
href="gmail.html">gmail</a> component. </p></div>
@@ -239,7 +239,7 @@ public class TutorialRouteBuilder extend
<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">
@@ -247,7 +247,7 @@ public class TutorialRouteBuilder extend
<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>