Я пытаюсь создать проект клиента приложения Java, который отправляет сообщение JMS в очередь на сервере Glassfish.
Проблема в том, что после того, как приложение отправляет сообщение, оно зависает, когда оно должно выйти. Сообщение передается успешно, но по какой-то причине приложение не закрывается. Я попытался отладить приложение и могу пройти его до конца static void main
, и вот где оно зависает.
Вот код:
import javax.jms.*;
import javax.naming.InitialContext;
public class Main {
public void SendMessage() throws Exception {
InitialContext ctx = new InitialContext();
ConnectionFactory cf = (ConnectionFactory) ctx.lookup("jms/TestFactory");
Queue queue = (Queue)ctx.lookup("jms/TestQueue");
Connection conn = cf.createConnection();
Session s = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
MessageProducer prod = s.createProducer(queue);
TextMessage txt = s.createTextMessage("testing");
prod.send(txt);
prod.close();
s.close();
conn.close();
}
public static void main(String[] args) throws Exception {
Main m = new Main();
m.SendMessage();
}
public Main() {
super();
}
}
Как мне заставить его перестать висеть?