1

我们有一个遗留应用程序,它只能通过 ftp 协议上传文件。我们当前的应用程序具有用于类似文件提交的 SOAP 接口。有什么方法可以配置 WSO2 ESB 以将上传的文件通过 ftp 转换为 SOAP 请求以供我们当前的应用程序使用?

4

1 回答 1

5

是的,这是一种非常常见的方法。您可以创建一个从 FTP 读取的 VFS 代理。然后,您可以进行转换(取决于输入格式)(即 XSLT)以适合您的 SOAP 端点,然后简单地<send>对您的 WS 进行转换。

这是一个示例(仅伪代码 - 未经测试),但会给您一个很好的起点:

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse" name="ftp_proxy_example" transports="vfs" startOnLoad="true" trace="disable">
    <parameter name="transport.PollInterval">10</parameter>
    <parameter name="transport.vfs.FileURI">vfs:ftp://user:password@server/path</parameter>
    <parameter name="transport.vfs.FileNamePattern">.*[.]xml</parameter>
    <parameter name="transport.vfs.ContentType">application/xml</parameter>
    <target faultSequence="errorSequence">
        <inSequence>
            <!-- maybe a transformation -->
            <!-- send to your WS endpoint -->
        </inSequence>
    </target>
</proxy>
于 2013-02-15T10:54:36.193 回答