我有一个要求,我想用Mule来解决。我的流程设计如下:
如果每个私有流中都有异常,我希望使用Catch异常策略在相应的私有流中处理它们。
我有这样的设计来分离关注点,这样每个流程都可以执行一个单一的职责。
假设在任何一个私有流中都有类似于IOException、SQLException或any的异常,那么如何重新抛出我的自定义异常,例如,包含潜在原因的org.mycompany.CustomException。因此,主流必须只处理org.mycompany.CustomException并构建相关的异常响应。
例如,如果private-flow1抛出由IOException引起的org.mycompany.CustomException,则实际的异常响应将是:
{"exceptionMessage“:外部服务不可用,"exceptionCode”:101}
而且,如果private-flow2抛出由SQLException引起的org.mycompany.CustomException,则实际的异常响应将为
{"exceptionMessage“:数据库不可用,"exceptionCode”:102}
发布于 2015-01-17 05:52:05
每个私有流都有自己的异常策略,您可以从流中使用Groovy组件抛出一个异常。
以下是如何执行此操作的链接:- How do I force an exception in mule
对于自定义异常,创建java-class,它将扩展DefaultMessagingExceptionStrategy。
custom-exception-strategy:-更新:-使用 Why is Mule exception strategy so chatty?的示例
https://stackoverflow.com/questions/27996552
复制相似问题