2013-02-15 118 views
1

我們有一箇舊的應用程序,並且只能通過FTP協議上傳文件。我們目前的應用程序具有類似文件提交的SOAP接口。有什麼方法可以配置WSO2 ESB以通過ftp將上傳的文件轉換爲SOAP請求,以供我們當前的應用程序使用?WSO2 ESB ftp到SOAP

回答

5

是的,這是一種非常普遍的做法。您可以創建一個從FTP讀取的VFS代理。然後,您可以進行轉換(取決於輸入格式)(即XSLT)以適合您的SOAP端點,然後簡單地向您的WS發送<send>

下面一個例子(僅僞碼 - 未測試),但會給你一個很好的起點:

<?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:[email protected]/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> 
+0

我會使用'<參數名稱=「transport.vfs.FileNamePattern」>。 *。(x | X)(m | M)(l | L)'用於不區分大小寫的XML擴展。 – Voicu 2013-02-20 18:36:49

+0

是的 - 我們經常使用(xml)|(XML),大寫和小寫字母的其他混合物有點奇怪,但有效。感謝提示 – FiveO 2013-02-21 07:21:13