2013-01-24 2 views
1

J'ai le flux ci-dessousComportement étrange du fichier connecteur

<file:endpoint 
    name="StartPoint" 
    path="C:\input" 
    pollingFrequency="5000" 
    doc:name="File"/> 


    <flow name="fileUploader" doc:name="fileUploader"> 

     <quartz:inbound-endpoint 
     jobName="myServiceJob" 
     repeatInterval="5000" 
     doc:name="Quartz" 
     responseTimeout="10000"> 

      <quartz:endpoint-polling-job> 
     <quartz:job-endpoint ref="StartPoint"/> 
     </quartz:endpoint-polling-job> 
     </quartz:inbound-endpoint>  

    <!--<object-to-byte-array-transformer doc:name="Object to Byte Array"/> --> 

    <file:outbound-endpoint 
     path="C:\outputfile" 
     responseTimeout="10000" 
     doc:name="File"/> 

    </flow> 

Supposons maintenant, j'ai quelques fichiers disent (1.txt, 2.txt, myimg.jpg etc.) dans le « C: \ entrée ".

enter image description here

Alors que je lance le flux, bien que le transfert de fichiers se produit dans le dossier de destination « C: \ outputfile », mais le fichier OBTIENNENT converti en fichiers .dat.

enter image description here

Alors, quel est le problème et comment le résoudre?

Merci à l'avance

Répondre

3

Le problème est que Mule est de nommer les fichiers après la propriété id du message. Pour résoudre cette utilisation

<file:outbound-endpoint 
    path="C:\outputfile" 
    outputPattern="#[message.inboundProperties['originalFilename']]" 
    responseTimeout="10000"/>