1

我有一个代理,它接受其中包含 Base64 编码文件的 XML 文件。例如 XML 看起来像:

<message>
  <content>Hello World</content>
  <attachements>
     <attachement>*Base64 code here*</attachement>
     <attachement>*Base64 code here*</attachement>
     <attachement>*Base64 code here*</attachement>
  </attachements>
</message>

我的问题:我喜欢将消息中的解码文件保存到运行 ESB 的服务器文件系统的文件夹中。但是我该怎么做呢?如果我使用 Base64 对像“Hello World”这样的简单文本进行编码,我可以使用 Script Mediator 和 Javascript 对其进行解码,但是如何将文件写入文件系统?我必须编写自己的 Mediator 还是有其他我不知道的解决方案?

如果你能帮助我会很好:) 我正在使用 WSO2 ESB 来完成我的学士论文。所以我还不是专业人士:)

谢谢

4

2 回答 2

2

你有几个选择,

  1. 如果文件很小,则遍历<attachments>每个附件,使用脚本中介解码并写入具有如下语法的文件,

    <property name="transport.vfs.ReplyFileName"
              表达式 =“表达式到计算文件名”
              范围=“运输”/>
    <property action="set" name="OUT_ONLY" value="true"/>
    <发送>
        <端点>
            <address uri="vfs:file:///home/user/test/out"/>
        </端点>
    </发送>
    
  2. 如果文件很大,那么编写自己的类调解器会更有效

于 2013-06-07T07:04:55.703 回答
0

将文件发送到本地文件系统。使用VFS 代理

于 2013-06-06T12:05:15.300 回答