Glassfish4、web和Java EE JMS
我正在尝试使用Glassfish4作为应用程序服务器的JMS Web应用程序,在执行以下方法时遇到问题Glassfish4、web和Java EE JMS,java,jsf,jms,Java,Jsf,Jms,我正在尝试使用Glassfish4作为应用程序服务器的JMS Web应用程序,在执行以下方法时遇到问题 public void getMessage() { try { JMSConsumer receiver = context.createConsumer(topic); String text = receiver.receiveBody(String.class); if (text != null) { myList.add(text);
public void getMessage() {
try {
JMSConsumer receiver = context.createConsumer(topic);
String text = receiver.receiveBody(String.class);
if (text != null) {
myList.add(text);
} else {
FacesMessage facesMessage =
new FacesMessage("No message received after 1 second");
FacesContext.getCurrentInstance().addMessage(null, facesMessage);
}
} catch (Throwable t) {
logger.log(Level.SEVERE,
"ReceiverBean.receiveMessages: Exception: {0}",
t.toString());
}
}
此方法位于名为ReceiverBean的托管bean中。这个过程是我从托管bean SenderBean向主题发送一条消息,然后加载receiver.xhtml文件,以便从commandLink调用该方法。但是它不会发生任何事情,除非页面一直等待这个方法被解决
我这篇文章的重点是了解如何在JSF Web应用程序中应用此方法
亲切问候,
Jose只是更改消费者,
JMSConsumer receiver=context.createConsumer(主题)
对于共享持久消费者,JMSConsumer receiver=context.createSharedDurableConsumer(主题“MakeItLast”)代码>。这足以解决这个问题。你的问题不清楚。你是说getMessage
不执行吗?