骆驼窃听与选择

时间:2018-08-09 07:21:52

标签: apache-camel

我正在将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");

1 个答案:

答案 0 :(得分:0)

endChoice()。end()可能是原因。 仅尝试使用end()。换句话说,删除endchoice()