Apache 驼峰:消息侦听器中的异常未在驼峰路由中得到处理

Apache 驼峰:消息侦听器中的异常未在驼峰路由中得到处理,apache,jms,activemq,apache-camel,Apache,Jms,Activemq,Apache Camel,我有一个具有异常处理功能的驼峰路由,还有一个defaultmessagelistener,它使用来自amq端点的消息形成驼峰路由 当在messageListener onMessage(Message Message)中抛出异常时,它不会路由回我处理异常的camel onException(Throwable.class) .process(customErrorHandler); 预期:在messagelistener中引发异常时,返回路由并处理errorHandle

我有一个具有异常处理功能的驼峰路由,还有一个defaultmessagelistener,它使用来自amq端点的消息形成驼峰路由

当在messageListener onMessage(Message Message)中抛出异常时,它不会路由回我处理异常的camel

onException(Throwable.class)
            .process(customErrorHandler);
预期:在messagelistener中引发异常时,返回路由并处理errorHandler 实际:捕获异常

@Override
public void onMessage(Message message) {
try {
//dosomething which throws an exception
    } catch (Exception e) {
        //send back to camel route how??????
onException(Throwable.class)
            .process(customErrorHandler);
    }
}

提前感谢您

只是不要捕获onMessage()方法中的异常……让它传播回来。如果该onMessage是由驼峰路由调用的…那么它应该命中驼峰路由的onException()子句等。

能否显示消息侦听器的配置,以及它如何与驼峰路由通信?与驼峰路由没有连接,我向activemq endpointError处理程序注册了侦听器。错误处理程序只能定义为驼峰路由定义的一部分,而不能在非驼峰代码(如此消息侦听器)中定义。