2016-09-09 1 views
0

J'essaie d'utiliser l'API ActiveMQ Artemis Core pour me connecter à ActiveMQ Artemis s'exécutant dans un conteneur docker. J'utilise le code suivant pour tenter la connexion.Connexion au conteneur Artemis Docker d'ActiveMQ avec l'API principale

Map<String,Object> connectionParams = new HashMap<String, Object>(); 
connectionParams.put(TransportConstants.PORT_PROP_NAME, "61616"); 
connectionParams.put(TransportConstants.HOST_PROP_NAME, "localhost"); 


TransportConfiguration tc = new TransportConfiguration(NettyConnectorFactory.class.getName(),connectionParams); 

ServerLocator locator = ActiveMQClient.createServerLocatorWithoutHA(tc); 

ClientSessionFactory queueFactory = locator.createSessionFactory(); 

En cours d'exécution, j'obtiens l'erreur suivante lorsque j'essaie de créer la fabrique de sessions.

ActiveMQNotConnectedException[errorType=NOT_CONNECTED message=AMQ119007: Cannot connect to server(s). Tried with all available servers.]

Il semble que je manque une étape de configuration critique lorsque vous essayez de vous connecter au courtier Artemis ActiveMQ. Y a-t-il un fichier XML que je dois placer quelque part dans mon application client Java ou puis-je définir les paramètres appropriés dans le code?

L'image Docker pour AtiveMQ Artemis J'utilise:

https://github.com/vromero/activemq-artemis-docker

Répondre

1

Peut-être que vous avez oublié d'exposer le port public via -p 61616:61616

+1

Eh oui ... c'est exactement ce qu'il était. Testé en utilisant l'IP Docker et cela a fonctionné, puis fait en sorte de publier le port et il a travaillé avec localhost aussi. – AdnanEK