【问题标题】:Read file & render as HTTP response using Mule使用 Mule 读取文件并呈现为 HTTP 响应
【发布时间】:2015-04-17 00:56:33
【问题描述】:

在 mule 中,我有一个非常简单的要求,即在接收 HTTP 请求时,需要读取文件并将其呈现为 HTTP 响应。如果我使用 Mule 的文件(入站),则该文件将被轮询,而不是达到确切的目的。这可以使用 Mule 的 Java 组件来实现,也可以通过简单的 mule 组件而不是 Java 组件来实现。

我的流程如下所示:

<flow name="copyFile" doc:name="copyFile">
    <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8091" path="fetchXsd" doc:name="HTTP"/>
    <flow-ref name="readflow" doc:name="Flow Reference"/>
</flow>
<flow name="readflow" doc:name="readflow">
     <file:inbound-endpoint path="src/main/resources" connector-ref="input" doc:name="File" >
        <file:filename-wildcard-filter pattern="*.xsd" caseSensitive="true"/>
    </file:inbound-endpoint> 
    <mulexml:dom-to-xml-transformer doc:name="DOM to XML"/>
    <set-property propertyName="Content-Type" value="application/xml" doc:name="Property"/>
    <logger message="Payload #[payload]" level="INFO" doc:name="Logger"/>
</flow>

【问题讨论】:

    标签: file mule mule-component


    【解决方案1】:

    听起来您正在尝试做的是按需调用文件。文件入站端点对此没有好处,因为正如您所说,它会不断轮询目录。

    尝试用Mule Requestor Module 替换第二个流程中的文件端点。这个插件允许你按需调用资源——我自己用过很多次,它非常方便。希望对您有所帮助。

    【讨论】:

    • 感谢您的回复,是的,您是对的,我们不能在这里使用文件入站组件。
    【解决方案2】:

    在那种情况下,我想你可以试试HTTP Static Resource Handler

    【讨论】:

      【解决方案3】:

      我找到了解决方案,我们必须使用 mule 的 Parse-Template 组件,它有助于呈现静态内容。

      http://www.mulesoft.org/documentation/display/current/Parse+Template+Reference

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-03-07
        • 1970-01-01
        • 1970-01-01
        • 2017-12-18
        • 2014-01-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多