Java 驼峰死信信道
我有一条路线:Java 驼峰死信信道,java,apache-camel,dead-letter,Java,Apache Camel,Dead Letter,我有一条路线: from("restlet://RestletBean/{id}?restletMethod=GET") .setHeader(Exchange.HTTP_METHOD, constant("GET")) .setHeader(Exchange.HTTP_URI, simple("http://x.y.z.com?id={header.id}")) .to("http://dummyHost") 当我没有给出适当的输入时(id,在本例中,它被用作to路由中的U
from("restlet://RestletBean/{id}?restletMethod=GET")
.setHeader(Exchange.HTTP_METHOD, constant("GET"))
.setHeader(Exchange.HTTP_URI, simple("http://x.y.z.com?id={header.id}"))
.to("http://dummyHost")
当我没有给出适当的输入时(id
,在本例中,它被用作to
路由中的URI参数)。至
路线将以错误页面响应我。但事实并非如此。相反,即使在使用死信通道错误处理程序进行处理后,也会出现空白白页:
from("restlet://RestletBean/{id}?restletMethod=GET").
.setHeader(Exchange.HTTP_METHOD, constant("GET"))
.setHeader(Exchange.HTTP_URI, simple("http://x.y.z.com?id={header.id}"))
.to("http://dummyHost")
.errorHandler("http://x.y.z.com?id={header.id}");
死信通道不影响响应。从: 死信通道将使用1秒延迟重新传输最多6次,如果交换失败,将以错误级别记录 顺便说一下,您没有在错误处理程序中正确定义死信通道。应该是:
errorHandler(deadLetterChannel("..."))
您是否尝试将ThroweExceptionOnFailure
参数设置为true
?从:
用于在远程服务器响应失败时禁用引发HttpOperationFailedException的选项。这允许您获取所有响应,而不考虑HTTP状态代码