3 votes

Comment se connecter de manière programmatique à un serveur HornetQ embarqué ?

Je fais tourner un serveur HornetQ embarqué sur un conteneur OSGI en suivant un exemple pour HornetQ Core embarqué.

J'ai trois conteneurs OSGI : un pour le serveur, un pour un producteur et un dernier pour un consommateur. Tout fonctionne en local.

Le code que j'utilise à la fois dans le producteur et le consommateur pour se connecter au serveur est le suivant :

// Step 4. As we are not using a JNDI environment we instantiate the objects directly
ServerLocator serverLocator = HornetQClient.createServerLocatorWithoutHA(new TransportConfiguration(NettyConnectorFactory.class.getName()));
ClientSessionFactory sf = serverLocator.createSessionFactory();

J'ai essayé de consulter le TransportConfiguration mais aucun filtre n'a été trouvé.

2voto

Clebert Points 3918

Vous devez transmettre des paramètres à la configuration du transport :

Map<String, Object> parameters = new HashMap<String, Object>();
parameters.put("port", org.hornetq.core.remoting.impl.netty.TransportConstants
                      .DEFAULT_PORT);
parameters.put(TransportConstants.HOST_PROP_NAME, "127.0.0.1");

TransportConfiguration configuration = new TransportConfiguration(
        NettyConnectorFactory.class.getName(), parameters);

Remarquez que vous avez / pourriez faire la même chose à la NettyAcceptor . Je ne sais pas exactement comment vous configurez les accepteurs lors de votre test, mais j'espère que vous comprenez l'idée.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X