2013-10-23 3 views
0

WSO2 ESB 및 VFS 전송을 사용하여 대용량 파일 스트리밍에 관한 질문이 있습니다. FTP 위치에서 파일을 읽는 프록시를 설정했습니다. 이 파일은 WSO2를 통해 스트리밍되어 targert 위치에 기록되어야합니다. 스트리밍을 활성화하기 위해 송신 측에서 transport.vfs.Streaming 매개 변수를 "true"로 설정했으며 수신 측에서 해당 속성을 선언했습니다. WSO2 VFS 전송을 사용하여 대용량 파일 스트리밍

<proxy xmlns="http://ws.apache.org/ns/synapse" name="LargeFileTestProxy" transports="vfs" startOnLoad="true" trace="disable"> 
<target> 
    <inSequence> 
     <property xmlns:ns2="http://org.apache.synapse/xsd" name="transport.vfs.ReplyFileName" expression="fn:concat(fn:substring-after(get-property('MessageID'), 'urn:uuid:'), '.xml')" scope="transport" type="STRING"/> 
     <property name="transport.vfs.Streaming" value="true" scope="transport" type="STRING"/> 
     <property name="transport.vfs.Append" value="true" scope="transport" type="STRING"/> 
     <property name="OUT_ONLY" value="true" scope="default" type="STRING"/> 
     <send> 
      <endpoint> 
       <address uri="vfs:file:///poc/services/inbound"/> 
      </endpoint> 
     </send> 
    </inSequence> 
    <outSequence/> 
    <faultSequence/> 
</target> 
<parameter name="transport.vfs.Streaming">true</parameter> 
<parameter name="transport.PollInterval">1</parameter> 
<parameter name="transport.vfs.FileURI">vfs:ftp://admin:[email protected]</parameter> 
<parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter> 
<parameter name="transport.vfs.ContentType">application/xml</parameter> 

전송 된 파일

부분적 대상 디렉토리에 기록하고 잠금 파일은 WSO2에 의해 생성됩니다. 불행히도 나머지 읽기 파일은 파일에 추가되지 않습니다.

아무도 내 구성에 문제가 있음을 알고 있습니까?

안부,

HEIKO는

답변

0

하면 출력 파일에 추가하기 위해, 파일의 URI로 어드레스 transport.vfs.Append = TRUE 파라미터를 설정할 필요가있다 [1].

<address uri="vfs:file:///poc/services/inbound?transport.vfs.Append=true"/> 

VFS 속성으로 구성 할 때 작동하지 않습니다.

[1] http://docs.wso2.org/display/ESB450/VFS+Transport

+1

답장을 보내 주셔서 감사합니다. 제안 된 주소 끝점 URI를 조정했습니다. 이제이 파일은 "inbound? transport.vfs.Append = true"라는 이름을 가진 디렉토리 서비스에 기록됩니다. URI가 WSO2/VFS에 의해 예상대로 평가되지 않는 것 같습니다 ... – Heiko

관련 문제