Configuré una cola configurándola en activemq.xml (ActiveMQ versión 5.2.0) como se describe en documentation.ActiveMQ: Problema con la búsqueda en cola
<destinations>
<queue physicalName="FOO.BAR" />
<queue physicalName="DUMMY" />
</destinations>
Estoy tratando de acceder a él desde Java (en el mismo host) con el siguiente código:
Hashtable properties = new Hashtable();
properties.put(Context.INITIAL_CONTEXT_FACTORY,
"org.apache.activemq.jndi.ActiveMQInitialContextFactory");
properties.put(Context.PROVIDER_URL, "tcp://localhost:61616");
context = new InitialContext(properties);
factory = (ConnectionFactory) context.lookup("ConnectionFactory");
connection = factory.createConnection();
session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
queueName = "DUMMY"; // which can be either FOO.BAR or DUMMY
dest = (Destination) context.lookup(queueName);
estoy receveing el siguiente error, aunque la cola es visible en jconsole (Tree/org.apache.activemq/Queue):
javax.naming.NameNotFoundException: DUMMY
Por favor, dime qué estoy haciendo mal. ¡Muchas muchas gracias!
Gracias por explicar que existe una diferencia entre crear un tema/cola y asignarlo a un contexto JNDI. Sospecho que un problema de conexión de cola/tema que estamos tratando de resolver tiene sus raíces en el supuesto de que la creación == registro JNDI. –