我使用mule 3.3.1 CE。
当消息有效内容为SUCCESS字符串时,我有从备份目录中读取* .json文件的方案。
这是我的mule-config:
<flow>
...
<flow-ref name="auditTrailFlow"/>
<flow-ref name="auditTrailBackupFlow"/>
</flow>
<sub-flow name="auditTrailBackupFlow">
/// returns SUCCESS
</sub-flow>
<sub-flow name="auditTrailBackupFlow">
<description>
Resending backup AuditTrail JSON's objects to db
</description>
<choice>
<when expression="#[message.payload == SUCCESS]">
<logger level="INFO" message="Checking audittrail backup directory"/>
<file:inbound-endpoint connector-ref="in" path="${audittrail.backup.dir}">
<file:filename-wildcard-filter pattern="*.json" caseSensitive="true" />
</file:inbound-endpoint>
<not-filter>
<filter ref="nullPayloadFilter"/>
</not-filter>
<json:json-to-object-transformer targetClass="com.company.AuditTrail"/>
// updates db
</when>
<otherwise>
// do something
</otherwise>
</choice>
</sub-flow>
当app在服务器中部署时,我收到以下错误
Invalid content was found starting with element 'file:inbound-endpoint'.
根据错误,我理解该文件:inbound-endpoint位于错误的位置。
我的问题是,当mule消息有效负载成功后,如何告诉mule文件传输读取文件。
答案 0 :(得分:1)
您可以在尝试执行时在流中放置入站端点。入站端点是消息源,因此必须放在流的开头。
有许多可行的方案可以解决您的问题,但我建议的两个方法是:
request()
文件,并将这些文件分发给负责处理它们的另一个流。