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 2015/08/12 14:19:45 UTC

svn commit: r961617 - in /websites/production/camel/content: book-cookbook.html book-in-one-page.html cache/main.pageCache spring-testing.html

Author: buildbot
Date: Wed Aug 12 12:19:44 2015
New Revision: 961617

Log:
Production update by buildbot for camel

Modified:
    websites/production/camel/content/book-cookbook.html
    websites/production/camel/content/book-in-one-page.html
    websites/production/camel/content/cache/main.pageCache
    websites/production/camel/content/spring-testing.html

Modified: websites/production/camel/content/book-cookbook.html
==============================================================================
--- websites/production/camel/content/book-cookbook.html (original)
+++ websites/production/camel/content/book-cookbook.html Wed Aug 12 12:19:44 2015
@@ -2013,46 +2013,46 @@ public class FilterTest extends Abstract
 @ContextConfiguration
 public class MyCamelTest {
 
-    @Autowired
-    protected CamelContext camelContext;
+? ? @Autowired
+? ? protected CamelContext camelContext;
 
-    @EndpointInject(uri = "mock:foo")
-    protected MockEndpoint foo;
+? ? @EndpointInject(uri = "mock:foo")
+? ? protected MockEndpoint foo;
 
 
     @Test
     @DirtiesContext
-    public void testMocksAreValid() throws Exception {
-        ...       
+? ? public void testMocksAreValid() throws Exception {
+        ...? ? ? ?
 
-        foo.message(0).header("bar").isEqualTo("ABC");
+? ? ? ? foo.message(0).header("bar").isEqualTo("ABC");
 
-        MockEndpoint.assertIsSatisfied(camelContext);
-    }
+? ? ? ? MockEndpoint.assertIsSatisfied(camelContext);
+? ? }
 }
 ]]></script>
 </div></div><h4 id="Bookcookbook-PlainSpringTestusingJUnit4.1.xRunnerwithXMLConfig">Plain Spring Test using JUnit 4.1.x Runner with XML Config</h4><p>You can avoid extending Spring classes by using the SpringJUnit4ClassRunner provided by Spring Test. &#160;This custom JUnit runner means you are free to choose your own class hierarchy while retaining all the capabilities of Spring Test.</p><div class="confluence-information-macro confluence-information-macro-information"><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>When using Spring 4.1 onwards, you need to use the @BootstrapWith annotation to configure it to use Camel testing, as shown below.</p></div></div><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[@RunWith(SpringJUnit4ClassRunner.class)
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[@RunWith(CamelSpringJUnit4ClassRunner.class)
 @BootstrapWith(CamelTestContextBootstrapper.class)
 @ContextConfiguration
 public class MyCamelTest {
 
-    @Autowired
-    protected CamelContext camelContext;
+? ? @Autowired
+? ? protected CamelContext camelContext;
 
-    @EndpointInject(uri = &quot;mock:foo&quot;)
-    protected MockEndpoint foo;
+? ? @EndpointInject(uri = &quot;mock:foo&quot;)
+? ? protected MockEndpoint foo;
 
 
     @Test
     @DirtiesContext
-    public void testMocksAreValid() throws Exception {
-        ...       
+? ? public void testMocksAreValid() throws Exception {
+        ...? ? ? ?
 
-        foo.message(0).header(&quot;bar&quot;).isEqualTo(&quot;ABC&quot;);
+? ? ? ? foo.message(0).header(&quot;bar&quot;).isEqualTo(&quot;ABC&quot;);
 
-        MockEndpoint.assertIsSatisfied(camelContext);
-    }
+? ? ? ? MockEndpoint.assertIsSatisfied(camelContext);
+? ? }
 }
 ]]></script>
 </div></div><h3 id="Bookcookbook-CamelEnhancedSpringTest"><span style="line-height: 1.5625;">Camel Enhanced Spring Test</span></h3><p>Using org.apache.camel.test.junit4.CamelSpringJUnit4ClassRunner&#160;runner with the&#160;<strong>@RunWith</strong>&#160;annotation or extending org.apache.camel.testng.AbstractCamelTestNGSpringContextTests provides the full feature set of Spring Test with support for the feature set provided in the CamelTestSupport classes. &#160;A number of Camel specific annotations have been developed in order to provide for declarative manipulation of the Camel context(s) involved in the test. &#160;These annotations free your test classes from having to inherit from the CamelSpringTestSupport classes and also reduce the amount of code required to customize the tests.</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Annotation Class</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>
 Applies To</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Default Behavioir If Not Present</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Default Behavior If Present</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.DisableJmx</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Indicates if JMX should be globally disabled in the CamelContexts that are bootstrapped &#160;during the test through the use of Spring Test loaded application contexts.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMX is disabled</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMX is disabled</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.ExcludeRoutes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Clas
 s</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Indicates if certain route builder classes should be excluded from discovery. &#160;Initializes a org.apache.camel.spi.PackageScanClassResolver&#160;to exclude a set of given classes from being resolved. Typically this is used at test time to exclude certain routes,&#160;which might otherwise be just noisy, from being discovered and initialized.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Not enabled and no routes are excluded</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>No routes are excluded</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.LazyLoadTypeConverters (Deprecated)</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Indicates if the&#160;CamelContexts that are bootstrapped during the test through the use of Spring Test&#160;loaded application contexts should 
 use lazy loading of type converters.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Type converters are not lazy loaded</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Type converters are not lazy loaded</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.MockEndpoints</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Triggers the auto-mocking of endpoints whose URIs match the provided filter.&#160; The default&#160;filter is "*" which matches all endpoints. &#160;See&#160;org.apache.camel.impl.InterceptSendToMockEndpointStrategy&#160;for&#160;more details on the registration of the mock endpoints.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Not enabled</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>All endpoints are sniffed and recorded in a mock endpoint.</p></td></tr><tr><td colspan="1" rowspan="1" class="c
 onfluenceTd"><p>org.apache.camel.test.spring.MockEndpointsAndSkip</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Triggers the auto-mocking of endpoints whose URIs match the provided filter.&#160; The default&#160;filter is "*", which matches all endpoints. &#160;See&#160;<a shape="rect" class="external-link" href="http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/InterceptSendToMockEndpointStrategy.java?view=markup">org.apache.camel.impl.InterceptSendToMockEndpointStrategy</a>&#160;for&#160;more details on the registration of the mock endpoints. &#160;This annotation will also skip sending the message to matched endpoints as well.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Not enabled</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>All endpoints are sniffed and recorded in a mock endpoint. &#160;The original endpoint is not invoked.</p></t
 d></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.ProvidesBreakpoint</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Method</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Indicates that the annotated method returns an&#160;org.apache.camel.spi.Breakpoint&#160;for use in the test.&#160; Useful for intercepting&#160;traffic to all endpoints or simply for setting a break point in an IDE for debugging.&#160; The method must&#160;be public, static, take no arguments, and return org.apache.camel.spi.Breakpoint.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>N/A</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The returned Breakpoint is registered in the CamelContext(s)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.ShutdownTimeout</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluenceT
 d"><p>Indicates to set the shutdown timeout of all CamelContexts instantiated through the&#160;use of Spring Test loaded application contexts.&#160; If no annotation is used, the timeout is&#160;automatically reduced to 10 seconds by the test framework.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>10 seconds</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>10 seconds</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.UseAdviceWith</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Indicates the use of adviceWith() within the test class.&#160; If a class is annotated with&#160;this annotation and UseAdviceWith#value()&#160;returns true, any&#160;CamelContexts bootstrapped during the test through the use of Spring Test loaded&#160;application contexts will not be started automatically.&#160; The test author is responsible for&#160;injectin
 g the Camel contexts into the test and executing CamelContext#start()&#160;on them&#160;at the appropriate time after any advice has been applied to the routes in the CamelContext(s).</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>CamelContexts do not automatically start.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>CamelContexts do not automatically start.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">org.apache.camel.test.spring.UseOverridePropertiesWithPropertiesComponent</td><td colspan="1" rowspan="1" class="confluenceTd">Method</td><td colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.16:</strong>Indicates that the annotated method returns a java.util.Properties for use in the test, and that those properties override any existing properties configured on the PropertiesComponent</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" class="confluenceTd">Override properties</td></tr><
 /tbody></table></div><p>The following example illustrates the use of the <strong>@MockEndpoints</strong>&#160;annotation in order to setup mock endpoints as interceptors on all endpoints using the Camel Log component and the <strong>@DisableJmx</strong> annotation to enable JMX which is disabled during tests by default. &#160;Note that we still use the <strong>@DirtiesContext</strong> annotation to ensure that the CamelContext, routes, and mock endpoints are reinitialized between test methods.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">

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 Aug 12 12:19:44 2015
@@ -3052,7 +3052,7 @@ public class MyCamelTest {
 }
 ]]></script>
 </div></div><h4 id="BookInOnePage-PlainSpringTestusingJUnit4.1.xRunnerwithXMLConfig">Plain Spring Test using JUnit 4.1.x Runner with XML Config</h4><p>You can avoid extending Spring classes by using the SpringJUnit4ClassRunner provided by Spring Test. &#160;This custom JUnit runner means you are free to choose your own class hierarchy while retaining all the capabilities of Spring Test.</p><div class="confluence-information-macro confluence-information-macro-information"><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>When using Spring 4.1 onwards, you need to use the @BootstrapWith annotation to configure it to use Camel testing, as shown below.</p></div></div><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[@RunWith(SpringJUnit4ClassRunner.class)
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[@RunWith(CamelSpringJUnit4ClassRunner.class)
 @BootstrapWith(CamelTestContextBootstrapper.class)
 @ContextConfiguration
 public class MyCamelTest {
@@ -3685,11 +3685,11 @@ The tutorial has been designed in two pa
 While not actual tutorials you might find working through the source of the various <a shape="rect" href="examples.html">Examples</a> useful.</li></ul>
 
 <h2 id="BookInOnePage-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</h2><p>&#160;</p><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Thanks</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>This tutorial was kindly donated to Apache Camel by Martin Gilday.</p></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.rbtoc1439032676989 {padding: 0px;}
-div.rbtoc1439032676989 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1439032676989 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1439381869005 {padding: 0px;}
+div.rbtoc1439381869005 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1439381869005 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1439032676989">
+/*]]>*/</style></p><div class="toc-macro rbtoc1439381869005">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</a></li><li><a shape="rect" href="#BookInOnePage-Preface">Preface</a></li><li><a shape="rect" href="#BookInOnePage-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#BookInOnePage-Distribution">Distribution</a></li><li><a shape="rect" href="#BookInOnePage-About">About</a></li><li><a shape="rect" href="#BookInOnePage-CreatetheCamelProject">Create the Camel Project</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-UpdatethePOMwithDependencies">Update the POM with Dependencies</a></li></ul>
 </li><li><a shape="rect" href="#BookInOnePage-WritingtheServer">Writing the Server</a>
@@ -5789,11 +5789,11 @@ So we completed the last piece in the pi
 <p>This example has been removed from <strong>Camel 2.9</strong> onwards. Apache Axis 1.4 is a very old and unsupported framework. We encourage users to use <a shape="rect" href="cxf.html">CXF</a> instead of Axis.</p></div></div>
 
 <style type="text/css">/*<![CDATA[*/
-div.rbtoc1439032677213 {padding: 0px;}
-div.rbtoc1439032677213 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1439032677213 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1439381869642 {padding: 0px;}
+div.rbtoc1439381869642 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1439381869642 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style><div class="toc-macro rbtoc1439032677213">
+/*]]>*/</style><div class="toc-macro rbtoc1439381869642">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-TutorialusingAxis1.4withApacheCamel">Tutorial using Axis 1.4 with Apache Camel</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#BookInOnePage-Distribution">Distribution</a></li><li><a shape="rect" href="#BookInOnePage-Introduction">Introduction</a></li><li><a shape="rect" href="#BookInOnePage-SettinguptheprojecttorunAxis">Setting up the project to run Axis</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-Maven2">Maven 2</a></li><li><a shape="rect" href="#BookInOnePage-wsdl">wsdl</a></li><li><a shape="rect" href="#BookInOnePage-ConfiguringAxis">Configuring Axis</a></li><li><a shape="rect" href="#BookInOnePage-RunningtheExample">Running the Example</a></li></ul>
@@ -17599,11 +17599,11 @@ template.send(&quot;direct:alias-verify&
 ]]></script>
 </div></div><p></p><h3 id="BookInOnePage-SeeAlso.28">See Also</h3>
 <ul><li><a shape="rect" href="configuring-camel.html">Configuring Camel</a></li><li><a shape="rect" href="component.html">Component</a></li><li><a shape="rect" href="endpoint.html">Endpoint</a></li><li><a shape="rect" href="getting-started.html">Getting Started</a></li></ul><ul><li><a shape="rect" href="crypto.html">Crypto</a> Crypto is also available as a <a shape="rect" href="data-format.html">Data Format</a></li></ul> <h2 id="BookInOnePage-CXFComponent">CXF Component</h2><div class="confluence-information-macro confluence-information-macro-note"><span class="aui-icon aui-icon-small aui-iconfont-warning confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>When using CXF as a consumer, the <a shape="rect" href="cxf-bean-component.html">CXF Bean Component</a> allows you to factor out how message payloads are received from their processing as a RESTful or SOAP web service. This has the potential of using a multitude of transports to consume web 
 services. The bean component's configuration is also simpler and provides the fastest method to implement web services using Camel and CXF.</p></div></div><div class="confluence-information-macro confluence-information-macro-tip"><span class="aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>When using CXF in streaming modes (see DataFormat option), then also read about <a shape="rect" href="stream-caching.html">Stream caching</a>.</p></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.rbtoc1439032697654 {padding: 0px;}
-div.rbtoc1439032697654 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1439032697654 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1439381894036 {padding: 0px;}
+div.rbtoc1439381894036 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1439381894036 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1439032697654">
+/*]]>*/</style></p><div class="toc-macro rbtoc1439381894036">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-CXFComponent">CXF Component</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-URIformat">URI format</a></li><li><a shape="rect" href="#BookInOnePage-Options">Options</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-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/spring-testing.html
==============================================================================
--- websites/production/camel/content/spring-testing.html (original)
+++ websites/production/camel/content/spring-testing.html Wed Aug 12 12:19:44 2015
@@ -202,46 +202,46 @@ public class FilterTest extends Abstract
 @ContextConfiguration
 public class MyCamelTest {
 
-    @Autowired
-    protected CamelContext camelContext;
+? ? @Autowired
+? ? protected CamelContext camelContext;
 
-    @EndpointInject(uri = &quot;mock:foo&quot;)
-    protected MockEndpoint foo;
+? ? @EndpointInject(uri = &quot;mock:foo&quot;)
+? ? protected MockEndpoint foo;
 
 
     @Test
     @DirtiesContext
-    public void testMocksAreValid() throws Exception {
-        ...       
+? ? public void testMocksAreValid() throws Exception {
+        ...? ? ? ?
 
-        foo.message(0).header(&quot;bar&quot;).isEqualTo(&quot;ABC&quot;);
+? ? ? ? foo.message(0).header(&quot;bar&quot;).isEqualTo(&quot;ABC&quot;);
 
-        MockEndpoint.assertIsSatisfied(camelContext);
-    }
+? ? ? ? MockEndpoint.assertIsSatisfied(camelContext);
+? ? }
 }
 ]]></script>
 </div></div><h4 id="SpringTesting-PlainSpringTestusingJUnit4.1.xRunnerwithXMLConfig">Plain Spring Test using JUnit 4.1.x Runner with XML Config</h4><p>You can avoid extending Spring classes by using the SpringJUnit4ClassRunner provided by Spring Test. &#160;This custom JUnit runner means you are free to choose your own class hierarchy while retaining all the capabilities of Spring Test.</p><div class="confluence-information-macro confluence-information-macro-information"><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>When using Spring 4.1 onwards, you need to use the @BootstrapWith annotation to configure it to use Camel testing, as shown below.</p></div></div><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[@RunWith(SpringJUnit4ClassRunner.class)
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[@RunWith(CamelSpringJUnit4ClassRunner.class)
 @BootstrapWith(CamelTestContextBootstrapper.class)
 @ContextConfiguration
 public class MyCamelTest {
 
-    @Autowired
-    protected CamelContext camelContext;
+? ? @Autowired
+? ? protected CamelContext camelContext;
 
-    @EndpointInject(uri = &quot;mock:foo&quot;)
-    protected MockEndpoint foo;
+? ? @EndpointInject(uri = &quot;mock:foo&quot;)
+? ? protected MockEndpoint foo;
 
 
     @Test
     @DirtiesContext
-    public void testMocksAreValid() throws Exception {
-        ...       
+? ? public void testMocksAreValid() throws Exception {
+        ...? ? ? ?
 
-        foo.message(0).header(&quot;bar&quot;).isEqualTo(&quot;ABC&quot;);
+? ? ? ? foo.message(0).header(&quot;bar&quot;).isEqualTo(&quot;ABC&quot;);
 
-        MockEndpoint.assertIsSatisfied(camelContext);
-    }
+? ? ? ? MockEndpoint.assertIsSatisfied(camelContext);
+? ? }
 }
 ]]></script>
 </div></div><h3 id="SpringTesting-CamelEnhancedSpringTest"><span style="line-height: 1.5625;">Camel Enhanced Spring Test</span></h3><p>Using org.apache.camel.test.junit4.CamelSpringJUnit4ClassRunner&#160;runner with the&#160;<strong>@RunWith</strong>&#160;annotation or extending org.apache.camel.testng.AbstractCamelTestNGSpringContextTests provides the full feature set of Spring Test with support for the feature set provided in the CamelTestSupport classes. &#160;A number of Camel specific annotations have been developed in order to provide for declarative manipulation of the Camel context(s) involved in the test. &#160;These annotations free your test classes from having to inherit from the CamelSpringTestSupport classes and also reduce the amount of code required to customize the tests.</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Annotation Class</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p
 >Applies To</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Default Behavioir If Not Present</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Default Behavior If Present</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.DisableJmx</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Indicates if JMX should be globally disabled in the CamelContexts that are bootstrapped &#160;during the test through the use of Spring Test loaded application contexts.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMX is disabled</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>JMX is disabled</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.ExcludeRoutes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Cla
 ss</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Indicates if certain route builder classes should be excluded from discovery. &#160;Initializes a org.apache.camel.spi.PackageScanClassResolver&#160;to exclude a set of given classes from being resolved. Typically this is used at test time to exclude certain routes,&#160;which might otherwise be just noisy, from being discovered and initialized.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Not enabled and no routes are excluded</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>No routes are excluded</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.LazyLoadTypeConverters (Deprecated)</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Indicates if the&#160;CamelContexts that are bootstrapped during the test through the use of Spring Test&#160;loaded application contexts should
  use lazy loading of type converters.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Type converters are not lazy loaded</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Type converters are not lazy loaded</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.MockEndpoints</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Triggers the auto-mocking of endpoints whose URIs match the provided filter.&#160; The default&#160;filter is "*" which matches all endpoints. &#160;See&#160;org.apache.camel.impl.InterceptSendToMockEndpointStrategy&#160;for&#160;more details on the registration of the mock endpoints.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Not enabled</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>All endpoints are sniffed and recorded in a mock endpoint.</p></td></tr><tr><td colspan="1" rowspan="1" class="
 confluenceTd"><p>org.apache.camel.test.spring.MockEndpointsAndSkip</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Triggers the auto-mocking of endpoints whose URIs match the provided filter.&#160; The default&#160;filter is "*", which matches all endpoints. &#160;See&#160;<a shape="rect" class="external-link" href="http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/InterceptSendToMockEndpointStrategy.java?view=markup">org.apache.camel.impl.InterceptSendToMockEndpointStrategy</a>&#160;for&#160;more details on the registration of the mock endpoints. &#160;This annotation will also skip sending the message to matched endpoints as well.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Not enabled</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>All endpoints are sniffed and recorded in a mock endpoint. &#160;The original endpoint is not invoked.</p></
 td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.ProvidesBreakpoint</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Method</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Indicates that the annotated method returns an&#160;org.apache.camel.spi.Breakpoint&#160;for use in the test.&#160; Useful for intercepting&#160;traffic to all endpoints or simply for setting a break point in an IDE for debugging.&#160; The method must&#160;be public, static, take no arguments, and return org.apache.camel.spi.Breakpoint.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>N/A</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The returned Breakpoint is registered in the CamelContext(s)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.ShutdownTimeout</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluence
 Td"><p>Indicates to set the shutdown timeout of all CamelContexts instantiated through the&#160;use of Spring Test loaded application contexts.&#160; If no annotation is used, the timeout is&#160;automatically reduced to 10 seconds by the test framework.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>10 seconds</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>10 seconds</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>org.apache.camel.test.spring.UseAdviceWith</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Class</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Indicates the use of adviceWith() within the test class.&#160; If a class is annotated with&#160;this annotation and UseAdviceWith#value()&#160;returns true, any&#160;CamelContexts bootstrapped during the test through the use of Spring Test loaded&#160;application contexts will not be started automatically.&#160; The test author is responsible for&#160;injecti
 ng the Camel contexts into the test and executing CamelContext#start()&#160;on them&#160;at the appropriate time after any advice has been applied to the routes in the CamelContext(s).</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>CamelContexts do not automatically start.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>CamelContexts do not automatically start.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">org.apache.camel.test.spring.UseOverridePropertiesWithPropertiesComponent</td><td colspan="1" rowspan="1" class="confluenceTd">Method</td><td colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.16:</strong>Indicates that the annotated method returns a java.util.Properties for use in the test, and that those properties override any existing properties configured on the PropertiesComponent</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" class="confluenceTd">Override properties</td></tr>
 </tbody></table></div><p>The following example illustrates the use of the <strong>@MockEndpoints</strong>&#160;annotation in order to setup mock endpoints as interceptors on all endpoints using the Camel Log component and the <strong>@DisableJmx</strong> annotation to enable JMX which is disabled during tests by default. &#160;Note that we still use the <strong>@DirtiesContext</strong> annotation to ensure that the CamelContext, routes, and mock endpoints are reinitialized between test methods.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">