繁体   English   中英

JMS服务器在运行时重新启动后发送的JMS消息

[英]JMS Message Sending After JMS Server Restart During Runtime

我对JMS有问题。 问题是,我有一个应用程序,它正在尝试通过JMS发送消息,但是在JMS服务器重新启动后,当服务器停机时,它将引发异常。 它没有重新连接。

无需重启JMS服务器就可以了,我正在使用weblogic10.x。

关于JMS配置是否有问题?

谢谢

您可以张贴代码如何发送消息吗?

如果您尝试在JMS服务器关闭时发送消息,则可能会有一个异常,必须处理该异常。 当您下次尝试发送消息时,当JMS服务器重新启动并运行时,您可能会从连接工厂创建一个新连接。 然后将发生重新连接:

// Let's say, you inject CF and Dest.
@Resource(lookup = "jms/ConnectionFactory")
private static ConnectionFactory cf;

@Resource(lookup = "jms/MyQueue")
private static Destination dest;

public void sendMessage(){ // called every time you need to send a message.
   try{
     Connection con = cf.createConnection(); // will reconnect, otherwise pooled.
     Session sess = con.createSession(false,Session.AUTO_ACKNOWLEDGE);
     MessageProducer prod = sess.createProducer(dest);
     Message msg = sess.createTextMessage("Hello, World");
     prod.send(msg);
     sess.close();
     con.close();
   }catch(Exception e){
     // handle errors 
   }
}

但是,Weblogic JMS中有一些内置的故障转移/重新连接功能,请看此页面:

有关重新连接JMS生产者的Oracle代码清单和文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM