第2章 エクステンションの参照情報
この章では、Red Hat build of Apache Camel for Quarkus に関するリファレンス情報を提供します。
2.1. AMQP リンクのコピーリンクがクリップボードにコピーされました!
Apache QPid クライアントを使用した AMQP プロトコルによるメッセージング。
2.1.1. 含まれるもの リンクのコピーリンクがクリップボードにコピーされました!
-
AMQP コンポーネント、URI 構文:
amqp:destinationType:destinationName
使用方法と設定の詳細は、上記リンクを参照してください。
2.1.2. Maven コーディネート リンクのコピーリンクがクリップボードにコピーされました!
code.quarkus.redhat.com でこのエクステンションを使用して新しいプロジェクトの作成
または、既存のプロジェクトに座標を追加します。
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-amqp</artifactId>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-amqp</artifactId>
</dependency>
2.1.3. 使用方法 リンクのコピーリンクがクリップボードにコピーされました!
2.1.3.1. org.w3c.dom.Node を使用したメッセージマッピング リンクのコピーリンクがクリップボードにコピーされました!
Camel AMQP コンポーネントは、jakarta.jms.Message および org.apache.camel.Message 間のメッセージマッピングをサポートします。Camel メッセージ本文タイプ org.w3c.dom.Node を変換する場合は、camel-quarkus-xml-jaxp エクステンションがクラスパスに存在することを確認する必要があります。
2.1.3.2. jakarta.jms.ObjectMessage のネイティブモードのサポート リンクのコピーリンクがクリップボードにコピーされました!
JMS メッセージペイロードを jakarta.jms.ObjectMessage として送信する場合、シリアル化のために登録する関連クラスに @RegisterForReflection(serialization = true) でアノテーションを付ける必要があります。このエクステンションは、quarkus.camel.native.reflection.serialization-enabled = true を自動的に設定することに注意してください。詳細は、ネイティブモードのユーザーガイド を参照してください。
2.1.3.3. 接続プール リンクのコピーリンクがクリップボードにコピーされました!
quarkus-pooled-jms エクステンションを使用すると、接続のプーリングサポートを取得できます。詳細は、quarkus-pooled-jms エクステンションドキュメントを参照してください。
以下の依存関係を pom.xml に追加するだけで、接続のプーリングサポートを取得できます。
<dependency>
<groupId>io.quarkiverse.messaginghub</groupId>
<artifactId>quarkus-pooled-jms</artifactId>
</dependency>
<dependency>
<groupId>io.quarkiverse.messaginghub</groupId>
<artifactId>quarkus-pooled-jms</artifactId>
</dependency>
プーリングのサポートを有効にするには、以下の設定を application.properties に追加する必要があります。
quarkus.qpid-jms.wrap=true
quarkus.qpid-jms.wrap=true
2.1.4. ネイティブモードの transferException オプション リンクのコピーリンクがクリップボードにコピーされました!
ネイティブモードで transferException オプションを使用するには、オブジェクトのシリアル化のサポートを有効にする必要があります。詳細は、ネイティブモードのユーザーガイド を参照してください。
また、シリアル化する予定の例外クラスのシリアル化を有効にする必要があります。以下に例を示します。
@RegisterForReflection(targets = { IllegalStateException.class, MyCustomException.class }, serialization = true)
@RegisterForReflection(targets = { IllegalStateException.class, MyCustomException.class }, serialization = true)
2.1.5. 追加の Camel Quarkus 設定 リンクのコピーリンクがクリップボードにコピーされました!
エクステンションは、Quarkus Qpid JMS エクステンションを活用します。ConnectionFactory Bean は自動的に作成され、AMQP コンポーネントに接続されます。接続ファクトリーは、Quarkus Qpid JMS 設定オプション を介して設定できます。