WSO2 ESB SFTP侦听器未启动

WSO2 ESB SFTP侦听器未启动,wso2,sftp,wso2esb,vfs,Wso2,Sftp,Wso2esb,Vfs,我正在使用WSO2测试一些示例用例,其中ESB必须扫描SFTP文件夹并执行一些操作。以下是我所做的: 1) 我在axis2.xml中启用了VFS传输侦听器: <transportReceiver name="vfs" class="org.apache.synapse.transport.vfs.VFSTransportListener"/> <transportSender name="vfs" class="org.apache.synapse.transport.vfs.

我正在使用WSO2测试一些示例用例,其中ESB必须扫描SFTP文件夹并执行一些操作。以下是我所做的:

1) 我在axis2.xml中启用了VFS传输侦听器:

<transportReceiver name="vfs" class="org.apache.synapse.transport.vfs.VFSTransportListener"/>
<transportSender name="vfs" class="org.apache.synapse.transport.vfs.VFSTransportSender"/>

2) 我插入了以下代理(出于明显原因,我已更改用户:pass):


移动
3.
vfs:sftp://user:pass@10.254.241.69:22/home/user/sftp/out
vfs:sftp://user:pass@10.254.241.69:22/home/user/sftp/in
vfs:sftp://user:pass@10.254.241.69:22/home/user/sftp/out
*.txt
文本/纯文本
移动
在4.5.0和4.5.1两个版本中,不会触发任何内容。日志文件中没有输出,只有代理已成功部署的一些信息版本3.0.1中使用的脚本完全相同。

此外,如果我将“sftp”更改为“ftp”或本地文件,侦听器在v4.X中也会正常触发,这让我相信这可能是sftp处理特有的

我是做错了什么,还是软件有缺陷

提前谢谢大家,


Thodoris

我认为问题在于您定义transport.vfs.FileURI属性的方式。假设您的用户用户名为“user”,那么当您登录到sftp时,将转到/home/user文件夹。因此,请尝试按如下方式定义上述属性

<parameter name="transport.vfs.FileURI">vfs:sftp://user:pass@10.254.241.69:22/sftp/in</parameter>
<parameter name="transport.vfs.FileURI">vfs:sftp://amilaftp:password@localhost/in?vfs.passive=true</parameter>
vfs:sftp://user:pass@10.254.241.69:22/sftp/in

vfs:sftp://user:pass@10.254.241.69:22/英寸
我不能说确切的配置,因为我不知道你的文件夹结构。 我已经在WSO2ESB4.0.3和SFTP中尝试过这一点。我的用户名是阿米拉。所以我对属性的定义如下

<parameter name="transport.vfs.FileURI">vfs:sftp://user:pass@10.254.241.69:22/sftp/in</parameter>
<parameter name="transport.vfs.FileURI">vfs:sftp://amilaftp:password@localhost/in?vfs.passive=true</parameter>
vfs:sftp://amilaftp:password@localhost/in?vfs.passive=true

当您尝试使用FTP时,您需要提供完整路径,正如您在提供的配置中所做的那样。这就是为什么WSO2 ESB 4.X中的FTP对您有效。如果这在4.0.3中适用,那么在4.5.x中也应该适用。我建议您首先尝试使用4.0.3,因为它对我很有效。

我认为问题在于您定义transport.vfs.FileURI属性的方式。假设您的用户用户名为“user”,那么当您登录到sftp时,将转到/home/user文件夹。因此,请尝试按如下方式定义上述属性

<parameter name="transport.vfs.FileURI">vfs:sftp://user:pass@10.254.241.69:22/sftp/in</parameter>
<parameter name="transport.vfs.FileURI">vfs:sftp://amilaftp:password@localhost/in?vfs.passive=true</parameter>
vfs:sftp://user:pass@10.254.241.69:22/sftp/in

vfs:sftp://user:pass@10.254.241.69:22/英寸
我不能说确切的配置,因为我不知道你的文件夹结构。 我已经在WSO2ESB4.0.3和SFTP中尝试过这一点。我的用户名是阿米拉。所以我对属性的定义如下

<parameter name="transport.vfs.FileURI">vfs:sftp://user:pass@10.254.241.69:22/sftp/in</parameter>
<parameter name="transport.vfs.FileURI">vfs:sftp://amilaftp:password@localhost/in?vfs.passive=true</parameter>
vfs:sftp://amilaftp:password@localhost/in?vfs.passive=true

当您尝试使用FTP时,您需要提供完整路径,正如您在提供的配置中所做的那样。这就是为什么WSO2 ESB 4.X中的FTP对您有效。如果这在4.0.3中适用,那么在4.5.x中也应该适用。我建议您先试用4.0.3,因为它对我很有效。

阿米拉谢谢,您的解决方案成功了。我使用了基于主页的路径,文件得到了处理<代码>vfs:sftp://user:pass@10.254.241.69:22/sftp/out然而,奇怪的是,完整路径用于旧版本,但突然之间应该使用主路径。此外,没有说明文件系统或路径错误的日志输出/错误消息来指导我完成此操作。在本地和文件系统侦听器中,我看到了类似的消息。不管怎样,你的解决方案对我来说是完全好的!很高兴听到这个消息。可能是新版本中发生了一些变化。阿米拉谢谢你,你的解决方案成功了。我使用了基于主页的路径,文件得到了处理<代码>vfs:sftp://user:pass@10.254.241.69:22/sftp/out然而,奇怪的是,完整路径用于旧版本,但突然之间应该使用主路径。此外,没有说明文件系统或路径错误的日志输出/错误消息来指导我完成此操作。在本地和文件系统侦听器中,我看到了类似的消息。不管怎样,你的解决方案对我来说是完全好的!很高兴听到这个消息。可能是新版本中发生了一些变化。