Hello everyone,

Unfortunately, we’re facing an issue with Camel 4.6/ 4.7, when we’re applying 
any kind of route advisories, using the AdviceWithRouteBuilder from within a 
route template definition converter, e. g. an advisory like

weaveAddFirst().setHeader(HEADER_ORIGINAL_ROUTE_ID)…

from within

final var converter = new RouteAdvisoryStrategy(context, environment);
defaultContext.addRouteTemplateDefinitionConverter("*", converter);

The very same code works perfectly fine with Camel 4.4.
Furthermore, the advisories also work fine, when used from a model lifecycle 
strategy like follows, even on 4.6/4.7:

defaultContext.addModelLifecycleStrategy(new RouteAdvisoryStrategy(context, 
environment));

The exception we’re facing looks like follows:

java.lang.IllegalArgumentException: There are no outputs which matches: * in 
the route: Route[From[{{source}}] -> 
[To[micrometer:timer:duration?action=start], Log[Route ${header.RouteIdOrigin} 
invoked], To[micrometer:timer:duration?action=stop], 
To[log://test?showAll=true]]]
            at 
org.apache.camel.builder.AdviceWithTasks$3.task(AdviceWithTasks.java:358)
            at 
org.apache.camel.builder.AdviceWith.doAdviceWith(AdviceWith.java:259)
            at 
org.apache.camel.builder.AdviceWith.adviceWith(AdviceWith.java:194)
            at 
com.bosch.repo.test.configuration.RouteAdvisoryStrategy.apply(RouteAdvisoryStrategy.java:60)
            at 
org.apache.camel.impl.DefaultModel.addRouteFromTemplate(DefaultModel.java:504)
            at 
org.apache.camel.impl.DefaultModel.addRouteFromTemplate(DefaultModel.java:395)
            at 
org.apache.camel.impl.DefaultCamelContext.addRouteFromTemplate(DefaultCamelContext.java:355)
            at 
org.apache.camel.impl.engine.AbstractCamelContext.doInit(AbstractCamelContext.java:2383)
            at 
org.apache.camel.support.service.BaseService.init(BaseService.java:78)
            at 
org.apache.camel.impl.engine.AbstractCamelContext.init(AbstractCamelContext.java:2024)
            at 
org.apache.camel.support.service.BaseService.start(BaseService.java:105)
            at 
org.apache.camel.impl.engine.AbstractCamelContext.start(AbstractCamelContext.java:2043)
            at 
org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:211)
            at 
org.apache.camel.spring.SpringCamelContext.start(SpringCamelContext.java:119)
            at 
org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:151)
            at 
org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:185)
            at 
org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:178)
            at 
org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:156)
            at 
org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:451)
            at 
org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:384)
            at 
org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:984)
            at 
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:627)
            at 
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
            at 
org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754)
            at 
org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:456)
            at 
org.springframework.boot.SpringApplication.run(SpringApplication.java:335)
            at 
org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:149)
            at com.bosch.repo.test.Application.main(Application.java:20)

We would be very glad if you can support us here.

Thanks very much.

Best Regards,
Andreas

Reply via email to