3.4. インテグレーションの途中に AMQ メッセージを公開

インテグレーションの途中に Red Hat AMQ ブローカーにメッセージをパブリッシュするには、Red Hat AMQ コネクションをフローの途中に追加します。

前提条件

  • メッセージの公開先となる Red Hat AMQ ブローカーへのコネクションが作成されている。
  • フローを作成または編集することになり、Fuse Online でインテグレーションに追加するよう要求されます。または、Fuse Online で最後のコネクションを選択するよう要求されます。

手順

  1. Add to Integration ページで、コネクションの追加先のプラス記号をクリックします。Fuse Online が最後のコネクションを選択するよう要求する場合は、このステップをスキップします。
  2. フローの途中に追加する Red Hat AMQ コネクションをクリックします。
  3. Choose an action ページで、以下のアクションの 1 つを選択します。

    • Publish messages は指定するキューまたはトピックにメッセージを公開します。このアクションを設定するには、以下を行います。

      1. Destination name フィールドに、メッセージの送信先となるキューまたはトピックの名前を入力します。
      2. Destination type では Queue を許可するか、Topic を選択します。
      3. Persistent を選択し、コネクションが失敗した場合でもメッセージが確実に送信されるようにします。
    • Request response using messages で、応答の受信に指定した JMS 宛先にメッセージを送ります。このアクションを設定するには、以下を行います。

      1. Destination name フィールドに、メッセージの送信先となるキューまたはトピックの名前を入力します。
      2. Destination type では Queue を許可するか、Topic を選択します。
      3. 特定の条件を満たす応答のみを受信する場合は、Message selector フィールドにフィルター式を入力します。

        メッセージセレクターは式が含まれる文字列です。式の構文は、SQL92 条件式構文のサブセットを基にしています。以下の例のメッセージセレクターは、値が Sports または Opinion に設定された NewsType プロパティーがあるメッセージをすべて選択します。

        NewsType = 'Sports' OR NewsType = 'Opinion'

        メッセージコンシューマーは、ヘッダーとプロパティーがメッセージセレクターの式と一致するメッセージのみを受信します。メッセージセレクターは、メッセージのボディー部の内容を基にしてメッセージを選択することはできません。

      4. Named reply to フィールドには、キューまたはトピックの名前を入力します。宛先によって、応答がこのキューまたはトピックに送信されます。
      5. Persistent を選択し、コネクションが失敗した場合でもメッセージが確実に送信されるようにします。
      6. Response time out フィールドには、ランタイム例外を出力する前にこのコネクションが応答メッセージを待つ期間 (ミリ秒単位) を指定します。デフォルトは 5000 ミリ秒 (5 秒) です。
  4. Next をクリックし、アクションの入力タイプを指定してから、アクションの出力タイプを指定します。
  5. データタイプの認識が必要がない場合は、Select Type フィールドに Type specification not required を使用し、Next をクリックします。残りの手順を行う必要はありません。

    ただし、構造化データタイプが推奨されます。たとえば、コネクションの入出力をデータマッパーステップでマップする場合、データタイプを指定する必要があります。データマッパーは、非構造化データのフィールドを表示できません。

    データタイプを指定するには、Select Type フィールドをクリックし、以下の 1 つをスキーマタイプとして選択します。

    • JSON schema は JSON データの構造を記述するドキュメントです。ドキュメントのメディアタイプは application/schema+json です。
    • JSON instance は JSON データが含まれるドキュメントです。ドキュメントのメディアタイプは application/json です。
    • XML schema は XML データの構造を記述するドキュメントです。ドキュメントのファイル拡張子は .xsd です。
    • XML instance は XML データが含まれるドキュメントです。このドキュメントのファイル拡張子は .xml です。
  6. Definition 入力ボックスに、選択したスキーマタイプに準拠する定義を貼り付けます。たとえば、JSON schema を選択した場合は、メディアタイプが application/schema+json の JSON スキーマファイルの内容を貼り付けます。
  7. Data Type Name フィールドにはデータタイプに選択した名前を入力します。たとえば、ベンダーの JSON スキーマを指定する場合は、Vendor をデータタイプ名として指定することができます。

    このタイプを指定するコネクションを使用するインテグレーションを作成または編集するときにこのデータタイプ名が表示されます。Fuse Online では、インテグレーションビジュアライゼーションとデータマッパーにタイプ名が表示されます。

  8. Data Type Description フィールドには、このタイプを区別するのに便利な情報を提供します。データマッパーでこのタイプを処理するステップにカーソルを合わせると、この説明が表示されます。
  9. Next をクリックします。

結果

インテグレーションビジュアライゼーションで追加した場所にコネクションが表示されます。