Error handling 适用于所有异常的驼峰死信通道

Error handling 适用于所有异常的驼峰死信通道,error-handling,exception-handling,apache-camel,dead-letter,Error Handling,Exception Handling,Apache Camel,Dead Letter,我正在创建一个死信通道错误处理程序,如下所示 errorHandler(deadLetterChannel("direct:myDLC").useOriginalMessage().maximumRedeliveries(1)); from("direct:myDLC") .bean(MyErrorProcessor.class); Bean MyErrorProcessor应该能够处理所有类型的已检查和未检查异常,如下所示 public void process(Exchange exch

我正在创建一个死信通道错误处理程序,如下所示

errorHandler(deadLetterChannel("direct:myDLC").useOriginalMessage().maximumRedeliveries(1));

from("direct:myDLC")
.bean(MyErrorProcessor.class);
Bean MyErrorProcessor应该能够处理所有类型的已检查和未检查异常,如下所示

public void process(Exchange exchange) throws Exception {
    Exception e=(Exception)exchange.getProperty(Exchange.EXCEPTION_CAUGHT, Exception.class);
    e.printStackTrace();
    if(e instanceof MyUncheckedException){
        logger.error("MyUncheckedException: "+((MyException) e).getErrorCode()+" : "+((MyException) e).getErrorDesc());
    }else if(e instanceof MyException){
        logger.error("MyException: "+((MyException) e).getErrorCode()+" : "+((MyException) e).getErrorDesc());
    }
}
但在处理异常后,原始消息应重定向到路由的端点。。如何在异常处理后继续路由???

使用continued()将起作用,它将忽略错误并继续处理,因此您可能需要处理特定的异常


如果在此异常处理中使用.useOriginalMessage(),则原始消息将是继续的消息。

我真的不明白,它应该重定向到路由的端点吗?哪一个端点?从(“direct:myDLC”).bean(MyErrorProcessor.class).到(desiredEndpoint)?抱歉,我错过了实际的路由,从(“文件:/E:/Target/”).routeId(“Route1”).setHeader(“RouteHeader”).constant(“更改”).log(LoggingLevel.DEBUG,“RouteLogger”,“内部路由1”).throweException(新的MyException(“E_MYERROR_01”))到(“文件:/E:/Target/Done”);一旦MyException在deadletterchannel中处理完毕,应如何继续执行上述路线。?
onException(MyException.class)
    .continued(true)
;