2017-06-28 3 views
1

Ich habe einen Microservice in JavaEE mit JMS-Protokoll für Messaging. Ich versuche, ein UberJar mit WildFly Swarm über eine Remoteverbindung zu erstellen (in diesem Fall habe ich einen Andockcontainer mit einer ActiveMq-Instanz, die ausgeführt wird).WildFly Swarm und ActiveMq (Erforderliche Dienste, die nicht installiert sind)

In der Dokumentation (https://wildfly-swarm.gitbooks.io/wildfly-swarm-users-guide/content/common/messaging.html) gibt es keine Konfiguration für den Benutzernamen und das Passwort. Wusstest du, wo du diese Informationen ablegen kannst?

Ausführen der uberJar erzeugt, ich habe die folgende Fehlermeldung:

2017-06-28 10:49:26,630 ERROR [org.jboss.as.controller.management-operation] (main) WFLYCTL0013: Operation ("add") failed - address: (("deployment" => "srcrr-batcher.war")) - failure description: { 
    "WFLYCTL0412: Required services that are not installed:" => ["jboss.naming.context.java.module.srcrr-batcher.srcrr-batcher.env.jms.\"error.inbox\""], 
    "WFLYCTL0180: Services with missing/unavailable dependencies" => ["jboss.naming.context.java.module.srcrr-batcher.srcrr-batcher.env.\"com.magento.mcom.sorcerer.jms.AbstractReceiverBean\".errorQueue is missing [jboss.naming.context.java.module.srcrr-batcher.srcrr-batcher.env.jms.\"error.inbox\"]"] 
} 
2017-06-28 10:49:26,631 ERROR [org.jboss.as.server] (main) WFLYSRV0021: Deploy of deployment "srcrr-batcher.war" was rolled back with the following failure message: 
{ 
    "WFLYCTL0412: Required services that are not installed:" => ["jboss.naming.context.java.module.srcrr-batcher.srcrr-batcher.env.jms.\"error.inbox\""], 
    "WFLYCTL0180: Services with missing/unavailable dependencies" => ["jboss.naming.context.java.module.srcrr-batcher.srcrr-batcher.env.\"com.magento.mcom.sorcerer.jms.AbstractReceiverBean\".errorQueue is missing [jboss.naming.context.java.module.srcrr-batcher.srcrr-batcher.env.jms.\"error.inbox\"]"] 
} 

Ich verstehe nicht ganz, was die Abhängigkeit fehlt, wäre jede Hilfe dankbar.

Vielen Dank!

Antwort

2

Diese Dienste übersetzen grob mechanisch mit JNDI Namen:

jboss.naming.context.java.module.srcrr-batcher.srcrr/batcher.env.jms.\"error.inbox\"": 

java:module/srcrr-batcher/srccrr-batcher/env/jms/error.inbox 

Die duplizierte "srcrr-Dosierer" neugierig ist.

Wenn Sie einen vollständigen Serverbericht schreiben könnten, möglicherweise mit -Dswarm.logging = DEBUG, könnte das helfen, festzustellen, was los ist.

Zusätzlich stellt die Referenzführung einen viele von Konfigurationsoptionen für Ihre YAML Konfiguration:

https://reference.wildfly-swarm.io/fractions/messaging.html

2

Schließlich fand ich das Problem, ich hatte die Anmerkung falsch in der Verbindungs-Factory:

Anstelle

@Resource(lookup = "jms/error.inbox") 

Ich verwende

@Resource(name = "jms/error.inbox") 

Vielen Dank für Ihre Hilfe!

+0

das ist ein problem, das ich mit schwarm sehe, jndi lookup api verwendung ist anders. Danke für den Hinweis. –

+0

Deshalb liebe ich SO so sehr, rettete mir ziemlich Kopfschmerzen und stundenlanges Suchen :) Danke @Virge – Gregor

0

Sorry, ich bin spät angekommen :) Schön, dass du es gefunden hast und danke, dass du Wildfly Swarm benutzt hast.

Verwandte Themen