私は EAP 6.4.x (x は現在 8 ですが、6 および 4 などで 6.4.0 まで) で問題なく動作している戦争があります。
WAR には、リモート マシンのキューにメッセージを追加するための単純な JMS クライアント機能がいくつかあります。対象の QBroker は ActiveMQ 5.8.0 です。
私は 5.8.0 RAR を使用してリモート ブローカーへのアダプター/コネクターをセットアップし、通常の JMS クライアントを使用してメッセージを q にプッシュします。これで大丈夫です。
6.4.x から 7.0.1 への「移植」を開始します。私はamq 5.8.0 RARのものに夢中です。手始めに -- EAP 7 の一部である AMQ Artemis のものは (まだ) 使用しません。最初はできるだけ変更を加えずに 7.0 で WAR を動作させたいと考えています。そのため、RAR をそのままにしておくことが重要です。
6.4.x では、スタンドアロン プロファイルを使用し、次のように CLI 経由で RAR をデプロイするだけです。
./jboss-cli.sh --connect -c "deploy --name=${AMQ_DEPLOY_NAME} --runtime-name=${AMQ_RAR_FNAME} ${_TMPDIR}/${AMQ_RAR_FNAME}"
次に、cli を使用してリソース アダプタ、接続定義/ファクトリ、およびキューの管理オブジェクトを設定します。
EAP 7.0.1 と同じプロセスに従って、取得したスタンドアロン プロファイルを使用すると、
java.lang.NoClassDefFoundError: javax/jms/JMSException
RAR を使用する WAR を有効にしようとすると問題が発生します。わかりましたので、standalone-full を使用すると、この種のエラーのあらゆる種類のバリエーションが発生します。
2016-07-18 15:48:10,867 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
("subsystem" => "messaging-activemq"),
("server" => "default")
]) - failure description: {
"WFLYCTL0180: Services with missing/unavailable dependencies" => ["jboss.messaging-activemq.default is missing [jboss.http-upgrade-registry.default]"],
"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {
"Services that were unable to start:" => ["jboss.messaging-activemq.default.jms.manager"],
"Services that may be the cause:" => [
"jboss.http-upgrade-registry.default",
"jboss.naming.context.java.JmsXA"
]
}
}
上記のメッセージは、messaging-activemq のもの (または組み込みの artemis のもの) に問題があることを示しています。
どちらの場合も、EJB デフォルト リソース アダプタを上で作成した RAR に設定します。
では、この設定で何が欠けているのでしょうか?
私の環境に関するいくつかの詳細:
War には jboss/wildfly 固有の DD はありません。
AMQ RAR を静的モジュールとしてデプロイしていません (また、デプロイしたくもありません)。他の JAR (DB ドライバー用) や WARS、EJB jar などのように、デプロイしたのは単なる jar です。
cat version.txt Red Hat JBoss Enterprise Application Platform - バージョン 7.0.1.GA
java -version java バージョン "1.8.0_92" Java(TM) SE ランタイム環境 (ビルド 1.8.0_92-b14) Java HotSpot(TM) 64 ビット サーバー VM (ビルド 25.92-b14、混合モード)
uname -a Linux wellandf3 4.6.4-301.fc24.x86_64 #1 SMP Tue Jul 12 11:50:00 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux