我正在使用Spring Integration,我有这种普通的服务:
public class SampleService {
@ServiceActivator(inputChannel="A", outputChannel="B")
public void process(String msg) {
// ...
}
}
还有类似方式激活的其他服务(SampleService2
,...)。这些主要是链接的(即SampleService
- > SampleService2
- > ... - > SampleServiceN
),除非出现错误且问题与此有关。
在处理过程中,我可能遇到一个问题 - 来自其他服务的异常或只是无效的数据。我希望每个服务都有自己的出站渠道来报告问题,以便我可以自定义如何完成。某些服务可能具有不同的队列,具体取决于问题的类型。例如。根据错误的类型,服务可以:
等等。
我正在考虑更改出站频道或说“停止处理”。首先,我不知道如何使用注释来做到这一点。我已经看到使用xml配置我可以使用标头更丰富,是这样的方式去?如果是这样,如何处理注释?
相反,这是最好的方法,还是有更适合Spring Integration的方法?