2017-01-05 13 views
0

で受信コネクタをファイルには、エンドポイントを開始できませんでしたというエラーを得ました。もし私がポーリングスコープを削除し、デフォルトのポーリングとファイルパスを変更せずに正常に動作しているファイルコネクタを使用すると。ミュールは私がポーリングスコープとラバインバウンド・ファイル・コネクターを使用しようとしている世論調査の範囲

私は、なぜ投票スコープがエラーを与えている不思議でしたか?ファイルインバウンドコネクタがポーリングスコープでラップできない場合、なぜラップインオプションでポーリングスコープを表示するスタジオはなぜですか?

私は同様の質問を見つけましたが、私は詳細な説明が表示されませんでした。あなたの応答のための

Mule won't allow POLL message processor to read file using file Inbound?

アドバンスのおかげ。

答えて

0

は、SSCCEを提供してください。 あなたの質問に基づいて、投票はまったく必要ありません。 File Connectorにはすでにファイルを定期的にチェックする機能があります。ここで世論調査が私の提案ごとに0.123秒

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

投票スコープ例のcronスケジュールのために、単純なファイルのポーリングよりも多くのオプションを持っていました。それはポーリングの範囲でファイルコネクタを使用したい理由は、私の質問はあなたの答えを持っていた、返信いただきありがとうございます。 – ssanrao

0

ファイルの例では、ファイルコネクタの横に石英コネクタを使用し、石英コネクタに間隔を設定することです。または、ポーリング頻度を持つファイルコネクタ自体を使用するので、ファイルをポーリング範囲にラップする必要はありません。

0

使用ラバモジュール-リクエスタhttps://github.com/mulesoft/mule-module-requester、一緒にポーリングスケジューラを有します。

関連記事:http://blogs.mulesoft.com/dev/mule-dev/introducing-the-mule-requester-module/

もう一つの方法は、FTPフローは初期状態= "停止" に設定し

で、ポーリングスケジューラはフローを始めましょう。 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> 
0

は、サンプルコードを参照してください。

<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>

関連する問題