2014-03-06 136 views
0

我想从某个事件(例如 - JMS队列中的消息)上配置的Amazon S3存储桶中读取文件。似乎骡子请求者在文件,ftp等连接器的这种情况下有所帮助。但是,似乎mulerequester的范围仅限于运输连接器而不是云连接器。使用mulerequester从Amazon S3存储桶获取文件

我可以使用S3作为mulerequester的资源吗?

<flow name="process_s3_file" doc:name="process_s3_file" 
    processingStrategy="synchronous"> 
    <mulerequester:request config-ref="" resource="need-to-use-s3-get-object" 
     doc:name="Mule Requester">   
    </mulerequester:request> 

    <logger level="INFO" doc:name="Logger" /> 

    <!-- do something here --> 

    <s3:delete-object config-ref="Amazon_S3" 
     bucketName="${s3-read-bucket}" key="#[s3_file_name]" doc:name="Delete File" 
     accessKey="${s3-access-key}" secretKey="${s3-secret-key}" /> 
</flow> 

这里是我想要请求资源的S3 get-object。

<s3:get-object-content config-ref="Amazon_S3" bucketName="${s3-read-bucket}" 
      key="#[s3_file_name]" accessKey="${s3-access-key}" 
      secretKey="${s3-secret-key}" 
      doc:name="Read File" /> 

回答

2

看起来你不需要有S3连接器的mulerequester。你可以把它放在流中的任何地方。以下流程适用于我。

<flow name="process_s3_file" doc:name="process_s3_file" 
    processingStrategy="synchronous"> 
    <s3:get-object-content config-ref="Amazon_S3" bucketName="${s3-read-bucket}" 
     key="#[s3_file_name]" accessKey="${s3-access-key}" 
     secretKey="${s3-secret-key}" 
     doc:name="Read File" /> 

     <logger level="INFO" doc:name="Logger" /> 

     <!-- do something here --> 

     <s3:delete-object config-ref="Amazon_S3" 
    bucketName="${s3-read-bucket}" key="#[s3_file_name]" doc:name="Delete File" 
    accessKey="${s3-access-key}" secretKey="${s3-secret-key}" /> </flow> 
相关问题