- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我尝试创建 JMS session 时,出现上述错误。请提出建议。使用的 JMS 服务器是 TIBCO。我在类路径中有 tibjms.jar 和 jms.1.1 jar。我能够创建连接。 spring-jms版本为4.1.4-Release版本。
String reply = null;
QueueConnection connection = null;
QueueSession requestSession = null;
QueueSession replySession = null;
QueueReceiver receiver = null;
TemporaryQueue replyQueue = null;
try {
connection = (QueueConnection)jmsTemplate.createConnection();
connection.start();
requestSession = (QueueSession) jmsTemplate.createSession(connection);
replySession = (QueueSession) jmsTemplate.createSession(connection);
Queue queue = (Queue)jmsTemplate.getDestination(requestSession, jmsTemplate.getDefaultDestinationName());
replyQueue = replySession.createTemporaryQueue();
TextMessage requestMessage = requestSession.createTextMessage(message);
requestMessage.setJMSReplyTo(replyQueue);
LOGGER.debug("sending request/reply message "
+ jmsTemplate.getConnectionFactory()
+ requestMessage);
QueueSender queueSender = requestSession.createSender(queue);
queueSender.send(requestMessage);
receiver = replySession.createReceiver(replyQueue);
TextMessage replyMessage = (TextMessage)receiver.receive(jmsTemplate.getReceiveTimeout());
if(replyMessage != null){
reply = replyMessage.getText();
}
}catch(JMSException ex) {
最佳答案
是什么导致你创造出这种令人厌恶的东西?使用 JmsTemplate
和 JmsMessagingTemplate
相反。
用此替换您的代码
JmsMessagingTemplate jms = new JmsMessagingTemplate(jmsTemplate);
String reply = jms.convertSendAndReceive(message, String.class);
或者,如果您想使用普通的 JmsTemplate
,请使用 sendAndReceive
方法,缺点是您需要自己处理消息创建和转换。
Message response = jmsTemplate.sendAndReceive(new MessageCreator() {
public Message createMessage(Session session) throws JMSException {
return session.createTextMessage(message);
}
});
String reply = ((TextMessage) replyMessage).getText();
无论哪种方式,一切都会为您处理。您正在使用 Spring,那么您也可以从中受益。
关于java.lang.ClassCastException : com. tibco.tibjms.TibjmsxSessionImp 无法转换为 javax.jms.QueueSession,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32651583/
我有一个关于如何在 tibjms 8.3 客户端中实现 TLSv1.2 的问题?在 tibems 8.3 发行说明中说支持 TLSv1.2。但我不知道如何在tibjms客户端中设置? (我正在使用)
我使用 Tibjms jar 进行 JMS 连接,在正常情况下工作正常,但如果与 jms 提供程序的连接丢失然后又恢复,我会遇到问题。为了重现该问题,我执行了以下步骤 - 连接到 Intranet 并
我的应用程序正在使用发布到主题的消息。我有 3 台运行我的应用程序代码的服务器。在当前的实现中,消息被分发到所有正在运行的虚拟机,即每个消费者都会收到消息的副本。 我的要求是每个消费者都应该收到不同的
当我尝试创建 JMS session 时,出现上述错误。请提出建议。使用的 JMS 服务器是 TIBCO。我在类路径中有 tibjms.jar 和 jms.1.1 jar。我能够创建连接。 sprin
我在尝试查找 JNDI 上下文时遇到以下异常,尽管此站点上已经回答了类似的问题,将类路径中缺少的 tibjms.jar 引用为根原因。 java.lang.ClassCastException: co
我是一名优秀的程序员,十分优秀!