我正在将Spring Boot与Apache骆驼一起使用。我正在从控制器调用路由。路线完成后,控制权将返回至控制器。 我在VerifyLimitProcessor和ApprovedLimitProcessor中生成响应。如果在路由中未提供窃听配置,则控制器将按预期方式检索标头和正文。但是,如果我在路由中引入了窃听,则控制器会将标头和正文接收为null。如果有人指出我需要做的事情,这将对我有很大的帮助,以便我可以在选择语句中为两个处理器(即VerifyLimitProcessor和ApprovedLimitProcessor)引入窃听配置。
预先感谢您的建议。
from(SERVICE_ENDPOINT).process(new ValidatorProcessor())
.to(bean:limitDataDaoImpl?method=getLimitData(${body}))
.process(new AuthorizationProcessor())
.choice()
.when(isLimitGreater())
.log("Limit is greater ")
.to(bean:limitDataDaoImpl?method=getVerifiedLimit(${body}))
.process(new VerifyLimitProcessor())
.otherwise()
.process(new ApprovedLimitProcessor())
.endChoice()
.end()
.wireTap("direct:auditEndPoint")
.executorServiceRef("wireTapThreadPool");
答案 0 :(得分:0)
endChoice()。end()可能是原因。 仅尝试使用end()。换句话说,删除endchoice()