MuleSoft知识总结-22.Mule组件,错误处理(Try,On Error Continue,On Error Propagate)

本文主要是介绍MuleSoft知识总结-22.Mule组件,错误处理(Try,On Error Continue,On Error Propagate),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • Try
  • On Error Continue
  • On Error Propagate

前言

在《MuleSoft自学分享-21.Mule组件(Until Successful)》我们尝试使用Until Successful组件,在Request请求失败时以一定间隔时间重新发送请求(请求成功时不会调用)。同时我们产生了一个新的问题——如何捕获错误,其实在导入Design Center所设计的接口时就已经生成了一些捕捉错误的组件了。但有时我们也需要自己添加错误捕捉组件。

自动生成的错误捕捉组件:
在这里插入图片描述

名称作用
TryTry作用域捕获并处理放置在其中任何发生错误的组件
On Error Continue这个组件允许在发生错误后继续执行其他组件
On Error Propagate这个组件在发生错误后将抛出错误,并不再执行之后的组件

Try

  1. 在Core工具栏中选择Try组件,放入employeeapi-Choice_Flow中。在这里插入图片描述
  2. 在Core工具栏中选择On Error Continue组件,放到Try组件的Error handling中。在Type中选择Any。
    在这里插入图片描述
  3. 将Transform Message组件放入On Error Continue中。在Output Payload中写入
%dw 2.0
output application/json
---
{"Message":"Request Error"
}

在这里插入图片描述

  1. 使用Debug模式,使用PostMan发送请求。发生错误。
    在这里插入图片描述

On Error Continue

  1. On Error Continue组件捕捉到错误。
    在这里插入图片描述

  2. 捕捉到错误后并未直接抛出错误,而是继续执行流程,此时Transform Message组件已经将值写入Payload中。
    在这里插入图片描述

  3. 程序向下执行,在处理员工信息的Transform Message组件中报错,因为组件无法接受{“Message”:“Request Error”}格式的信息。
    在这里插入图片描述

  4. 返回值信息如下:
    在这里插入图片描述

On Error Propagate

  1. 其他内容一切不变,将On Error Continue组件替换为On Error Propagate组件再次测试。
    在这里插入图片描述
  2. Request发生错误
    在这里插入图片描述
  3. On Error Propagate组件抛出错误,不再继续执行流程。
    在这里插入图片描述
  4. 返回值:
    在这里插入图片描述

这篇关于MuleSoft知识总结-22.Mule组件,错误处理(Try,On Error Continue,On Error Propagate)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/336247

相关文章

Vue和React受控组件的区别小结

《Vue和React受控组件的区别小结》本文主要介绍了Vue和React受控组件的区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录背景React 的实现vue3 的实现写法一:直接修改事件参数写法二:通过ref引用 DOMVu

Python中 try / except / else / finally 异常处理方法详解

《Python中try/except/else/finally异常处理方法详解》:本文主要介绍Python中try/except/else/finally异常处理方法的相关资料,涵... 目录1. 基本结构2. 各部分的作用tryexceptelsefinally3. 执行流程总结4. 常见用法(1)多个e

Python中logging模块用法示例总结

《Python中logging模块用法示例总结》在Python中logging模块是一个强大的日志记录工具,它允许用户将程序运行期间产生的日志信息输出到控制台或者写入到文件中,:本文主要介绍Pyt... 目录前言一. 基本使用1. 五种日志等级2.  设置报告等级3. 自定义格式4. C语言风格的格式化方法

如何通过try-catch判断数据库唯一键字段是否重复

《如何通过try-catch判断数据库唯一键字段是否重复》在MyBatis+MySQL中,通过try-catch捕获唯一约束异常可避免重复数据查询,优点是减少数据库交互、提升并发安全,缺点是异常处理开... 目录1、原理2、怎么理解“异常走的是数据库错误路径,开销比普通逻辑分支稍高”?1. 普通逻辑分支 v

Spring 依赖注入与循环依赖总结

《Spring依赖注入与循环依赖总结》这篇文章给大家介绍Spring依赖注入与循环依赖总结篇,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. Spring 三级缓存解决循环依赖1. 创建UserService原始对象2. 将原始对象包装成工

解决Nginx启动报错Job for nginx.service failed because the control process exited with error code问题

《解决Nginx启动报错Jobfornginx.servicefailedbecausethecontrolprocessexitedwitherrorcode问题》Nginx启... 目录一、报错如下二、解决原因三、解决方式总结一、报错如下Job for nginx.service failed bec

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

在Java中实现线程之间的数据共享的几种方式总结

《在Java中实现线程之间的数据共享的几种方式总结》在Java中实现线程间数据共享是并发编程的核心需求,但需要谨慎处理同步问题以避免竞态条件,本文通过代码示例给大家介绍了几种主要实现方式及其最佳实践,... 目录1. 共享变量与同步机制2. 轻量级通信机制3. 线程安全容器4. 线程局部变量(ThreadL

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所