8.2. 将数据转换节点添加到 Camel 路由
- 在 Prod 中,展开 Transformation drawer。
单击 Data Transformation 模式,然后在 canvas 中点
SetHeader _setHeader1
和To_to1
节点之间的箭头。New Transformation 向导会在 Dozer File Path 字段自动填充时打开。
填写剩余的字段:
-
在 Transformation ID 字段中,输入
xml2json
。 - 对于 Source Type,从下拉菜单中选择 XML。
- 对于 Target Type,从下拉菜单中选择 JSON。
-
在 Transformation ID 字段中,输入
点击 Next。
源类型 (XML) 定义页面会打开,您可以在其中指定 XML 架构 (默认)或示例 XML 实例文档 来提供源数据的类型定义:
- 使 XML 架构 保持启用状态。
对于 Source 文件,浏览 XML 架构文件的位置或用于源数据的类型定义的 XML 实例文件的位置,然后选择(本例中为
abc-order.xsd
)。XML 结构预览 窗格显示 XML 结构的预览。
在 Element root 字段中,输入
ABCOrder
。工具使用此文本来标记显示要映射的源数据项的窗格。
Source Type (XML) 定义页面现在应类似如下:
点 Next 以打开 Target Type (JSON) 定义页面。这是您为目标数据指定类型定义的位置。
单击 JSON Instance Document。
在 Target File 字段中,输入
xyz-order.json
实例文档的路径,或者浏览到它。JSON 结构预览 窗格显示 JSON 数据结构的预览:- 点 Finish。
此时会打开转换编辑器。在这里,您可以将 XML 源中的数据项映射到 JSON 目标中的数据项。
转换编辑器由三个面板组成:
- source wagon-wagonlists 源的可用数据项
- 映射 HEKETI- swig 显示源和目标数据项之间的映射
- 目标 HEKETI-wagonlist 为目标的可用数据项
此外,编辑器的详细信息窗格(位于编辑器的三个面板下面)(一旦进行了第一个映射),以图形方式显示当前选择的映射源和目标数据项目的分层级别。例如:
使用详情窗格,您可以自定义所选源和目标数据项目的映射:
- 设置属性 wagon-wagonModify 现有映射,或将简单的数据项映射到集合中的一个映射(请参阅 第 8.8 节 “将简单的数据项映射到集合中的数据项”)。
- 为 数据项设置一个常量值(请参阅 第 8.5 节 “将恒定变量映射到数据项”)。
- 将 expression swig- swigMap 一个数据项设置为指定表达式的动态评估(请参阅 第 8.6 节 “将表达式映射到数据项”)。
- 使用内置功能(请参阅 第 8.9 节 “将内置功能添加到映射的数据项中”) 添加转换 的属性数据项的值。
- 使用您创建的 Java 方法,或添加您之前创建的 Java 方法(请参阅 第 8.7 节 “将自定义转换添加到映射的数据项”),添加自定义转换 信息项的值。