Прочитать файл и отобразить как HTTP-ответ с помощью Mule

В mule у меня очень простое требование: при получении HTTP-запроса файл должен быть прочитан и отображен как HTTP-ответ. Если я использую файл Mule (входящий), файл будет опрашиваться, не служа точной цели. Это может быть достигнуто с помощью Java-компонента Mule, может быть достигнуто с помощью простых компонентов 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>

person sandeep    schedule 16.02.2015    source источник


Ответы (3)


Похоже, вы пытаетесь вызвать файл по запросу. Конечная точка входящего файла не годится для этого, потому что, как вы говорите, она постоянно опрашивает каталог.

Попробуйте заменить конечную точку файла во втором потоке с помощью модуля запроса Mule. Этот плагин позволяет вам вызывать ресурс по запросу - я сам использовал это много раз, и он очень удобен. Надеюсь, это поможет.

person danw    schedule 16.02.2015
comment
Спасибо за ответ, да, вы правы, мы не можем использовать здесь входящий компонент File. - person sandeep; 16.02.2015


Я нашел решение, мы должны использовать компонент mule Parse-Template, который помогает отрисовывать статический контент.

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

person sandeep    schedule 16.02.2015