我们在一个集成项目中有一个场景,我们必须从目录(ftp)中读取不同的XML文件,并使用WSO2 ESB功能将其转换为单个XML消息。每个XML文件都有不同的名称和内容,我在Google上搜索了很多,但没有找到任何相关主题。任何帮助都将是一个很大的赞赏。 例如:
file1.xml
<dataroot>
<data>
<a>232</a>
</data>
</dataroot>
file2.xml
<dataroot>
<data2>
<b>2434</b>
</data2>
</dataroot>
输出:
<dataroot>
<data>
<a>232</a>
</data>
<data2>
<b>3423</b>
</data2>
</dataroot>
答案 0 :(得分:0)
您可以使用VFS
传输,但请注意VFS
传输需要移动或删除原始文件。因此,如果您不想在原始FTP位置本身上执行这些操作,最好在FTP和WSO2 ESB之间的代理文件夹顶部应用VFS
处理。
一旦弄明白,您可以在每个文件上使用XSLT mediator
/ Smooks Mediator
(如果文件大或数量很大)来收集data
元素。 Enrich mediator
可用于将收集的记录顺序添加到dataroot
父级。
1 - https://docs.wso2.com/display/ESB481/Sample+271%3A+File+Processing
2 - https://docs.wso2.com/pages/viewpage.action?pageId=33136056