[
https://issues.apache.org/jira/browse/CAMEL-16276?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Simo Kivimäki updated CAMEL-16276:
----------------------------------
Description:
WireTap processing does not work when the route uses NoErrorHandler. This
behaviour appeared since Camel 3.7.0. I'm using JDK 11.
Here is an example route. The mock:wiretapTarget is not called and a warning is
shown in the logs. I was able to reproduce the problem also with a JUnit test
(please see the attachment).
{code:java}
from("direct:routeWithNoErrorHandler")
.errorHandler(noErrorHandler())
.wireTap("mock:wiretapTarget");
{code}
{noformat}
WARN --- [ad #2 - WireTap] o.a.camel.processor.WireTapProcessor : Error
occurred during processing Exchange[88F691E00BD6727-0000000000000003] wiretap
to mock:wiretapTarget. This exception will be ignored.
java.lang.IllegalStateException: SendProcessor has not been started: null
at
org.apache.camel.processor.SendDynamicProcessor.process(SendDynamicProcessor.java:102)
at
org.apache.camel.processor.errorhandler.NoErrorHandler.process(NoErrorHandler.java:46)
at
org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:312)
at
org.apache.camel.processor.WireTapProcessor.lambda$process$1(WireTapProcessor.java:176)
at
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)
{noformat}
was:
WireTap processing does not work when the route uses NoErrorHandler. This
behaviour appeared since Camel 3.7.0. I'm using JDK 11.
Here is an example route. The mock:wiretapTarget is not called and a warning is
shown in the logs. I was able to reproduce the problem also with a JUnit test
(please see the attachment).
{code:java}
from("direct:routeWithNoErrorHandler")
.errorHandler(noErrorHandler())
.wireTap("mock:wiretapTarget");
{code}
{noformat}
WARN --- [ad #2 - WireTap] o.a.camel.processor.WireTapProcessor : Error
occurred during processing Exchange[88F691E00BD6727-0000000000000003] wiretap
to mock:wiretapTarget. This exception will be ignored.
java.lang.IllegalStateException: SendProcessor has not been started: null at
org.apache.camel.processor.SendDynamicProcessor.process(SendDynamicProcessor.java:102)
at
org.apache.camel.processor.errorhandler.NoErrorHandler.process(NoErrorHandler.java:46)
at
org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:312)
at
org.apache.camel.processor.WireTapProcessor.lambda$process$1(WireTapProcessor.java:176)
at
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834){noformat}
> WireTap does not work with NoErrorHandler
> -----------------------------------------
>
> Key: CAMEL-16276
> URL: https://issues.apache.org/jira/browse/CAMEL-16276
> Project: Camel
> Issue Type: Bug
> Components: camel-core
> Affects Versions: 3.7.0
> Reporter: Simo Kivimäki
> Priority: Major
> Attachments: WireTapNoErrorHandlerTest.java
>
>
> WireTap processing does not work when the route uses NoErrorHandler. This
> behaviour appeared since Camel 3.7.0. I'm using JDK 11.
> Here is an example route. The mock:wiretapTarget is not called and a warning
> is shown in the logs. I was able to reproduce the problem also with a JUnit
> test (please see the attachment).
>
> {code:java}
> from("direct:routeWithNoErrorHandler")
> .errorHandler(noErrorHandler())
> .wireTap("mock:wiretapTarget");
> {code}
>
> {noformat}
> WARN --- [ad #2 - WireTap] o.a.camel.processor.WireTapProcessor : Error
> occurred during processing Exchange[88F691E00BD6727-0000000000000003] wiretap
> to mock:wiretapTarget. This exception will be ignored.
> java.lang.IllegalStateException: SendProcessor has not been started: null
> at
> org.apache.camel.processor.SendDynamicProcessor.process(SendDynamicProcessor.java:102)
> at
> org.apache.camel.processor.errorhandler.NoErrorHandler.process(NoErrorHandler.java:46)
> at
> org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:312)
> at
> org.apache.camel.processor.WireTapProcessor.lambda$process$1(WireTapProcessor.java:176)
> at
> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> at java.base/java.lang.Thread.run(Thread.java:834)
> {noformat}
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)