我正在使用 Spring Integration DSL 配置。是否可以添加方法引用处理程序,以便仅当消息有效负载与处理程序参数类型匹配时才调用处理程序?
例如:在下面的代码中,如果 payload 是MyObject2
,Spring 会在 处抛出 ClassCastException handleMessage
。相反,我想做的是绕过handleMessage
并被handleMessage2
.
@Bean
public IntegrationFlow myFlow() {
return IntegrationFlows
.from("myChannel")
.handle(this::handleMessage)
.handle(this::handleMessage2)
...
}
public MyObject2 handleMessage(MyObject o, Map headers){
...
}
public MyObject2 handleMessage(MyObject2 o, Map headers){
...
}