How to upload multiple files via REST over HTTP using Mule?

本秂侑毒 提交于 2019-12-02 10:17:20

问题


I have a folder say "MyFiles" where I have lots of files. Now I need to upload those file via REST over HTTP . What will be the approach?

I tried the below but it is wrong

<flow name="testFlow1" doc:name="testFlow1">
        <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8081" doc:name="HTTP"/>


         <http:rest-service-component 
                                serviceUrl="http://localhost:8280/rest/xyz" 
                                httpMethod="POST"> 
         </http:rest-service-component> 

    <http:endpoint host="localhost" port="5430" encoding="UTF-8" 
                method="POST" connector-ref="fileHttp" path="fileuploader" name="muleFileUploader">
       </http:endpoint>

</flow>

Please help. Since the input folder will have multiple files, how can we achieve that also?

Thanks


回答1:


Your flow doesn't use a file inbound endpoint and uses a generic (non-in non-out) HTTP endpoint so there's no way this can work.

Below is a configuration that successfully uploads files to an HTTP endpoint. I can not make it work without the object-to-byte-array-transformer (the same file gets polled over and over again - bug?), so I hope your files are not huge...

<flow name="fileUploader">
    <file:inbound-endpoint path="/tmp/mule/in"
        pollingFrequency="5000" moveToDirectory="/tmp/mule/done" />
    <object-to-byte-array-transformer />
    <http:outbound-endpoint address="http://..."
        method="POST" exchange-pattern="request-response" />
</flow>


来源:https://stackoverflow.com/questions/14457455/how-to-upload-multiple-files-via-rest-over-http-using-mule

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!