我正在尝试使用mule入站文件连接器,调查范围出错,说无法启动端点。如果我删除轮询范围并使用默认轮询的文件连接器,并且其工作正常,没有任何文件路径更改。
我想知道为什么民意调查范围会出错?如果文件入站连接器不允许包装在poll范围内,为什么anypoint studio在wrap in选项中显示poll范围?
我发现了类似的问题,但我没有看到详细的解释。
Mule won't allow POLL message processor to read file using file Inbound?
感谢您的回复。
答案 0 :(得分:0)
请提供SSCCE。 根据您的问题,您根本不需要民意测验。 File Connector已具有此功能,可定期检查文件。这是每0.123秒轮询文件的示例
<file:inbound-endpoint path="/tmp" responseTimeout="10000" doc:name="File" pollingFrequency="123"/>
答案 1 :(得分:0)
我的建议是使用文件连接器旁边的石英连接器,并在石英连接器中设置间隔。或者使用具有轮询频率的文件连接器本身,因此无需将文件包装在轮询范围内。
答案 2 :(得分:0)
将mule-module-requester https://github.com/mulesoft/mule-module-requester与Poll Scheduler一起使用。
相关帖子:http://blogs.mulesoft.com/dev/mule-dev/introducing-the-mule-requester-module/
另一种方式是,
设置FTP流initialState =“已停止”,让轮询调度程序启动流程。在FTP处理之后,再次停止流程。
参见示例代码:
<ftp:connector name="FTP" pollingFrequency="1000"
validateConnections="true" moveToDirectory="/work/ftp/processed"
doc:name="FTP" />
<flow name="scheduleStartFTPFlow">
<poll doc:name="Poll">
<fixed-frequency-scheduler frequency="1"
timeUnit="MINUTES" />
<expression-component doc:name="START FTP FLOW"><![CDATA[if(app.registry.processFTPFlow.isStopped()){
app.registry.processFTPFlow.start();
}]]></expression-component>
</poll>
<logger message="Poll Logging: #[payload]" level="INFO"
doc:name="Logger" />
</flow>
<flow name="processFTPFlow" initialState="stopped">
<ftp:inbound-endpoint host="localhost" port="21"
path="/data/ftp" user="Sanjeet" password="sanjeet123" responseTimeout="10000"
doc:name="FTP" connector-ref="FTP" />
<logger message="Logging FTP #[payload]" level="INFO" doc:name="Logger" />
<expression-component doc:name="STOP FTP FLOW"><![CDATA[app.registry.processFTPFlow.stop();]]></expression-component>
</flow>
答案 3 :(得分:0)
您可以在全局元素部分中创建文件端点,然后使用mule requester在调查范围内调用该端点。
<file:connector name="File1" autoDelete="true" streaming="true" validateConnections="true" doc:name="File"/>
<file:endpoint connector-ref="File1" name="File" responseTimeout="10000" doc:name="File" path="/"/>
<flow name="pocforloggingFlow1">
<poll doc:name="Poll">
<mulerequester:request resource="File" doc:name="Mule Requester"/>
</poll>
</flow>
&#13;