通过vfs将文件发送到Windows共享

时间:2017-04-14 08:16:18

标签: wso2esb vfs

我正在wso2 ESB 5.0.0中设置文件传输。我有一个入站端点拾取文件并调用一个名为TestSequence的序列来将相同的文件写入Windows共享:

<?xml version="1.0" encoding="UTF-8"?>
<sequence name="TestSequence" onError="FaultSequenceEmail" trace="enable" xmlns="http://ws.apache.org/ns/synapse">
    <log level="custom">
        <property expression="get-property('transport', 'FILE_NAME')" name="SendFileSequence"/>
    </log>
    <property name="FORCE_ERROR_ON_SOAP_FAULT" scope="default" type="STRING" value="true"/>
    <property name="messageType" scope="axis2" type="STRING" value="application/soap"/>
    <property expression="get-property('transport', 'FILE_NAME')" name="transport.vfs.ReplyFileName" scope="transport" type="STRING" xmlns:ns="http://org.apache.synapse/xsd"/>
    <property name="OUT_ONLY" scope="default" type="STRING" value="true"/>    
    <send>
      <endpoint>
         <address uri="vfs:file://///Testserver\Test" trace="enable"></address>
      </endpoint>
    </send>
</sequence>

此配置会引发以下错误: org.apache.commons.vfs2.FileSystemException:无法创建文件&#34; file:///// Testserver \ Test / xmltest.dd.lock&#34;

服务器文件夹对作为服务运行WSO2的服务用户具有读写权限。

对本地文件夹执行相同操作确实有效。 <address uri="vfs:file:///c:/Testfolder\test" trace="enable"></address>可以正常工作

这里有什么问题?

1 个答案:

答案 0 :(得分:0)

您的网址中似乎缺少“smb”。试试:

vfs:smb://Testserver/Test

如果它不起作用,请在Testserver上定义本地用户并尝试使用:

vfs:smb://Testserver\user:pass@Testserver/Test

(“Testserver”的第一个出现是本地域的名称)

相关问题