从HTML页面将文件上载到Mule(http连接器)

从HTML页面将文件上载到Mule(http连接器),html,xml,mule,Html,Xml,Mule,我正在尝试将一个XML文件从HTML页面上传到Mule-3.5(CE)。在Mule中,我无法检索文件的内容。我正在附加HTML和Mule配置xml。我希望有人能帮我度过难关 发票IDOC文件: 你可以用它来让事情顺利进行。我在HTML中更改的是enctype和文件输入的名称 <html> <body> <form action="http://localhost:8081" method="post" enctype="multipart/form-da

我正在尝试将一个XML文件从HTML页面上传到Mule-3.5(CE)。在Mule中,我无法检索文件的内容。我正在附加HTML和Mule配置xml。我希望有人能帮我度过难关


发票IDOC文件:

你可以用它来让事情顺利进行。我在HTML中更改的是enctype和文件输入的名称

<html>
<body>
    <form action="http://localhost:8081" method="post" enctype="multipart/form-data" >
       INVOIC IDOC File:<input type="file" name="payload" size="40"  accept=".xml" />  
       <input type="submit" name="Submit" id="button" value="Send" />
    </form>
</body>
</html>

发票IDOC文件:
对于Mule部件,可以使用HTTP连接器的HttpMultipartMuleMessageFactory。这允许您接收多部分/表单数据。由于文件输入名为payload,因此它将是mule消息的有效负载,它将是流式有效负载

下面是一个示例mule流,用于在mule中接收xml并记录有效负载。我使用一个简单的对象字符串转换器来读取流

<http:connector name="HTTP" doc:name="HTTP">
   <service-overrides messageFactory="org.mule.transport.http.HttpMultipartMuleMessageFactory" />
</http:connector>

<flow name="http-xml-receive-flow" doc:name="http-xml-receive-flow">
<http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8081" doc:name="HTTP"/>
      <object-to-string-transformer doc:name="Object to String"/>
      <logger message="#[message.payload]" doc:name="Logger" level="INFO"/>
</flow>

如果您计划包含其他表单输入,它们将作为mule消息中的内置附件提供