メイン コンテンツをスキップする 補完的コンテンツへスキップ

コンポーネントと接続を設定

手順

  1. Sourceという名前のcFileコンポーネントをダブルクリックし、[Component] (コンポーネント)タブで[Basic settings] (基本設定)ビューを開きます。
  2. [Path] (パス)フィールドでメッセージソースへのファイルパスを指定します。
    [Encoding] (エンコーディング)リストからソースファイルのエンコーディングタイプを選択し、その他すべてのパラメーターはそのままにします。
  3. Deduplicatorという名前のcIdempotentComsumerコンポーネントをダブルクリックして、[Component] (コンポーネント)タブで[Basic settings] (基本設定)ビューを開きます。
  4. [Repository Type] (リポジトリータイプ)リストから[Memory] (メモリ)[File] (ファイル)のどちらかを選択して、重複除去処理の前にメッセージ識別子の保管場所を指定します。このシナリオでは[File] (ファイル)を選択します。
    [File store] (ファイル保存先)フィールドで、メッセージ識別子を保管するファイルのロケーションを指定します。
    [Expression] (式)フィールドに、メッセージをフィルタリングする式を入力します。このシナリオでは、次の式を入力して、XMLファイルのpersonノードに従ってメッセージをフィルタリングします: xpath("/people/person")。その他すべてのパラメーターはそのままにします。または、[Use language] (言語の使用)チェックボックスをオンにし、[Language] (言語)リストからXPathを選択し、[Predicate] (述語)フィールドに"/people/person"と入力します。
  5. Uniqueという名前のcProcessorコンポーネントをダブルクリックし、[Component] (コンポーネント)タブで[Basic settings] (基本設定)ビューを開きます。
  6. [Code] (コード)エリアでコードをカスタマイズして、重複除去を渡すメッセージのファイル名を表示します。
    System.out.println("Message consumed on Unique: "+
    exchange.getIn().getHeader("CamelFileName"));
  7. これらのステップを繰り返して、Allという名前のその他のcProcessorコンポーネントを設定し、ソースから送信されるすべてのメッセージのファイル名を表示します。
    System.out.println("Message consumed on All: "+
    exchange.getIn().getHeader("CamelFileName"));
  8. [Ctrl] + [S]を押してジョブを保存します。

このページは役に立ちましたか?

このページまたはコンテンツに、タイポ、ステップの省略、技術的エラーなどの問題が見つかった場合は、お知らせください。改善に役立たせていただきます。