Author: buildbot
Date: Wed Jul 18 15:21:19 2012
New Revision: 826205
Log:
Production update by buildbot for camel
Modified:
websites/production/camel/content/book-component-appendix.html
websites/production/camel/content/book-in-one-page.html
websites/production/camel/content/cache/main.pageCache
websites/production/camel/content/loan-broker-example.html
websites/production/camel/content/mybatis.html
Modified: websites/production/camel/content/book-component-appendix.html
==============================================================================
--- websites/production/camel/content/book-component-appendix.html (original)
+++ websites/production/camel/content/book-component-appendix.html Wed Jul 18
15:21:19 2012
@@ -11851,6 +11851,81 @@ from(<span class="code-quote">"timer:<sp
</pre>
</div></div>
+<h4><a shape="rect"
name="BookComponentAppendix-Participatingintransactions"></a>Participating in
transactions</h4>
+
+<p>Setting up a transaction manager under camel-mybatis can be a little bit
fiddly, as it involves externalising the database configuration outside the
standard MyBatis <tt>SqlMapConfig.xml</tt> file.</p>
+
+<p>The first part requires the setup of a <tt>DataSource</tt>. This is
typically a pool (either DBCP, or c3p0), which needs to be wrapped in a Spring
proxy. This proxy enables non-Spring use of the <tt>DataSource</tt> to
participate in Spring transactions (the MyBatis <tt>SqlSessionFactory</tt> does
just this).</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"dataSource"</span> class=<span
class="code-quote">"org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy"</span>></span>
+ <span class="code-tag"><constructor-arg></span>
+ <span class="code-tag"><bean class=<span
class="code-quote">"com.mchange.v2.c3p0.ComboPooledDataSource"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"driverClass"</span> value=<span
class="code-quote">"org.postgresql.Driver"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"jdbcUrl"</span> value=<span
class="code-quote">"jdbc:postgresql://localhost:5432/myDatabase"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"user"</span> value=<span
class="code-quote">"myUser"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"password"</span> value=<span
class="code-quote">"myPassword"</span>/></span>
+ <span class="code-tag"></bean></span>
+ <span class="code-tag"></constructor-arg></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>This has the additional benefit of enabling the database configuration to
be externalised using property placeholders.</p>
+
+<p>A transaction manager is then configured to manage the outermost
<tt>DataSource</tt>:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"txManager"</span> class=<span
class="code-quote">"org.springframework.jdbc.datasource.DataSourceTransactionManager"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"dataSource"</span> ref=<span
class="code-quote">"dataSource"</span>/></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>A <a shape="rect" class="external-link"
href="http://www.mybatis.org/spring/index.html"
rel="nofollow">mybatis-spring</a> <a shape="rect" class="external-link"
href="http://www.mybatis.org/spring/factorybean.html"
rel="nofollow"><tt>SqlSessionFactoryBean</tt></a> then wraps that same
<tt>DataSource</tt>:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"sqlSessionFactory"</span> class=<span
class="code-quote">"org.mybatis.spring.SqlSessionFactoryBean"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"dataSource"</span> ref=<span
class="code-quote">"dataSource"</span>/></span>
+ <span class="code-tag"><span class="code-comment"><!-- standard
mybatis config file --></span></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"configLocation"</span> value=<span
class="code-quote">"/META-INF/SqlMapConfig.xml"</span>/></span>
+ <span class="code-tag"><span class="code-comment"><!-- externalised
mappers --></span></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"mapperLocations"</span> value=<span
class="code-quote">"classpath*:META-INF/mappers/**/*.xml"</span>/></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>The camel-mybatis component is then configured with that factory:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"mybatis"</span> class=<span
class="code-quote">"org.apache.camel.component.mybatis.MyBatisComponent"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"sqlSessionFactory"</span> ref=<span
class="code-quote">"sqlSessionFactory"</span>/></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>Finally, a <a shape="rect" href="transactional-client.html"
title="Transactional Client">transaction policy</a> is defined over the top of
the transaction manager, which can then be used as usual:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"PROPAGATION_REQUIRED"</span> class=<span
class="code-quote">"org.apache.camel.spring.spi.SpringTransactionPolicy"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"transactionManager"</span> ref=<span
class="code-quote">"txManager"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"propagationBehaviorName"</span> value=<span
class="code-quote">"PROPAGATION_REQUIRED"</span>/></span>
+ <span class="code-tag"></bean></span>
+
+ <span class="code-tag"><camelContext id=<span
class="code-quote">"my-model-context"</span> xmlns=<span
class="code-quote">"http://camel.apache.org/schema/spring"</span>></span>
+ <span class="code-tag"><route id=<span
class="code-quote">"insertModel"</span>></span>
+ <span class="code-tag"><from uri=<span
class="code-quote">"direct:insert"</span>/></span>
+ <span class="code-tag"><transacted ref=<span
class="code-quote">"PROPAGATION_REQUIRED"</span>/></span>
+ <span class="code-tag"><to uri=<span
class="code-quote">"mybatis:myModel.insert?statementType=Insert"</span>/></span>
+ <span class="code-tag"></route></span>
+ <span class="code-tag"></camelContext></span>
+</pre>
+</div></div>
<h3><a shape="rect" name="BookComponentAppendix-SeeAlso"></a>See Also</h3>
<ul><li><a shape="rect" href="configuring-camel.html" title="Configuring
Camel">Configuring Camel</a></li><li><a shape="rect" href="component.html"
title="Component">Component</a></li><li><a shape="rect" href="endpoint.html"
title="Endpoint">Endpoint</a></li><li><a shape="rect"
href="getting-started.html" title="Getting Started">Getting
Started</a></li></ul>
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 Wed Jul 18 15:21:19
2012
@@ -32358,6 +32358,81 @@ from(<span class="code-quote">"timer:<sp
</pre>
</div></div>
+<h4><a shape="rect"
name="BookInOnePage-Participatingintransactions"></a>Participating in
transactions</h4>
+
+<p>Setting up a transaction manager under camel-mybatis can be a little bit
fiddly, as it involves externalising the database configuration outside the
standard MyBatis <tt>SqlMapConfig.xml</tt> file.</p>
+
+<p>The first part requires the setup of a <tt>DataSource</tt>. This is
typically a pool (either DBCP, or c3p0), which needs to be wrapped in a Spring
proxy. This proxy enables non-Spring use of the <tt>DataSource</tt> to
participate in Spring transactions (the MyBatis <tt>SqlSessionFactory</tt> does
just this).</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"dataSource"</span> class=<span
class="code-quote">"org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy"</span>></span>
+ <span class="code-tag"><constructor-arg></span>
+ <span class="code-tag"><bean class=<span
class="code-quote">"com.mchange.v2.c3p0.ComboPooledDataSource"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"driverClass"</span> value=<span
class="code-quote">"org.postgresql.Driver"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"jdbcUrl"</span> value=<span
class="code-quote">"jdbc:postgresql://localhost:5432/myDatabase"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"user"</span> value=<span
class="code-quote">"myUser"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"password"</span> value=<span
class="code-quote">"myPassword"</span>/></span>
+ <span class="code-tag"></bean></span>
+ <span class="code-tag"></constructor-arg></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>This has the additional benefit of enabling the database configuration to
be externalised using property placeholders.</p>
+
+<p>A transaction manager is then configured to manage the outermost
<tt>DataSource</tt>:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"txManager"</span> class=<span
class="code-quote">"org.springframework.jdbc.datasource.DataSourceTransactionManager"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"dataSource"</span> ref=<span
class="code-quote">"dataSource"</span>/></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>A <a shape="rect" class="external-link"
href="http://www.mybatis.org/spring/index.html"
rel="nofollow">mybatis-spring</a> <a shape="rect" class="external-link"
href="http://www.mybatis.org/spring/factorybean.html"
rel="nofollow"><tt>SqlSessionFactoryBean</tt></a> then wraps that same
<tt>DataSource</tt>:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"sqlSessionFactory"</span> class=<span
class="code-quote">"org.mybatis.spring.SqlSessionFactoryBean"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"dataSource"</span> ref=<span
class="code-quote">"dataSource"</span>/></span>
+ <span class="code-tag"><span class="code-comment"><!-- standard
mybatis config file --></span></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"configLocation"</span> value=<span
class="code-quote">"/META-INF/SqlMapConfig.xml"</span>/></span>
+ <span class="code-tag"><span class="code-comment"><!-- externalised
mappers --></span></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"mapperLocations"</span> value=<span
class="code-quote">"classpath*:META-INF/mappers/**/*.xml"</span>/></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>The camel-mybatis component is then configured with that factory:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"mybatis"</span> class=<span
class="code-quote">"org.apache.camel.component.mybatis.MyBatisComponent"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"sqlSessionFactory"</span> ref=<span
class="code-quote">"sqlSessionFactory"</span>/></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>Finally, a <a shape="rect" href="transactional-client.html"
title="Transactional Client">transaction policy</a> is defined over the top of
the transaction manager, which can then be used as usual:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"PROPAGATION_REQUIRED"</span> class=<span
class="code-quote">"org.apache.camel.spring.spi.SpringTransactionPolicy"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"transactionManager"</span> ref=<span
class="code-quote">"txManager"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"propagationBehaviorName"</span> value=<span
class="code-quote">"PROPAGATION_REQUIRED"</span>/></span>
+ <span class="code-tag"></bean></span>
+
+ <span class="code-tag"><camelContext id=<span
class="code-quote">"my-model-context"</span> xmlns=<span
class="code-quote">"http://camel.apache.org/schema/spring"</span>></span>
+ <span class="code-tag"><route id=<span
class="code-quote">"insertModel"</span>></span>
+ <span class="code-tag"><from uri=<span
class="code-quote">"direct:insert"</span>/></span>
+ <span class="code-tag"><transacted ref=<span
class="code-quote">"PROPAGATION_REQUIRED"</span>/></span>
+ <span class="code-tag"><to uri=<span
class="code-quote">"mybatis:myModel.insert?statementType=Insert"</span>/></span>
+ <span class="code-tag"></route></span>
+ <span class="code-tag"></camelContext></span>
+</pre>
+</div></div>
<h3><a shape="rect" name="BookInOnePage-SeeAlso"></a>See Also</h3>
<ul><li><a shape="rect" href="configuring-camel.html" title="Configuring
Camel">Configuring Camel</a></li><li><a shape="rect" href="component.html"
title="Component">Component</a></li><li><a shape="rect" href="endpoint.html"
title="Endpoint">Endpoint</a></li><li><a shape="rect"
href="getting-started.html" title="Getting Started">Getting
Started</a></li></ul>
Modified: websites/production/camel/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.
Modified: websites/production/camel/content/loan-broker-example.html
==============================================================================
--- websites/production/camel/content/loan-broker-example.html (original)
+++ websites/production/camel/content/loan-broker-example.html Wed Jul 18
15:21:19 2012
@@ -100,7 +100,7 @@ mvn exec:java -PQueue.Client
<h2><a shape="rect" name="LoanBrokerExample-Examplewithwebservice"></a>Example
with web service</h2>
-<p>The <a shape="rect" class="external-link"
href="https://svn.apache.org/repos/asf/camel/trunk/examples/camel-example-loan-broker/src/main/java/org/apache/camel/loanbroker/webservie/version">web
service version of loan broker</a> is based on the camel-cxf component which
can produce and consume the SOAP message on the wire. It uses the InOut Message
exchange pattern, when the client send out the message to the router , it can
get the response message back from the same endpoint.<br clear="none">
+<p>The <a shape="rect" class="external-link"
href="https://svn.apache.org/repos/asf/camel/trunk/examples/camel-example-loan-broker/src/main/java/org/apache/camel/loanbroker/webservice/version/">web
service version of loan broker</a> is based on the camel-cxf component which
can produce and consume the SOAP message on the wire. It uses the InOut Message
exchange pattern, when the client send out the message to the router , it can
get the response message back from the same endpoint.<br clear="none">
When we send out the quote message to the three different banks, we could
choice to call the bank service one by one or send out the message
parallelly(one request thread per request).<br clear="none">
You can compare the response time after you run the sample.</p>
Modified: websites/production/camel/content/mybatis.html
==============================================================================
--- websites/production/camel/content/mybatis.html (original)
+++ websites/production/camel/content/mybatis.html Wed Jul 18 15:21:19 2012
@@ -255,6 +255,81 @@ from(<span class="code-quote">"timer:<sp
</pre>
</div></div>
+<h4><a shape="rect"
name="MyBatis-Participatingintransactions"></a>Participating in
transactions</h4>
+
+<p>Setting up a transaction manager under camel-mybatis can be a little bit
fiddly, as it involves externalising the database configuration outside the
standard MyBatis <tt>SqlMapConfig.xml</tt> file.</p>
+
+<p>The first part requires the setup of a <tt>DataSource</tt>. This is
typically a pool (either DBCP, or c3p0), which needs to be wrapped in a Spring
proxy. This proxy enables non-Spring use of the <tt>DataSource</tt> to
participate in Spring transactions (the MyBatis <tt>SqlSessionFactory</tt> does
just this).</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"dataSource"</span> class=<span
class="code-quote">"org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy"</span>></span>
+ <span class="code-tag"><constructor-arg></span>
+ <span class="code-tag"><bean class=<span
class="code-quote">"com.mchange.v2.c3p0.ComboPooledDataSource"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"driverClass"</span> value=<span
class="code-quote">"org.postgresql.Driver"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"jdbcUrl"</span> value=<span
class="code-quote">"jdbc:postgresql://localhost:5432/myDatabase"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"user"</span> value=<span
class="code-quote">"myUser"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"password"</span> value=<span
class="code-quote">"myPassword"</span>/></span>
+ <span class="code-tag"></bean></span>
+ <span class="code-tag"></constructor-arg></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>This has the additional benefit of enabling the database configuration to
be externalised using property placeholders.</p>
+
+<p>A transaction manager is then configured to manage the outermost
<tt>DataSource</tt>:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"txManager"</span> class=<span
class="code-quote">"org.springframework.jdbc.datasource.DataSourceTransactionManager"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"dataSource"</span> ref=<span
class="code-quote">"dataSource"</span>/></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>A <a shape="rect" class="external-link"
href="http://www.mybatis.org/spring/index.html"
rel="nofollow">mybatis-spring</a> <a shape="rect" class="external-link"
href="http://www.mybatis.org/spring/factorybean.html"
rel="nofollow"><tt>SqlSessionFactoryBean</tt></a> then wraps that same
<tt>DataSource</tt>:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"sqlSessionFactory"</span> class=<span
class="code-quote">"org.mybatis.spring.SqlSessionFactoryBean"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"dataSource"</span> ref=<span
class="code-quote">"dataSource"</span>/></span>
+ <span class="code-tag"><span class="code-comment"><!-- standard
mybatis config file --></span></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"configLocation"</span> value=<span
class="code-quote">"/META-INF/SqlMapConfig.xml"</span>/></span>
+ <span class="code-tag"><span class="code-comment"><!-- externalised
mappers --></span></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"mapperLocations"</span> value=<span
class="code-quote">"classpath*:META-INF/mappers/**/*.xml"</span>/></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>The camel-mybatis component is then configured with that factory:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"mybatis"</span> class=<span
class="code-quote">"org.apache.camel.component.mybatis.MyBatisComponent"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"sqlSessionFactory"</span> ref=<span
class="code-quote">"sqlSessionFactory"</span>/></span>
+ <span class="code-tag"></bean></span>
+</pre>
+</div></div>
+
+<p>Finally, a <a shape="rect" href="transactional-client.html"
title="Transactional Client">transaction policy</a> is defined over the top of
the transaction manager, which can then be used as usual:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-xml">
+ <span class="code-tag"><bean id=<span
class="code-quote">"PROPAGATION_REQUIRED"</span> class=<span
class="code-quote">"org.apache.camel.spring.spi.SpringTransactionPolicy"</span>></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"transactionManager"</span> ref=<span
class="code-quote">"txManager"</span>/></span>
+ <span class="code-tag"><property name=<span
class="code-quote">"propagationBehaviorName"</span> value=<span
class="code-quote">"PROPAGATION_REQUIRED"</span>/></span>
+ <span class="code-tag"></bean></span>
+
+ <span class="code-tag"><camelContext id=<span
class="code-quote">"my-model-context"</span> xmlns=<span
class="code-quote">"http://camel.apache.org/schema/spring"</span>></span>
+ <span class="code-tag"><route id=<span
class="code-quote">"insertModel"</span>></span>
+ <span class="code-tag"><from uri=<span
class="code-quote">"direct:insert"</span>/></span>
+ <span class="code-tag"><transacted ref=<span
class="code-quote">"PROPAGATION_REQUIRED"</span>/></span>
+ <span class="code-tag"><to uri=<span
class="code-quote">"mybatis:myModel.insert?statementType=Insert"</span>/></span>
+ <span class="code-tag"></route></span>
+ <span class="code-tag"></camelContext></span>
+</pre>
+</div></div>
<h3><a shape="rect" name="MyBatis-SeeAlso"></a>See Also</h3>
<ul><li><a shape="rect" href="configuring-camel.html" title="Configuring
Camel">Configuring Camel</a></li><li><a shape="rect" href="component.html"
title="Component">Component</a></li><li><a shape="rect" href="endpoint.html"
title="Endpoint">Endpoint</a></li><li><a shape="rect"
href="getting-started.html" title="Getting Started">Getting
Started</a></li></ul>
</div>