我有一个场景,其中需要选择一些代码,否则需要选择一些代码,并且在这两种情况下都需要执行一些常见的清理代码。我尝试了以下代码,但无法实现我想要的。基本上它会将所有代码视为 else 的一部分。在以下场景中,仅在其他情况下才会打印“在所有场景中都应到达此处”。有人可以告诉我哪里出错了吗?
.choice(){
when(exchange => exchange.getIn.getBody(classOf[String]) != null){
process(new ResponseProcessor)
.log(LoggingLevel.INFO,"File with content: ${body}")
.log("Completed Job")
} otherwise{
log(LoggingLevel.INFO,"Empty Body")
}
}
.log("Should Reach Here in all scenarios")