Spring 集成的函数式编程异常处理风格
Functional-Programming exception-processing style with Spring-Integration
如何使用 Spring-Integration 实现函数式编程风格的异常处理?
即不是让异常冒泡到调用者或将其发送到专用消息通道,而是让容易出错的组件(例如网关,路由器等......)用 [= 包裹 result/exception 21=] 构建并继续处理集成流程的其余部分。
例如,如果我的集成流程如下所示,如何包装网关组件以将 Either 传递给以下转换器?
IntegrationFlows
.from(someChannel)
.gateway(someGateway)
.transform(someTransformer)
.log()
.get()
补充问题:您认为这种做法的缺点是什么?
非常感谢您的专业知识和时间。
最好的问候
向每个端点添加 ExpressionEvaluatingRequestHandlerAdvice
(或自定义建议)。
.gateway(..., e -> e.advice(myAdvice))
如何使用 Spring-Integration 实现函数式编程风格的异常处理?
即不是让异常冒泡到调用者或将其发送到专用消息通道,而是让容易出错的组件(例如网关,路由器等......)用 [= 包裹 result/exception 21=] 构建并继续处理集成流程的其余部分。
例如,如果我的集成流程如下所示,如何包装网关组件以将 Either
IntegrationFlows
.from(someChannel)
.gateway(someGateway)
.transform(someTransformer)
.log()
.get()
补充问题:您认为这种做法的缺点是什么?
非常感谢您的专业知识和时间。
最好的问候
向每个端点添加 ExpressionEvaluatingRequestHandlerAdvice
(或自定义建议)。
.gateway(..., e -> e.advice(myAdvice))