3.4. インテグレーションの途中に AMQ メッセージを公開
インテグレーションの途中に Red Hat AMQ ブローカーにメッセージをパブリッシュするには、Red Hat AMQ コネクションをフローの途中に追加します。
前提条件
- メッセージの公開先となる Red Hat AMQ ブローカーへのコネクションが作成されている。
- フローを作成または編集することになり、Fuse Online でインテグレーションに追加するよう要求されます。または、Fuse Online で最後のコネクションを選択するよう要求されます。
手順
- Add to Integration ページで、コネクションの追加先のプラス記号をクリックします。Fuse Online が最後のコネクションを選択するよう要求する場合は、このステップをスキップします。
- フローの途中に追加する Red Hat AMQ コネクションをクリックします。
Choose an action ページで、以下のアクションの 1 つを選択します。
Publish messages は指定するキューまたはトピックにメッセージを公開します。このアクションを設定するには、以下を行います。
- Destination name フィールドに、メッセージの送信先となるキューまたはトピックの名前を入力します。
- Destination type では Queue を許可するか、Topic を選択します。
- Persistent を選択し、コネクションが失敗した場合でもメッセージが確実に送信されるようにします。
Request response using messages で、応答の受信に指定した JMS 宛先にメッセージを送ります。このアクションを設定するには、以下を行います。
- Destination name フィールドに、メッセージの送信先となるキューまたはトピックの名前を入力します。
- Destination type では Queue を許可するか、Topic を選択します。
特定の条件を満たす応答のみを受信する場合は、Message selector フィールドにフィルター式を入力します。
メッセージセレクターは式が含まれる文字列です。式の構文は、SQL92 条件式構文のサブセットを基にしています。以下の例のメッセージセレクターは、値が
Sports
またはOpinion
に設定されたNewsType
プロパティーがあるメッセージをすべて選択します。NewsType = 'Sports' OR NewsType = 'Opinion'
メッセージコンシューマーは、ヘッダーとプロパティーがメッセージセレクターの式と一致するメッセージのみを受信します。メッセージセレクターは、メッセージのボディー部の内容を基にしてメッセージを選択することはできません。
- Named reply to フィールドには、キューまたはトピックの名前を入力します。宛先によって、応答がこのキューまたはトピックに送信されます。
- Persistent を選択し、コネクションが失敗した場合でもメッセージが確実に送信されるようにします。
- Response time out フィールドには、ランタイム例外を出力する前にこのコネクションが応答メッセージを待つ期間 (ミリ秒単位) を指定します。デフォルトは 5000 ミリ秒 (5 秒) です。
- Next をクリックし、アクションの入力タイプを指定してから、アクションの出力タイプを指定します。
データタイプの認識が必要がない場合は、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
です。
-
JSON schema は JSON データの構造を記述するドキュメントです。ドキュメントのメディアタイプは
-
Definition 入力ボックスに、選択したスキーマタイプに準拠する定義を貼り付けます。たとえば、JSON schema を選択した場合は、メディアタイプが
application/schema+json
の JSON スキーマファイルの内容を貼り付けます。 Data Type Name フィールドにはデータタイプに選択した名前を入力します。たとえば、ベンダーの JSON スキーマを指定する場合は、
Vendor
をデータタイプ名として指定することができます。このタイプを指定するコネクションを使用するインテグレーションを作成または編集するときにこのデータタイプ名が表示されます。Fuse Online では、インテグレーションビジュアライゼーションとデータマッパーにタイプ名が表示されます。
- Data Type Description フィールドには、このタイプを区別するのに便利な情報を提供します。データマッパーでこのタイプを処理するステップにカーソルを合わせると、この説明が表示されます。
- Next をクリックします。
結果
インテグレーションビジュアライゼーションで追加した場所にコネクションが表示されます。