Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
具有轮询作用域的Mule文件入站连接器_Mule_Mule Esb - Fatal编程技术网

具有轮询作用域的Mule文件入站连接器

具有轮询作用域的Mule文件入站连接器,mule,mule-esb,Mule,Mule Esb,我正在尝试使用带有轮询作用域的mule入站文件连接器,但出现错误,表示无法启动终结点。如果我删除轮询范围并使用带有默认轮询的file connector,并且在没有任何文件路径更改的情况下工作正常 我想知道为什么轮询范围会出现错误?如果不允许将文件入站连接器包装在轮询范围中,为什么anypoint studio在包装选项中显示轮询范围 我发现了类似的问题,但我没有看到详细的解释 提前感谢您的回复。请提供。 根据你的问题,你根本不需要投票。文件连接器已经具有定期检查文件的功能。下面是每0.123

我正在尝试使用带有轮询作用域的mule入站文件连接器,但出现错误,表示无法启动终结点。如果我删除轮询范围并使用带有默认轮询的file connector,并且在没有任何文件路径更改的情况下工作正常

我想知道为什么轮询范围会出现错误?如果不允许将文件入站连接器包装在轮询范围中,为什么anypoint studio在包装选项中显示轮询范围

我发现了类似的问题,但我没有看到详细的解释

提前感谢您的回复。

请提供。 根据你的问题,你根本不需要投票。文件连接器已经具有定期检查文件的功能。下面是每0.123秒轮询一次文件的示例

<file:inbound-endpoint path="/tmp" responseTimeout="10000" doc:name="File" pollingFrequency="123"/>

我的建议是使用文件连接器旁边的石英连接器,并在石英连接器中设置间隔。或者使用具有轮询频率的文件连接器本身,因此无需将文件包装在轮询范围内。

使用mule module requester和轮询调度器

相关职位:

另一种方式是,

设置FTP流initialState=“stopped”,并让轮询计划程序启动该流。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>

您可以在全局元素部分创建一个文件端点,然后使用mule请求程序在轮询范围内调用该端点


Poll scope比简单的文件轮询有更多的选项,例如cron schedule。这就是为什么要使用投票范围的文件连接器,我的问题有你的答案,谢谢回复。