【问题标题】:Convert Resuable ErrorHandling flow in to connector/component in Mule4将可重用错误处理流程转换为 Mule 4 中的连接器/组件
【发布时间】:2020-03-21 11:35:51
【问题描述】:

我正在使用 Mule 4.2.2 运行时。我们使用 APIKIT 生成的 errorHandling 并根据客户要求对其进行定制,这在所有即将推出的 api 中都是相当标准的。

考虑将其转换为连接器,以便它在调色板中显示为组件/连接器,以便在所有 api 中重复使用,而不是每次复制粘贴。

就像RestConnect 一样,API 规范会在 Exchange (https://help.mulesoft.com/s/article/How-to-generate-a-connector-for-a-REST-API-for-Mule-3-x-and-4-x) 中发布后自动转换为连接器。

  1. 我们是否有类似上述发布mule common flow 的选项,它将转换为组件/连接器?

  2. 如果不是,哪种方式最适合我的场景

    1) 使用 SDK

    https://dzone.com/articles/mulesoft-custom-connector-using-mule-sdk-for-mule(或)

    2) 如本页所述创建 jar

    [https://www.linkedin.com/pulse/flow-reusability-mule-4-nagaraju-kshathriya][2]
    

请建议在这种情况下哪种方法最好且最简单?提前致谢。

【问题讨论】:

  • 您想要重用的错误处理中究竟是什么?
  • errorHandling(200,201,400,500,406,405 等)内部的一组错误消息、处理器和记录器数据编织。基本上,所有 api 的 mule 流程的一部分总是相同的

标签: mule-component mule4 mule-sdk


【解决方案1】:

使用Mule SDK (1) 在Java 中创建连接器或模块很有用。您的问题并不完全清楚要封装在连接器中的内容。我知道您想要的是在调色板中将流的一部分作为连接器共享,这是不同的。 XML SDK 似乎更符合这一点。如文档中所述,您将需要进行一些更改以封装流程元素。这实际上与 REST 连接的工作方式非常相似。

(2) 中描述的方法是从 JAR 文件中导入 XML 流,但该链接描述的方法实际上对于 Mule 4 是不正确的。通过库实现共享流的正确方法是 @ 中描述的方法987654323@。请注意,此方法不会创建可从 Anypoint Studio 调色板使用的连接器。

【讨论】:

  • 谢谢@Aled,你的问题是对的。是的,我希望将部分 mule 流转换为可重复使用的连接器/组件。我正在寻找可能的方法来做到这一点。将探索XML SDK。感谢您的详细回复。
【解决方案2】:

根据个人经验 - 使用通用流程,将其放入存储库并将其作为依赖项包含到 pom 文件中。更好的解决方案 - 包括作为流向域应用程序,并与您的共享 https 连接器单独使用。

我编写了很多基于 Java 的自定义组件。我非常喜欢他们,并为他们感到骄傲。但是从 Mule3 到 Mule4 的过渡杀死了大多数人。即使在 Mule4 中,Mulesoft 也会定期进行更改,从而使组件与运行时不兼容。

【讨论】:

  • 谢谢@Alex。 https://simpleflatservice.com 页面未打开。你能帮忙启用它吗?感谢您的回复。
  • 您的意思是将可重复流转换为 jar 文件并将其放入 repo 以供整体使用?它与 XML SDK 相比有何用处。思考哪一个容易,耗时少,受益多。有什么想法吗?
  • @Alex 请在我的回答中注明实施共享流程的推荐方式。
  • @Aled 是的,我将使用推荐的方式处理 XML SDK。确实也检查了其他方法以了解更多方法。感谢大多数人在第二天快速回答我的问题-它节省了很多时间。
  • 澄清:我之前的评论是为从 JAR 文件导入流的人准备的,这是 @Alex 在他的回答中描述的方法。我在回答中提到了一种推荐的方法来实现它。使用 XML SDK 是另一种方法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-15
  • 1970-01-01
相关资源
最近更新 更多