0

早上好

我有一个代理服务,它从需要被动移动的 FTP 读取文件。在 WSO2 EI 6.1.0 中,我能够通过 URL 参数启用被动模式, ?transport.vfs.passive=true并且没有问题。

在 WSO2 EI 6.2.0 中,相同的代理服务失败并出现以下错误
[EI-Core] DEBUG - FtpClientFactory$FtpConnectionFactory SYST
[EI-Core] DEBUG - FtpClientFactory$FtpConnectionFactory 215 UNIX 类型:L8
[EI-Core] DEBUG - FtpClientFactory$ FtpConnectionFactory PORT192,168,200,195,223,83
[EI-Core] DEBUG - FtpClientFactory$FtpConnectionFactory 200 PORT 命令成功。考虑使用 PASV。
[EI-Core] DEBUG - FtpClientFactory$FtpConnectionFactory LIST OUT/VERIFY/IN
[EI-Core] DEBUG - FtpClientFactory$FtpConnectionFactory 425 无法建立连接。

日志的主要区别是 ftp answer 200 PORT 命令成功。考虑使用 PASV。

启用被动模式的参数是否在 vfs 和 vfs2 之间更改,或者是否有另一种方法可以在 WSO2 EI 6.2.0 编辑的 VFS FTP 中启用被动模式,我也尝试了 ?vfs.passive=true,结果相同

供参考,我用来测试的代码

    <?xml version="1.0" encoding="UTF-8"?>
<proxy name="FTP_Test" startOnLoad="true" transports="vfs" xmlns="http://ws.apache.org/ns/synapse">
    <target>
        <inSequence>
            <log category="WARN" level="custom">
                <property name="Status" value="FTP processing"/>
            </log>
        </inSequence>
        <outSequence/>
        <faultSequence/>
    </target>
    <parameter name="transport.PollInterval">10</parameter>
    <parameter name="transport.vfs.FileURI"> vfs:ftp://xxx:xxx@192.168.10.100:21/OUT/VERIFY/IN?transport.vfs.passive=true
</parameter>
    <parameter name="transport.vfs.ContentType">application/xml</parameter>
    <parameter name="transport.vfs.Locking">false</parameter>
    <parameter name="transport.vfs.FileNamePattern">.*.*</parameter>   
    </proxy>
4

1 回答 1

0

请参阅https://github.com/wso2/product-ei/issues/2345关于此。这是因为一些查询参数没有被考虑在内。我们已在后续版本中修复了此问题。

于 2018-07-11T12:03:01.217 回答