2016-07-21 23 views
0

Ich habe einen Krieg, der gerade gut unter EAP 6.4.x funktioniert (x derzeit 8, aber auch unter 6 und 4 und so weiter bis 6.4.0).JBOSS EAP 7.0 mit ActiveMQ RAR funktioniert nicht?

Der WAR verfügt über einige einfache JMS-Clientfunktionen zum Hinzufügen einer Nachricht zu einer Warteschlange auf einem Remotecomputer. Der Ziel-QBroker ist ActiveMQ 5.8.0.

Ich benutze die 5.8.0 RAR, um einen Adapter/Connector zu dem fernen Broker und dann nur normale JMS-Client Zeug, um eine Nachricht in eine q zu schieben. Alles ist in Ordnung.

Beginn der "Port" von 6.4.x zu 7.0.1; und ich bin auf dem Amq 5.8.0 RAR-Zeug aufgehängt. Für den Anfang - keine der AMQ Artemis Sachen, die Teil von EAP 7 (noch) ist, zu verwenden. Zunächst möchte ich, dass meine WAR-Version unter 7.0 mit so wenig Änderungen wie möglich funktioniert - es ist also wichtig, RAR an Ort und Stelle zu lassen.

Unter 6.4.x, verwende ich das eigenständige Profil und implementieren nur das RAR via CLI ein bisschen wie folgt aus:

./jboss-cli.sh --connect -c "deploy --name=${AMQ_DEPLOY_NAME} --runtime-name=${AMQ_RAR_FNAME} ${_TMPDIR}/${AMQ_RAR_FNAME}" 

ich dann verwenden cli Resource Adapter einzurichten, Anschluss def/Fabrik und admin-Objekt für die Warteschlange.

Nach dem gleichen Verfahren mit EAP 7.0.1, wenn ich das eigenständigen Profil verwenden bekomme ich

java.lang.NoClassDefFoundError: javax/jms/JMSException 

Probleme bei dem Versuch, den Krieg zu ermöglichen, die die RAR verwendet. Ok, so, wenn ich Standalone-voll genutzt bekomme ich alle möglichen Variationen dieser Art von Fehler:

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" 
     ] 
    } 
} 

Die obigen Meldungen deuten darauf hin, etwas mit dem Messaging-activemq Sachen falsch ist (oder das in artemis Sachen gebaut).

In beiden Fällen setze ich meinen EJB-Standardressourcenadapter auf die oben erstellte RAR.

Also was fehlt mir bei dieser Einrichtung?

Einige Angaben über meine Umwelt:

Krieg hat keine Jboss/Wildfly spezifische DDs in ihm.

Ich habe nicht die AMQ RAR als statisches Modul bereitgestellt (noch will ich) - es ist nur ein Glas, das ich eingesetzt habe - wie andere JAR (für DB-Treiber) oder WARS, EJB Gläser usw.

Katze version.txt Red Hat JBoss Enterprise Application Platform - Version 7.0.1.GA

java -version java version "1.8.0_92" Java (TM) SE Runtime Environment (build 1.8.0_92 -b14) Java HotSpot (TM) 64-Bit-Server-VM (Build 25.92-b14, gemischter Modus)

uname -a Linux wellandf3 4.6.4-301.fc24.x86_64 # 1 SMP Di 12. Juli 11.50.00 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Antwort

0

Ist das NoClassDefFoundError durch eine ClassNotFoundException verursacht? Wenn das der Fall ist, würde ich versuchen, javax.jms.api als globales Modul hinzuzufügen.