早上好
我有一个代理服务,可以从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的答案 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>
答案 0 :(得分:0)
请参考https://github.com/wso2/product-ei/issues/2345。这是由于未考虑某些查询参数。我们已在后续版本中修复了此问题。