20.6. 設定
20.6.1. JMS サーバーの設定
EAP_HOME/domain/configuration/domain.xml ファイル、またはスタンドアロンの EAP_HOME/standalone/configuration/standalone-full.xml ファイルに含まれています。
<subsystem xmlns="urn:jboss:domain:messaging:1.4"> 要素には、すべての JMS 設定が含まれています。JNDI に必要な JMS の ConnectionFactory、Queue、または Topic インスタンスを追加します。
JBoss EAP 6 で JMS サブシステムを有効にします。
<extensions>要素内に以下の行が存在し、コメントアウトされていないことを確認します。<extension module="org.jboss.as.messaging"/>
基本の JMS サブシステムを追加します。
メッセージングサブシステムが設定ファイルに存在しない場合は、追加します。- 使用するプロファイルに該当する
<profile>を探し、<subsystems>タグを見つけます。 <profile>タグのすぐ後に以下の XML を追加します。<subsystem xmlns="urn:jboss:domain:messaging:1.4"> <hornetq-server> <!-- ALL XML CONFIGURATION IS ADDED HERE --> </hornetq-server> </subsystem>その他の設定はすべて、その上の空いている行に追加します。
JMS の基本設定を追加します。
<subsystem xmlns="urn:jboss:domain:messaging:1.4"><hornetq-server>タグの後の空行に以下の XML を追加します。<journal-min-files>2</journal-min-files> <journal-type>NIO</journal-type> <persistence-enabled>true</persistence-enabled>
要件に合わせて上記の値を変更します。警告
journal-file-sizeの値がmin-large-message-sizeの値 (デフォルトでは 100KiB) 以上でないと、サーバーはメッセージを保存できません。HornetQ に接続ファクトリーインスタンスを追加します。
クライアントは、JMSConnectionFactoryオブジェクトを使い、サーバーへの接続を確立します。JMS 接続ファクトリーオブジェクトを HornetQ に追加するには、次のように接続ファクトリごとに、単一の<jms-connection-factories>タグと<connection-factory>要素が含まれるようにします。<jms-connection-factories> <connection-factory name="InVmConnectionFactory"> <connectors> <connector-ref connector-name="in-vm"/> </connectors> <entries> <entry name="java:/ConnectionFactory"/> </entries> </connection-factory> <connection-factory name="RemoteConnectionFactory"> <connectors> <connector-ref connector-name="netty"/> </connectors> <entries> <entry name="java:jboss/exported/jms/RemoteConnectionFactory"/> </entries> </connection-factory> <pooled-connection-factory name="hornetq-ra"> <transaction mode="xa"/> <connectors> <connector-ref connector-name="in-vm"/> </connectors> <entries> <entry name="java:/JmsXA"/> </entries> </pooled-connection-factory> </jms-connection-factories>nettyコネクターおよびアクセプターを設定します。この JMS 接続ファクトリーはnettyアクセプターおよびコネクターを使用します。これらは、サーバー設定ファイルにデプロイされたコネクターおよびアクセプターオブジェクトへの参照です。コネクターオブジェクトは、HornetQ サーバーへ接続するために使用されるトランスポートとパラメーターを定義します。アクセプターオブジェクトは HornetQ サーバーによって許可される接続のタイプを識別します。nettyコネクターを設定するには、以下の設定が含まれるようにします。<connectors> <netty-connector name="netty" socket-binding="messaging"/> <netty-connector name="netty-throughput" socket-binding="messaging-throughput"> <param key="batch-delay" value="50"/> </netty-connector> <in-vm-connector name="in-vm" server-id="0"/> </connectors>nettyアクセプターを設定するには、以下の設定が含まれるようにします。<acceptors> <netty-acceptor name="netty" socket-binding="messaging"/> <netty-acceptor name="netty-throughput" socket-binding="messaging-throughput"> <param key="batch-delay" value="50"/> <param key="direct-deliver" value="false"/> </netty-acceptor> <in-vm-acceptor name="in-vm" server-id="0"/> </acceptors>設定を確認します。
これまでの手順に従った場合、メッセージサブシステムは以下のようになるはずです。<subsystem xmlns="urn:jboss:domain:messaging:1.4"> <hornetq-server> <journal-min-files>2</journal-min-files> <journal-type>NIO</journal-type> <persistence-enabled>true</persistence-enabled> <jms-connection-factories> <connection-factory name="InVmConnectionFactory"> <connectors> <connector-ref connector-name="in-vm"/> </connectors> <entries> <entry name="java:/ConnectionFactory"/> </entries> </connection-factory> <connection-factory name="RemoteConnectionFactory"> <connectors> <connector-ref connector-name="netty"/> </connectors> <entries> <entry name="java:jboss/exported/jms/RemoteConnectionFactory"/> </entries> </connection-factory> <pooled-connection-factory name="hornetq-ra"> <transaction mode="xa"/> <connectors> <connector-ref connector-name="in-vm"/> </connectors> <entries> <entry name="java:/JmsXA"/> </entries> </pooled-connection-factory> </jms-connection-factories> <connectors> <netty-connector name="netty" socket-binding="messaging"/> <netty-connector name="netty-throughput" socket-binding="messaging-throughput"> <param key="batch-delay" value="50"/> </netty-connector> <in-vm-connector name="in-vm" server-id="0"/> </connectors> <acceptors> <netty-acceptor name="netty" socket-binding="messaging"/> <netty-acceptor name="netty-throughput" socket-binding="messaging-throughput"> <param key="batch-delay" value="50"/> <param key="direct-deliver" value="false"/> </netty-acceptor> <in-vm-acceptor name="in-vm" server-id="0"/> </acceptors> </hornetq-server> </subsystem>ソケットバインディンググループを設定します。
Netty コネクターは、messagingおよびmessaging-throughputソケットバインディングを参照します。messagingソケットバインディングは、ポート 5445 を使用し、messaging-throughputソケットバインディングはポート 5455 を使用します。<socket-binding-group>タグはサーバー設定ファイルの別のセクションにあります。以下のソケットバインディングが<socket-binding-groups>要素に存在するようにしてください。<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}"> ... <socket-binding name="messaging" port="5445"/> <socket-binding name="messaging-throughput" port="5455"/> ... </socket-binding-group>キューインスタンスを HornetQ への追加します。
HornetQ 向けにキューインスタンス (または JMS 宛先) を設定する方法は 4 つあります。- 管理コンソールの使用管理コンソールを使用するには、サーバーを
Message-Enabledモードで起動する必要があります。これには、-cオプションを使用し、standalone-full.xml(スタンドアロンサーバー向け) 設定ファイルの使用を強制します。たとえば、スタンドアロンモードでは以下を使用するとサーバーをメッセージ有効モードで起動できます。./standalone.sh -c standalone-full.xml
サーバーが起動したら、管理コンソールにログインし、 タブを選択します。 メニューを展開した後、 メニューを展開し、 をクリックします。JMS Messaging Provider テーブルの Default の横にある をクリックし、 をクリックして JMS 宛先の詳細を入力します。 - 管理 CLI の使用:最初に、管理 CLI へ接続します。
bin/jboss-cli.sh --connect
次に、メッセージングサブシステムに移動します。cd /subsystem=messaging/hornetq-server=default
最後に、add 操作を実行します。以下の例の値は独自の値に置き換えてください。./jms-queue=testQueue:add(durable=false,entries=["java:jboss/exported/jms/queue/test"])
- JMS 設定ファイルの作成および deployments フォルダーへの追加最初に、JMS 設定ファイル example-jms.xml を作成します。以下のエントリーを追加し、値は独自の値に置き換えます。
<?xml version="1.0" encoding="UTF-8"?> <messaging-deployment xmlns="urn:jboss:messaging-deployment:1.0"> <hornetq-server> <jms-destinations> <jms-queue name="testQueue"> <entry name="queue/test"/> <entry name="java:jboss/exported/jms/queue/test"/> </jms-queue> <jms-topic name="testTopic"> <entry name="topic/test"/> <entry name="java:jboss/exported/jms/topic/test"/> </jms-topic> </jms-destinations> </hornetq-server> </messaging-deployment>このファイルを deployments フォルダーに保存し、デプロイメントを実行します。 - JBoss EAP 6 の設定ファイルにエントリーを追加します。standalone-full.xml を例として使用し、このファイルでメッセージングサブシステムを見つけます。
<subsystem xmlns="urn:jboss:domain:messaging:1.4">
再度、以下のエントリーを追加し、例の値は独自の値に置き換えます。これらのエントリーは </jms-connection-factories> 終了タグと </hornetq-server> 要素の間に追加する必要があります。<jms-destinations> <jms-queue name="testQueue"> <entry name="queue/test"/> <entry name="java:jboss/exported/jms/queue/test"/> </jms-queue> <jms-topic name="testTopic"> <entry name="topic/test"/> <entry name="java:jboss/exported/jms/topic/test"/> </jms-topic> </jms-destinations>
追加の設定を実行します。
追加の設定が必要な場合はEAP_HOME/docs/schema/jboss-as-messaging_1_4.xsdDTD を確認します。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.