You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by bu...@apache.org on 2014/12/09 20:20:07 UTC

svn commit: r932013 - in /websites/production/camel/content: book-dataformat-appendix.html book-in-one-page.html cache/main.pageCache jaxb.html rest-dsl.html

Author: buildbot
Date: Tue Dec  9 19:20:07 2014
New Revision: 932013

Log:
Production update by buildbot for camel

Modified:
    websites/production/camel/content/book-dataformat-appendix.html
    websites/production/camel/content/book-in-one-page.html
    websites/production/camel/content/cache/main.pageCache
    websites/production/camel/content/jaxb.html
    websites/production/camel/content/rest-dsl.html

Modified: websites/production/camel/content/book-dataformat-appendix.html
==============================================================================
--- websites/production/camel/content/book-dataformat-appendix.html (original)
+++ websites/production/camel/content/book-dataformat-appendix.html Tue Dec  9 19:20:07 2014
@@ -334,7 +334,7 @@ jaxbDataFormat.setSchemaLocation("s
 <script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;marshal&gt;
     &lt;jaxb id=&quot;jaxb&quot; schemaLocation=&quot;schema/person.xsd&quot;/&gt;
 &lt;/marshal&gt;]]></script>
-</div></div><h3 id="BookDataFormatAppendix-Dependencies.1">Dependencies</h3><p>To use JAXB in your camel routes you need to add the a dependency on <strong>camel-jaxb</strong> which implements this data format.</p><p>If you use maven you could just add the following to your pom.xml, substituting the version number for the latest &amp; greatest release (see <a shape="rect" href="download.html">the download page for the latest versions</a>).</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><h3 id="BookDataFormatAppendix-MarshaldatathatisalreadyXML">Marshal data that is already XML</h3><p><strong>Available as of Camel 2.14.1</strong></p><div>The JAXB marshaller requires that the message body is JAXB compatible, eg its a JAXBElement, eg a java instance that has JAXB annotations, or extend JAXBElement. There can be situations where the message body is already in XML, eg from a String type. There is a new option&#160;<code>mustBeJAXBElement</code> you can set to false, to relax this check, so the JAXB marshaller only attempts to marshal JAXBElements (javax.xml.bind.JAXBIntrospector#isElement returns true). And in those situations the marshaller fallbacks to marshal the message body as-is.</div><h3 id="BookDataFormatAppendix-Dependencies.1">Dependencies</h3><p>To use JAXB in your camel routes you need to add the a dependency on <strong>camel-jaxb</strong> which implements this data format.</p><p>If you use maven you could just add the following to your pom.xml,
  substituting the version number for the latest &amp; greatest release (see <a shape="rect" href="download.html">the download page for the latest versions</a>).</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
   &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
   &lt;artifactId&gt;camel-jaxb&lt;/artifactId&gt;

Modified: websites/production/camel/content/book-in-one-page.html
==============================================================================
--- websites/production/camel/content/book-in-one-page.html (original)
+++ websites/production/camel/content/book-in-one-page.html Tue Dec  9 19:20:07 2014
@@ -4126,11 +4126,11 @@ While not actual tutorials you might fin
                     </div>
     </div>
 <h2 id="BookInOnePage-Preface">Preface</h2><p>This tutorial aims to guide the reader through the stages of creating a project which uses Camel to facilitate the routing of messages from a JMS queue to a <a shape="rect" class="external-link" href="http://www.springramework.org" rel="nofollow">Spring</a> service. The route works in a synchronous fashion returning a response to the client.</p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1418131140955 {padding: 0px;}
-div.rbtoc1418131140955 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1418131140955 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1418152727312 {padding: 0px;}
+div.rbtoc1418152727312 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1418152727312 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1418131140955">
+/*]]>*/</style></p><div class="toc-macro rbtoc1418152727312">
 <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-JmsRemoting-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-Preface">Preface</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-Distribution">Distribution</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-About">About</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-CreatetheCamelProject">Create the Camel Project</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-JmsRemoting-UpdatethePOMwithDependencies">Update the POM with Dependencies</a></li></ul>
 </li><li><a shape="rect" href="#Tutorial-JmsRemoting-WritingtheServer">Writing the Server</a>
@@ -6316,11 +6316,11 @@ So we completed the last piece in the pi
 
 
 <style type="text/css">/*<![CDATA[*/
-div.rbtoc1418131141772 {padding: 0px;}
-div.rbtoc1418131141772 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1418131141772 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1418152728092 {padding: 0px;}
+div.rbtoc1418152728092 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1418152728092 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style><div class="toc-macro rbtoc1418131141772">
+/*]]>*/</style><div class="toc-macro rbtoc1418152728092">
 <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-AXIS-Camel-TutorialusingAxis1.4withApacheCamel">Tutorial using Axis 1.4 with Apache Camel</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-AXIS-Camel-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-Distribution">Distribution</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-Introduction">Introduction</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-SettinguptheprojecttorunAxis">Setting up the project to run Axis</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-AXIS-Camel-Maven2">Maven 2</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-wsdl">wsdl</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-ConfiguringAxis">Configuring Axis</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-RunningtheExample">Running the Example</a></li></ul>
@@ -10197,7 +10197,7 @@ jaxbDataFormat.setSchemaLocation(&quot;s
 <script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;marshal&gt;
     &lt;jaxb id=&quot;jaxb&quot; schemaLocation=&quot;schema/person.xsd&quot;/&gt;
 &lt;/marshal&gt;]]></script>
-</div></div><h3 id="BookInOnePage-Dependencies.20">Dependencies</h3><p>To use JAXB in your camel routes you need to add the a dependency on <strong>camel-jaxb</strong> which implements this data format.</p><p>If you use maven you could just add the following to your pom.xml, substituting the version number for the latest &amp; greatest release (see <a shape="rect" href="download.html">the download page for the latest versions</a>).</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><h3 id="BookInOnePage-MarshaldatathatisalreadyXML">Marshal data that is already XML</h3><p><strong>Available as of Camel 2.14.1</strong></p><div>The JAXB marshaller requires that the message body is JAXB compatible, eg its a JAXBElement, eg a java instance that has JAXB annotations, or extend JAXBElement. There can be situations where the message body is already in XML, eg from a String type. There is a new option&#160;<code>mustBeJAXBElement</code> you can set to false, to relax this check, so the JAXB marshaller only attempts to marshal JAXBElements (javax.xml.bind.JAXBIntrospector#isElement returns true). And in those situations the marshaller fallbacks to marshal the message body as-is.</div><h3 id="BookInOnePage-Dependencies.20">Dependencies</h3><p>To use JAXB in your camel routes you need to add the a dependency on <strong>camel-jaxb</strong> which implements this data format.</p><p>If you use maven you could just add the following to your pom.xml, substituting the
  version number for the latest &amp; greatest release (see <a shape="rect" href="download.html">the download page for the latest versions</a>).</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
   &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
   &lt;artifactId&gt;camel-jaxb&lt;/artifactId&gt;
@@ -19224,11 +19224,11 @@ template.send(&quot;direct:alias-verify&
                     </div>
     </div>
 <p>The <strong>cxf:</strong> component provides integration with <a shape="rect" href="http://cxf.apache.org">Apache CXF</a> for connecting to JAX-WS services hosted in CXF.</p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1418131150006 {padding: 0px;}
-div.rbtoc1418131150006 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1418131150006 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1418152738949 {padding: 0px;}
+div.rbtoc1418152738949 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1418152738949 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1418131150006">
+/*]]>*/</style></p><div class="toc-macro rbtoc1418152738949">
 <ul class="toc-indentation"><li><a shape="rect" href="#CXF-CXFComponent">CXF Component</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#CXF-URIformat">URI format</a></li><li><a shape="rect" href="#CXF-Options">Options</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#CXF-Thedescriptionsofthedataformats">The descriptions of the dataformats</a>

Modified: websites/production/camel/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.

Modified: websites/production/camel/content/jaxb.html
==============================================================================
--- websites/production/camel/content/jaxb.html (original)
+++ websites/production/camel/content/jaxb.html Tue Dec  9 19:20:07 2014
@@ -222,7 +222,7 @@ jaxbDataFormat.setSchemaLocation(&quot;s
 <script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;marshal&gt;
     &lt;jaxb id=&quot;jaxb&quot; schemaLocation=&quot;schema/person.xsd&quot;/&gt;
 &lt;/marshal&gt;]]></script>
-</div></div><h3 id="JAXB-Dependencies">Dependencies</h3><p>To use JAXB in your camel routes you need to add the a dependency on <strong>camel-jaxb</strong> which implements this data format.</p><p>If you use maven you could just add the following to your pom.xml, substituting the version number for the latest &amp; greatest release (see <a shape="rect" href="download.html">the download page for the latest versions</a>).</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><h3 id="JAXB-MarshaldatathatisalreadyXML">Marshal data that is already XML</h3><p><strong>Available as of Camel 2.14.1</strong></p><div>The JAXB marshaller requires that the message body is JAXB compatible, eg its a JAXBElement, eg a java instance that has JAXB annotations, or extend JAXBElement. There can be situations where the message body is already in XML, eg from a String type. There is a new option&#160;<code>mustBeJAXBElement</code> you can set to false, to relax this check, so the JAXB marshaller only attempts to marshal JAXBElements (javax.xml.bind.JAXBIntrospector#isElement returns true). And in those situations the marshaller fallbacks to marshal the message body as-is.</div><h3 id="JAXB-Dependencies">Dependencies</h3><p>To use JAXB in your camel routes you need to add the a dependency on <strong>camel-jaxb</strong> which implements this data format.</p><p>If you use maven you could just add the following to your pom.xml, substituting the version number for t
 he latest &amp; greatest release (see <a shape="rect" href="download.html">the download page for the latest versions</a>).</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
   &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
   &lt;artifactId&gt;camel-jaxb&lt;/artifactId&gt;

Modified: websites/production/camel/content/rest-dsl.html
==============================================================================
--- websites/production/camel/content/rest-dsl.html (original)
+++ websites/production/camel/content/rest-dsl.html Tue Dec  9 19:20:07 2014
@@ -183,7 +183,13 @@
                             <p>In the embedded route you can configure the route settings such as routeId, autoStartup and various other options you can set on routes today.</p><pre>.get().route().routeId("myRestRoute").autoStartup(false).transform().constant("Hello World");</pre>
                     </div>
     </div>
-<h3 id="RestDSL-ManagingRestservices"><span style="font-size: 16.0px;line-height: 1.5625;">Managing Rest services</span></h3><p>Each of the rest service becomes a Camel route, so in the first example we have 2 x get and 1 x post REST service, which each become a Camel route. This makes it&#160;<em>the same</em> from Camel to manage and run these services - as they are just Camel routes. This means any tooling and API today that deals with Camel routes, also work with the REST services.</p><p>This means you can use JMX to stop/start routes, and also get the JMX metrics about the routes, such as number of message processed, and their performance statistics.</p><p>There is also a Rest Registry JMX MBean that contains a registry of all REST services which has been defined.&#160;</p><h3 id="RestDSL-BindingtoPOJOsusing">Binding to POJOs using</h3><p>The Rest DSL supports automatic binding json/xml contents to/from POJOs using Camels&#160;<a shape="rect" href="data-format.html">Data Format
 </a>. By default the binding mode is off, meaning there is no automatic binding happening for incoming and outgoing messages.</p><p>You may want to use binding if you develop POJOs that maps to your REST services request and response types. This allows you as a developer to work with the POJOs in Java code.</p><p>The binding modes are:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh">Binding Mode</th><th colspan="1" rowspan="1" class="confluenceTh">Description</th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">off</td><td colspan="1" rowspan="1" class="confluenceTd">Binding is turned off. This is the default option.</td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">auto</td><td colspan="1" rowspan="1" class="confluenceTd">Binding is enabled and Camel is relaxed and support json, xml or both if the needed data formats are included in the classpath. Notice that if for example <code>camel-jaxb</
 code> is not on the classpath, then XML binding is not enabled.</td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">json</td><td colspan="1" rowspan="1" class="confluenceTd">Binding to/from json is enabled, and requires a json capabile data format on the classpath. By default Camel will use <code>json-jackson</code> as the data format.</td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">xml</td><td colspan="1" rowspan="1" class="confluenceTd">Binding to/from xml is enabled, and requires <code>camel-jaxb</code> on the classpath.</td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">json_xml</td><td colspan="1" rowspan="1" class="confluenceTd">Biding to/from json and xml is enabled and requires both data formats to be on the classpath.</td></tr></tbody></table></div><p>&#160;</p><p>To use binding you must include the necessary data formats on the classpath, such as&#160;<code>camel-jaxb</code> and/or&#160;<code>camel-jackson</code>. And then enable the bind
 ing mode. You can configure the binding mode globally on the rest configuration, and then override per rest service as well.</p><p>To enable binding you configure this in Java DSL as shown below</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<h3 id="RestDSL-ManagingRestservices"><span style="font-size: 16.0px;line-height: 1.5625;">Managing Rest services</span></h3><p>Each of the rest service becomes a Camel route, so in the first example we have 2 x get and 1 x post REST service, which each become a Camel route. This makes it&#160;<em>the same</em> from Camel to manage and run these services - as they are just Camel routes. This means any tooling and API today that deals with Camel routes, also work with the REST services.</p><p>This means you can use JMX to stop/start routes, and also get the JMX metrics about the routes, such as number of message processed, and their performance statistics.</p><p>There is also a Rest Registry JMX MBean that contains a registry of all REST services which has been defined.&#160;</p><h3 id="RestDSL-BindingtoPOJOsusing">Binding to POJOs using</h3><p>The Rest DSL supports automatic binding json/xml contents to/from POJOs using Camels&#160;<a shape="rect" href="data-format.html">Data Format
 </a>. By default the binding mode is off, meaning there is no automatic binding happening for incoming and outgoing messages.</p><p>You may want to use binding if you develop POJOs that maps to your REST services request and response types. This allows you as a developer to work with the POJOs in Java code.</p><p>The binding modes are:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh">Binding Mode</th><th colspan="1" rowspan="1" class="confluenceTh">Description</th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">off</td><td colspan="1" rowspan="1" class="confluenceTd">Binding is turned off. This is the default option.</td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">auto</td><td colspan="1" rowspan="1" class="confluenceTd">Binding is enabled and Camel is relaxed and support json, xml or both if the needed data formats are included in the classpath. Notice that if for example <code>camel-jaxb</
 code> is not on the classpath, then XML binding is not enabled.</td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">json</td><td colspan="1" rowspan="1" class="confluenceTd">Binding to/from json is enabled, and requires a json capabile data format on the classpath. By default Camel will use <code>json-jackson</code> as the data format.</td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">xml</td><td colspan="1" rowspan="1" class="confluenceTd">Binding to/from xml is enabled, and requires <code>camel-jaxb</code> on the classpath.</td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">json_xml</td><td colspan="1" rowspan="1" class="confluenceTd">Biding to/from json and xml is enabled and requires both data formats to be on the classpath.</td></tr></tbody></table></div>    <div class="aui-message success shadowed information-macro">
+                            <span class="aui-icon icon-success">Icon</span>
+                <div class="message-content">
+                            <p>From <strong>Camel 2.14.1</strong> onwards when using camel-jaxb for xml bindings, then you can use the option <code>mustBeJAXBElement</code> to relax the output message body must be a class with JAXB annotations. You can use this in situations where the message body is already in XML format, and you want to use the message body as-is as the output type. If that is the case, then set the <span>dataFormatProperty option <code>mustBeJAXBElement</code><span> to <code>false</code> value.</span></span></p>
+                    </div>
+    </div>
+<p>&#160;</p><p>To use binding you must include the necessary data formats on the classpath, such as&#160;<code>camel-jaxb</code> and/or&#160;<code>camel-jackson</code>. And then enable the binding mode. You can configure the binding mode globally on the rest configuration, and then override per rest service as well.</p><p>To enable binding you configure this in Java DSL as shown below</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[restConfiguration().component(&quot;restlet&quot;).host(&quot;localhost&quot;).port(portNum).bindingMode(RestBindingMode.auto);]]></script>
 </div></div><p>And in XML DSL</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[    &lt;restConfiguration bindingMode=&quot;auto&quot; component=&quot;restlet&quot; port=&quot;8080&quot;/&gt;]]></script>