2011-12-16 10 views
7

Desidero provare a comprendere come funziona JMS. Sto seguendo un tutorial e ho creato le classi java Producer/Consumer ma non sono sicuro di come creare la coda JMS. Ho scaricato jboss-as-web-7.0.2.Final che credo abbia HornetQ. Non ho avuto da nessuna parte fino a quando non riesco a capire come aggiungere una coda.Aggiunta di una coda JMS a Jboss 7

In base al documento https://docs.jboss.org/author/display/AS7/Messaging+configuration, è possibile aggiungere una coda utilizzando il comando add-jms-queue. L'ho provato ma genera un errore.

[[email protected]:9999 /] add-jms-queue --name=sampleQueue --entries=queue/sampleQueue 

The command is not available in the current context (e.g. required subsystems or connection to the controller might be unavailable). 

Non riesco a trovare un'opzione per aggiungere la coda tramite la console di amministrazione sulla GUI.

Qualche idea?

Grazie

risposta

5

Se si dispone di JBoss 7 web (Java EE6 Certified), Esso non contiene implementazione JMS (HornetQ), in quanto non è stato ancora approvato. JBoss 7 Everything (NON certificato Java EE6) contiene l'implementazione JMS.

+0

ah questo è interessante. Ho scaricato la versione certificata Java EE6. Ciò significa che HornetQ potrebbe non essere il provider JMS per Jboss 7? – ziggy

+0

Non ho quel tipo di informazione. Penso che si tratti più di un processo di certificazione che deve essere fatto prima che possa essere etichettato come implementazione delle specifiche Java EE 6. – viktor

+0

Grazie ho scaricato "Jboss Everything" e ora sta funzionando – ziggy

4

Per le altre persone che hanno lo stesso messaggio durante l'utilizzo di JBoss 7.1.x:

si dovrebbe aggiungere il nel file standalone/configurazione/standalone.xml un nuovo sottosistema per JMS (xmlns < sottosistema = "urn: jboss: domain: messaging: 1.1 ">). È possibile esaminare il file standalone/configuration/standalone-full.xml per quel sottosistema o utilizzare semplicemente standalone-full.xml.

E si dovrebbe utilizzare il seguente comando:

JMS-coda aggiungere --queue-address = MyQueue --entries = coda/MyQueue, java:/jms/frontend/MyQueue

EDIT :

Su wildfly è necessario può essere anche di aggiungere

<server xmlns="urn:jboss:domain:3.0"> 
    <extensions> 
     ... 
     <extension module="org.jboss.as.messaging"/> 
    </extensions> 
</server> 
0

anche se le configurazioni JMS sono ora in versione standalone-full.xml, possiamo configurare standalone.xml per ottenere il supporto della coda JMS. È possibile seguire i passaggi indicati in CONFIGURE A JMS QUEUE IN STANDALONE.XML OF JBOSS AS7 . Dopo averlo configurato, puoi avviare il server JBoss con configurazioni standalone.xml.