CAMEL-9789: Avoid starting services to soon during CamelContext startup, that can trigger circular dependencies issue with Spring and similar IoC frameworks.
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/171faa0e Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/171faa0e Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/171faa0e Branch: refs/heads/master Commit: 171faa0e9e3c40314c0a214484c9611697e31ab8 Parents: bd137a2 Author: Claus Ibsen <davscl...@apache.org> Authored: Wed Apr 6 19:31:52 2016 +0200 Committer: Claus Ibsen <davscl...@apache.org> Committed: Thu Apr 7 09:39:40 2016 +0200 ---------------------------------------------------------------------- .../ibatis/IBatisUnknownStatementTypeTest.java | 8 +-- .../component/jgroups/JGroupsComponentTest.java | 8 +-- .../src/test/resources/log4j.properties | 4 +- .../metrics/routepolicy/MetricsRoutePolicy.java | 8 +++ .../component/mina/MinaSendToProcessorTest.java | 3 +- .../component/mina2/Mina2EncodingTest.java | 6 ++- .../mina2/Mina2SendToProcessorTest.java | 3 +- .../mongodb/MongoDbTailableCursorConsumer.java | 2 +- .../mongodb/MongoDbTailingProcess.java | 52 ++++++++++++-------- .../mongodb/MongoDbOutputTypeTest.java | 8 +-- .../MyBatisUnknownStatementTypeTest.java | 7 ++- .../xslt/SaxonInvalidXsltFileTest.java | 10 ++-- .../sjms/batch/SjmsBatchEndpointTest.java | 5 +- .../component/snmp/UriConfigurationTest.java | 6 +++ .../spring/batch/SpringBatchEndpointTest.java | 2 +- .../component/xmlrpc/XmlRpcEndpointTest.java | 4 ++ 16 files changed, 79 insertions(+), 57 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-ibatis/src/test/java/org/apache/camel/component/ibatis/IBatisUnknownStatementTypeTest.java ---------------------------------------------------------------------- diff --git a/components/camel-ibatis/src/test/java/org/apache/camel/component/ibatis/IBatisUnknownStatementTypeTest.java b/components/camel-ibatis/src/test/java/org/apache/camel/component/ibatis/IBatisUnknownStatementTypeTest.java index ff35335..f7dc044 100644 --- a/components/camel-ibatis/src/test/java/org/apache/camel/component/ibatis/IBatisUnknownStatementTypeTest.java +++ b/components/camel-ibatis/src/test/java/org/apache/camel/component/ibatis/IBatisUnknownStatementTypeTest.java @@ -16,7 +16,7 @@ */ package org.apache.camel.component.ibatis; -import org.apache.camel.FailedToCreateProducerException; +import org.apache.camel.FailedToCreateRouteException; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.test.junit4.CamelTestSupport; import org.junit.Test; @@ -39,9 +39,9 @@ public class IBatisUnknownStatementTypeTest extends CamelTestSupport { try { context.start(); fail("Should have thrown exception"); - } catch (FailedToCreateProducerException e) { - assertIsInstanceOf(IllegalArgumentException.class, e.getCause()); - assertEquals("statementType must be specified on: Endpoint[ibatis://selectAllAccounts]", e.getCause().getMessage()); + } catch (FailedToCreateRouteException e) { + assertIsInstanceOf(IllegalArgumentException.class, e.getCause().getCause()); + assertEquals("statementType must be specified on: Endpoint[ibatis://selectAllAccounts]", e.getCause().getCause().getMessage()); } } http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-jgroups/src/test/java/org/apache/camel/component/jgroups/JGroupsComponentTest.java ---------------------------------------------------------------------- diff --git a/components/camel-jgroups/src/test/java/org/apache/camel/component/jgroups/JGroupsComponentTest.java b/components/camel-jgroups/src/test/java/org/apache/camel/component/jgroups/JGroupsComponentTest.java index 8e423ec..c10008d 100644 --- a/components/camel-jgroups/src/test/java/org/apache/camel/component/jgroups/JGroupsComponentTest.java +++ b/components/camel-jgroups/src/test/java/org/apache/camel/component/jgroups/JGroupsComponentTest.java @@ -47,13 +47,13 @@ public class JGroupsComponentTest extends CamelTestSupport { @Override protected RouteBuilder createRouteBuilder() throws Exception { - JGroupsComponent defaultComponent = new JGroupsComponent(); - defaultComponent.setChannel(defaultComponentChannel); - context().addComponent("my-default-jgroups", defaultComponent); - return new RouteBuilder() { @Override public void configure() throws Exception { + JGroupsComponent defaultComponent = new JGroupsComponent(); + defaultComponent.setChannel(defaultComponentChannel); + context().addComponent("my-default-jgroups", defaultComponent); + from("my-default-jgroups:" + CLUSTER_NAME).to("mock:default"); from(CONFIGURED_ENDPOINT_URI).to("mock:configured"); } http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-jgroups/src/test/resources/log4j.properties ---------------------------------------------------------------------- diff --git a/components/camel-jgroups/src/test/resources/log4j.properties b/components/camel-jgroups/src/test/resources/log4j.properties index 5109305..1a5fe15 100644 --- a/components/camel-jgroups/src/test/resources/log4j.properties +++ b/components/camel-jgroups/src/test/resources/log4j.properties @@ -20,7 +20,7 @@ # log4j.rootLogger=INFO, file -#log4j.logger.org.apache.camel.component.rcode=DEBUG +#log4j.logger.org.apache.camel.component.jgroups=DEBUG # CONSOLE appender not used by default log4j.appender.stdout=org.apache.log4j.ConsoleAppender @@ -31,5 +31,5 @@ log4j.appender.stdout.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - log4j.appender.file=org.apache.log4j.FileAppender log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - %m%n -log4j.appender.file.file=target/camel-rcode-test.log +log4j.appender.file.file=target/camel-jgroups-test.log log4j.appender.file.append=true http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/routepolicy/MetricsRoutePolicy.java ---------------------------------------------------------------------- diff --git a/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/routepolicy/MetricsRoutePolicy.java b/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/routepolicy/MetricsRoutePolicy.java index bb6c1e9..f39b33d 100644 --- a/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/routepolicy/MetricsRoutePolicy.java +++ b/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/routepolicy/MetricsRoutePolicy.java @@ -26,6 +26,7 @@ import org.apache.camel.NonManagedService; import org.apache.camel.Route; import org.apache.camel.support.RoutePolicySupport; import org.apache.camel.util.ObjectHelper; +import org.apache.camel.util.ServiceHelper; /** * A {@link org.apache.camel.spi.RoutePolicy} which gathers statistics and reports them using {@link com.codahale.metrics.MetricRegistry}. @@ -150,6 +151,13 @@ public class MetricsRoutePolicy extends RoutePolicySupport implements NonManaged throw ObjectHelper.wrapRuntimeCamelException(e); } + // ensure registry service is started + try { + ServiceHelper.startService(registryService); + } catch (Exception e) { + throw ObjectHelper.wrapRuntimeCamelException(e); + } + // create statistics holder // for know we record only all the timings of a complete exchange (responses) // we have in-flight / total statistics already from camel-core http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-mina/src/test/java/org/apache/camel/component/mina/MinaSendToProcessorTest.java ---------------------------------------------------------------------- diff --git a/components/camel-mina/src/test/java/org/apache/camel/component/mina/MinaSendToProcessorTest.java b/components/camel-mina/src/test/java/org/apache/camel/component/mina/MinaSendToProcessorTest.java index a0fdd74..0d248c4 100644 --- a/components/camel-mina/src/test/java/org/apache/camel/component/mina/MinaSendToProcessorTest.java +++ b/components/camel-mina/src/test/java/org/apache/camel/component/mina/MinaSendToProcessorTest.java @@ -16,7 +16,6 @@ */ package org.apache.camel.component.mina; -import org.apache.camel.FailedToCreateProducerException; import org.apache.camel.builder.RouteBuilder; import org.junit.Test; @@ -34,7 +33,7 @@ public class MinaSendToProcessorTest extends BaseMinaTest { try { context.start(); fail("Should have thrown an exception"); - } catch (FailedToCreateProducerException e) { + } catch (Exception e) { // expected } } http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-mina2/src/test/java/org/apache/camel/component/mina2/Mina2EncodingTest.java ---------------------------------------------------------------------- diff --git a/components/camel-mina2/src/test/java/org/apache/camel/component/mina2/Mina2EncodingTest.java b/components/camel-mina2/src/test/java/org/apache/camel/component/mina2/Mina2EncodingTest.java index f6130c1..63328d5 100644 --- a/components/camel-mina2/src/test/java/org/apache/camel/component/mina2/Mina2EncodingTest.java +++ b/components/camel-mina2/src/test/java/org/apache/camel/component/mina2/Mina2EncodingTest.java @@ -18,6 +18,7 @@ package org.apache.camel.component.mina2; import org.apache.camel.Endpoint; import org.apache.camel.Exchange; +import org.apache.camel.FailedToCreateRouteException; import org.apache.camel.Processor; import org.apache.camel.Producer; import org.apache.camel.builder.RouteBuilder; @@ -194,8 +195,9 @@ public class Mina2EncodingTest extends BaseMina2Test { } }); fail("Should have thrown a ResolveEndpointFailedException due invalid encoding parameter"); - } catch (IllegalArgumentException e) { - // We were suppose to get here. + } catch (FailedToCreateRouteException e) { + IllegalArgumentException iae = assertIsInstanceOf(IllegalArgumentException.class, e.getCause()); + assertEquals("The encoding: XXX is not supported", iae.getMessage()); } } } http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-mina2/src/test/java/org/apache/camel/component/mina2/Mina2SendToProcessorTest.java ---------------------------------------------------------------------- diff --git a/components/camel-mina2/src/test/java/org/apache/camel/component/mina2/Mina2SendToProcessorTest.java b/components/camel-mina2/src/test/java/org/apache/camel/component/mina2/Mina2SendToProcessorTest.java index 0ce99df..5dddd85 100644 --- a/components/camel-mina2/src/test/java/org/apache/camel/component/mina2/Mina2SendToProcessorTest.java +++ b/components/camel-mina2/src/test/java/org/apache/camel/component/mina2/Mina2SendToProcessorTest.java @@ -16,7 +16,6 @@ */ package org.apache.camel.component.mina2; -import org.apache.camel.FailedToCreateProducerException; import org.apache.camel.builder.RouteBuilder; import org.junit.Test; @@ -35,7 +34,7 @@ public class Mina2SendToProcessorTest extends BaseMina2Test { try { context.start(); fail("Should have thrown an exception"); - } catch (FailedToCreateProducerException e) { + } catch (Exception e) { // expected } } http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbTailableCursorConsumer.java ---------------------------------------------------------------------- diff --git a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbTailableCursorConsumer.java b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbTailableCursorConsumer.java index ca72bfc..212a720 100644 --- a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbTailableCursorConsumer.java +++ b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbTailableCursorConsumer.java @@ -41,7 +41,7 @@ public class MongoDbTailableCursorConsumer extends DefaultConsumer { tailingProcess.stop(); } if (executor != null) { - executor.shutdown(); + endpoint.getCamelContext().getExecutorServiceManager().shutdown(executor); executor = null; } } http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbTailingProcess.java ---------------------------------------------------------------------- diff --git a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbTailingProcess.java b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbTailingProcess.java index 25f44d4..916f222 100644 --- a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbTailingProcess.java +++ b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbTailingProcess.java @@ -17,6 +17,9 @@ package org.apache.camel.component.mongodb; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.TimeUnit; + import com.mongodb.BasicDBObject; import com.mongodb.Bytes; import com.mongodb.DBCollection; @@ -35,7 +38,7 @@ public class MongoDbTailingProcess implements Runnable { private static final String CAPPED_KEY = "capped"; public volatile boolean keepRunning = true; - public volatile boolean stopped; // = false + private final CountDownLatch latch = new CountDownLatch(1); private final DBCollection dbCol; private final MongoDbEndpoint endpoint; @@ -81,7 +84,7 @@ public class MongoDbTailingProcess implements Runnable { tailTracking.recoverFromStore(); cursor = initializeCursor(); } catch (Exception e) { - throw new CamelMongoDbException("Exception ocurred while initializing tailable cursor", e); + throw new CamelMongoDbException("Exception occurred while initializing tailable cursor", e); } if (cursor == null) { @@ -95,28 +98,30 @@ public class MongoDbTailingProcess implements Runnable { */ @Override public void run() { - while (keepRunning) { - doRun(); - // if the previous call didn't return because we have stopped running, then regenerate the cursor - if (keepRunning) { - cursor.close(); - if (LOG.isDebugEnabled()) { - LOG.debug("Regenerating cursor with lastVal: {}, waiting {}ms first", tailTracking.lastVal, cursorRegenerationDelay); - } - - if (cursorRegenerationDelayEnabled) { - try { - Thread.sleep(cursorRegenerationDelay); - } catch (InterruptedException e) { - LOG.error("Thread was interrupted", e); + try { + while (keepRunning) { + doRun(); + // if the previous call didn't return because we have stopped running, then regenerate the cursor + if (keepRunning) { + cursor.close(); + if (LOG.isDebugEnabled()) { + LOG.debug("Regenerating cursor with lastVal: {}, waiting {}ms first", tailTracking.lastVal, cursorRegenerationDelay); } + + if (cursorRegenerationDelayEnabled) { + try { + Thread.sleep(cursorRegenerationDelay); + } catch (InterruptedException e) { + // ignore + } + } + + cursor = initializeCursor(); } - - cursor = initializeCursor(); } + } finally { + latch.countDown(); } - - stopped = true; } protected void stop() throws Exception { @@ -129,10 +134,15 @@ public class MongoDbTailingProcess implements Runnable { cursor.close(); } // wait until the main loop acknowledges the stop - while (!stopped) { } + // TODO: yikes this is not good with a endless while loop + // wait for stop latch + boolean zero = latch.await(30, TimeUnit.SECONDS); if (LOG.isInfoEnabled()) { LOG.info("Stopped MongoDB Tailable Cursor consumer, bound to collection: {}", "db: " + dbCol.getDB() + ", col: " + dbCol.getName()); } + if (!zero) { + LOG.warn("Waited 30 seconds for MongoDB Tailable Cursor consumer to stop cleanly. Will now force stop."); + } } /** http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOutputTypeTest.java ---------------------------------------------------------------------- diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOutputTypeTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOutputTypeTest.java index 50c1eba..f7576bb 100644 --- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOutputTypeTest.java +++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOutputTypeTest.java @@ -93,9 +93,7 @@ public class MongoDbOutputTypeTest extends AbstractMongoDbTest { template.getCamelContext().addRoutes(taillableRouteBuilder); fail("Endpoint should not be initialized with a non compatible outputType"); } catch (Exception exception) { - log.debug("Exception raised during initialization", exception); - exception.printStackTrace(); - assertTrue("Exception is not of type IllegalArgumentException", exception instanceof IllegalArgumentException); + assertTrue("Exception is not of type IllegalArgumentException", exception.getCause() instanceof IllegalArgumentException); } } @@ -114,9 +112,7 @@ public class MongoDbOutputTypeTest extends AbstractMongoDbTest { template.getCamelContext().addRoutes(taillableRouteBuilder); fail("Endpoint should not be initialized with a non compatible outputType"); } catch (Exception exception) { - log.debug("Exception raised during initialization", exception); - exception.printStackTrace(); - assertTrue("Exception is not of type IllegalArgumentException", exception instanceof IllegalArgumentException); + assertTrue("Exception is not of type IllegalArgumentException", exception.getCause() instanceof IllegalArgumentException); } } http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-mybatis/src/test/java/org/apache/camel/component/mybatis/MyBatisUnknownStatementTypeTest.java ---------------------------------------------------------------------- diff --git a/components/camel-mybatis/src/test/java/org/apache/camel/component/mybatis/MyBatisUnknownStatementTypeTest.java b/components/camel-mybatis/src/test/java/org/apache/camel/component/mybatis/MyBatisUnknownStatementTypeTest.java index b70c22b..8af60c3 100644 --- a/components/camel-mybatis/src/test/java/org/apache/camel/component/mybatis/MyBatisUnknownStatementTypeTest.java +++ b/components/camel-mybatis/src/test/java/org/apache/camel/component/mybatis/MyBatisUnknownStatementTypeTest.java @@ -16,7 +16,6 @@ */ package org.apache.camel.component.mybatis; -import org.apache.camel.FailedToCreateProducerException; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.test.junit4.CamelTestSupport; import org.junit.Test; @@ -39,9 +38,9 @@ public class MyBatisUnknownStatementTypeTest extends CamelTestSupport { try { context.start(); fail("Should have thrown exception"); - } catch (FailedToCreateProducerException e) { - assertIsInstanceOf(IllegalArgumentException.class, e.getCause()); - assertEquals("statementType must be specified on: Endpoint[mybatis://selectAllAccounts]", e.getCause().getMessage()); + } catch (Exception e) { + assertIsInstanceOf(IllegalArgumentException.class, e.getCause().getCause()); + assertEquals("statementType must be specified on: Endpoint[mybatis://selectAllAccounts]", e.getCause().getCause().getMessage()); } } http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonInvalidXsltFileTest.java ---------------------------------------------------------------------- diff --git a/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonInvalidXsltFileTest.java b/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonInvalidXsltFileTest.java index e8d1dce..fe1b203 100644 --- a/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonInvalidXsltFileTest.java +++ b/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonInvalidXsltFileTest.java @@ -16,9 +16,9 @@ */ package org.apache.camel.component.xslt; +import javax.xml.transform.TransformerException; + import org.apache.camel.CamelContext; -import org.apache.camel.FailedToCreateRouteException; -import org.apache.camel.ResolveEndpointFailedException; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.impl.DefaultCamelContext; import org.apache.camel.test.junit4.TestSupport; @@ -35,16 +35,16 @@ public class SaxonInvalidXsltFileTest extends TestSupport { context.start(); fail("Should have thrown an exception due XSL compilation error"); - } catch (FailedToCreateRouteException e) { + } catch (Exception e) { // expected - assertIsInstanceOf(ResolveEndpointFailedException.class, e.getCause()); + assertIsInstanceOf(TransformerException.class, e.getCause()); } } protected RouteBuilder createRouteBuilder() throws Exception { return new RouteBuilder() { public void configure() throws Exception { - from("seda:a").to("xslt:org/apache/camel/component/xslt/invalid.xsl?transformerFactoryClass=net.sf.saxon.TransformerFactoryImpl"); + from("seda:a").to("xslt:org/apache/camel/component/xslt/notfound.xsl?transformerFactoryClass=net.sf.saxon.TransformerFactoryImpl"); } }; } http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/batch/SjmsBatchEndpointTest.java ---------------------------------------------------------------------- diff --git a/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/batch/SjmsBatchEndpointTest.java b/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/batch/SjmsBatchEndpointTest.java index c20ba85..7a96012 100644 --- a/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/batch/SjmsBatchEndpointTest.java +++ b/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/batch/SjmsBatchEndpointTest.java @@ -18,7 +18,6 @@ package org.apache.camel.component.sjms.batch; import org.apache.activemq.ActiveMQConnectionFactory; import org.apache.camel.CamelContext; -import org.apache.camel.FailedToCreateProducerException; import org.apache.camel.FailedToCreateRouteException; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.sjms.SjmsComponent; @@ -88,7 +87,7 @@ public class SjmsBatchEndpointTest extends CamelTestSupport { context.start(); } - @Test(expected = IllegalArgumentException.class) + @Test(expected = FailedToCreateRouteException.class) public void testConsumerNegativePollDuration() throws Exception { context.addRoutes(new RouteBuilder() { @Override @@ -100,7 +99,7 @@ public class SjmsBatchEndpointTest extends CamelTestSupport { context.start(); } - @Test(expected = IllegalArgumentException.class) + @Test(expected = FailedToCreateRouteException.class) public void testConsumerNegativeConsumerCount() throws Exception { context.addRoutes(new RouteBuilder() { @Override http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-snmp/src/test/java/org/apache/camel/component/snmp/UriConfigurationTest.java ---------------------------------------------------------------------- diff --git a/components/camel-snmp/src/test/java/org/apache/camel/component/snmp/UriConfigurationTest.java b/components/camel-snmp/src/test/java/org/apache/camel/component/snmp/UriConfigurationTest.java index e13893c..20ccfec 100644 --- a/components/camel-snmp/src/test/java/org/apache/camel/component/snmp/UriConfigurationTest.java +++ b/components/camel-snmp/src/test/java/org/apache/camel/component/snmp/UriConfigurationTest.java @@ -27,6 +27,8 @@ public class UriConfigurationTest extends Assert { @Test public void testTrapReceiverConfiguration() throws Exception { + context.start(); + Endpoint endpoint = context.getEndpoint("snmp:0.0.0.0:1662?protocol=udp&type=TRAP&oids=1.3.6.1.2.1.7.5.1"); assertTrue("Endpoint not an SnmpEndpoint: " + endpoint, endpoint instanceof SnmpEndpoint); SnmpEndpoint snmpEndpoint = (SnmpEndpoint) endpoint; @@ -38,6 +40,8 @@ public class UriConfigurationTest extends Assert { @Test public void testTrapReceiverWithoutPortConfiguration() throws Exception { + context.start(); + Endpoint endpoint = context.getEndpoint("snmp:0.0.0.0?protocol=udp&type=TRAP&oids=1.3.6.1.2.1.7.5.1"); assertTrue("Endpoint not an SnmpEndpoint: " + endpoint, endpoint instanceof SnmpEndpoint); SnmpEndpoint snmpEndpoint = (SnmpEndpoint) endpoint; @@ -49,6 +53,8 @@ public class UriConfigurationTest extends Assert { @Test public void testOidPollerConfiguration() throws Exception { + context.start(); + Endpoint endpoint = context.getEndpoint("snmp:127.0.0.1:1662?protocol=udp&type=POLL&oids=1.3.6.1.2.1.7.5.1"); assertTrue("Endpoint not an SnmpEndpoint: " + endpoint, endpoint instanceof SnmpEndpoint); SnmpEndpoint snmpEndpoint = (SnmpEndpoint) endpoint; http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchEndpointTest.java ---------------------------------------------------------------------- diff --git a/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchEndpointTest.java b/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchEndpointTest.java index 54868ff..cb962ab 100644 --- a/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchEndpointTest.java +++ b/components/camel-spring-batch/src/test/java/org/apache/camel/component/spring/batch/SpringBatchEndpointTest.java @@ -110,7 +110,7 @@ public class SpringBatchEndpointTest extends CamelTestSupport { mockEndpoint.expectedBodiesReceived(jobExecution); } - @Test(expected = UnsupportedOperationException.class) + @Test(expected = FailedToCreateRouteException.class) public void shouldThrowExceptionIfUsedAsConsumer() throws Exception { // When context().addRoutes(new RouteBuilder() { http://git-wip-us.apache.org/repos/asf/camel/blob/171faa0e/components/camel-xmlrpc/src/test/java/org/apache/camel/component/xmlrpc/XmlRpcEndpointTest.java ---------------------------------------------------------------------- diff --git a/components/camel-xmlrpc/src/test/java/org/apache/camel/component/xmlrpc/XmlRpcEndpointTest.java b/components/camel-xmlrpc/src/test/java/org/apache/camel/component/xmlrpc/XmlRpcEndpointTest.java index efee676..4eed832 100644 --- a/components/camel-xmlrpc/src/test/java/org/apache/camel/component/xmlrpc/XmlRpcEndpointTest.java +++ b/components/camel-xmlrpc/src/test/java/org/apache/camel/component/xmlrpc/XmlRpcEndpointTest.java @@ -39,6 +39,8 @@ public class XmlRpcEndpointTest extends Assert { // create the endpoint with parameters @Test public void testEndpointSetting() throws Exception { + camelContext.start(); + XmlRpcEndpoint endpoint = (XmlRpcEndpoint)camelContext.getEndpoint("xmlrpc:http://www.example.com?userAgent=myAgent&gzipCompressing=true&connectionTimeout=30&defaultMethodName=echo"); XmlRpcClientConfigImpl clientConfig = endpoint.getClientConfig(); assertEquals("Get a wrong userAgent", "myAgent", clientConfig.getUserAgent()); @@ -50,6 +52,8 @@ public class XmlRpcEndpointTest extends Assert { @Test public void testClientConfigurer() throws Exception { + camelContext.start(); + XmlRpcEndpoint endpoint = (XmlRpcEndpoint)camelContext.getEndpoint("xmlrpc:http://www.example.com?clientConfigurer=#myClientConfigurer"); XmlRpcClient client = endpoint.createClient(); assertEquals("Get a worng maxThreads", 10, client.getMaxThreads());