我需要动态创建临时队列。这怎么可能?
最佳答案
从您的 jms Queue/TopicSession 对象:参见 QueueSession javadoc .
您需要在临时队列的生命周期内保持 session 打开。
典型用法是客户端打开 session 并将消息放入共享处理队列中,使用消息的回复字段中的临时队列。例如:(伪代码)
Queue queue = session.createQueue("shared");
Queue responseQueue = session.createTemporaryQueue();
Message message = session.createMessage();
message.setJMSReplyTo(responseQueue);
...
session.commit();
...
MessageConsumer responseConsumer = session.createConsumer(responseQueue);
Message response = responseConsumer.receive();
...
session.close();
MDB(或读取共享进程队列的监听器)会将响应发送回回复队列。如果客户端因任何原因死亡,其 session 将关闭并且队列不再存在。
关于java - 如何用jboss创建临时jms队列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1577558/