这是我的代码
from("direct:test-POST")
.doTry()
.process(new Processor() {
@Override
public void process(Exchange arg0) throws Exception {
throw new NullPointerException(" Null value");
}
})
.doCatch(NullPointerException.class)
.log("${exception}") // This Prints NullPointer Exception
.process(new Processor() {
@Override
public void process(Exchange arg0) throws Exception {
System.out.println( arg0.getException() ); //This prints Null
}
})
.end();
使用 jetty:run 运行此驼峰路线。
如何捕获异常。它在日志中打印正确的异常。但在处理器内部,异常为空。我错过了什么
答案 0 :(得分:3)
我认为在交易所的房产上发现了例外情况。类似的东西:
Throwable caused = exchange.getProperty(Exchange.EXCEPTION_CAUGHT, NullPointerException.class);
assertNotNull(caused);