[
https://issues.apache.org/jira/browse/CAMEL-15165?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17130358#comment-17130358
]
Claus Ibsen commented on CAMEL-15165:
-------------------------------------
Okay you need to remove the context.init() so the routes are added before
initialization
> DirectConsumer not available any more
> -------------------------------------
>
> Key: CAMEL-15165
> URL: https://issues.apache.org/jira/browse/CAMEL-15165
> Project: Camel
> Issue Type: Bug
> Components: camel-core
> Affects Versions: 3.3.0
> Reporter: Thomas Diesler
> Priority: Minor
> Fix For: 3.4.0
>
>
> Code like
> [this|https://github.com/wildfly-extras/wildfly-camel/blob/master/itests/standalone/basic/src/test/java/org/wildfly/camel/test/converter/CustomConverterTest.java#L56]
> used to work with 3.1.0, but fails with 3.3.0
> {code}
> CamelContext camelctx = new DefaultCamelContext(false);
> camelctx.setLoadTypeConverters(true);
> camelctx.init();
>
> camelctx.addRoutes(new RouteBuilder() {
> @Override
> public void configure() throws Exception {
> from("direct:start").convertBodyTo(Map.class);
> }
> });
> camelctx.start();
> try {
> ProducerTemplate producer = camelctx.createProducerTemplate();
> Map<?, ?> result = producer.requestBody("direct:start", new
> Customer("John", "Doe"), Map.class);
> Assert.assertEquals("{firstName=John, lastName=Doe}",
> result.toString());
> } finally {
> camelctx.close();
> }
> {code}
> {code}
> Caused by:
> org.apache.camel.component.direct.DirectConsumerNotAvailableException: No
> consumers available on endpoint: direct://start. Exchange[]
> at
> org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:59)
> at
> org.apache.camel.processor.SharedCamelInternalProcessor.process(SharedCamelInternalProcessor.java:212)
> at
> org.apache.camel.processor.SharedCamelInternalProcessor$1.process(SharedCamelInternalProcessor.java:110)
> at
> org.apache.camel.impl.engine.DefaultAsyncProcessorAwaitManager.process(DefaultAsyncProcessorAwaitManager.java:83)
> at
> org.apache.camel.processor.SharedCamelInternalProcessor.process(SharedCamelInternalProcessor.java:107)
> at
> org.apache.camel.impl.engine.DefaultProducerCache.send(DefaultProducerCache.java:185)
> at
> org.apache.camel.impl.engine.DefaultProducerTemplate.send(DefaultProducerTemplate.java:176)
> at
> org.apache.camel.impl.engine.DefaultProducerTemplate.send(DefaultProducerTemplate.java:172)
> at
> org.apache.camel.impl.engine.DefaultProducerTemplate.requestBody(DefaultProducerTemplate.java:390)
> ... 150 more
> {code}
> it seems to have to do with the use of ...
> {code}
> camelctx.setLoadTypeConverters(true);
> camelctx.init();
> {code}
> Is this an intentional change that requires code migration?
--
This message was sent by Atlassian Jira
(v8.3.4#803005)