我发生的事情是MDB接收消息并尝试处理它们甚至我的服务器还没有完全启动
任何想法如何解决这个问题?
答案 0 :(得分:0)
您可以通过以下两种技术之一找出您的服务器启动是否已完成:
一旦您决定了解服务器启动状态的选项,您需要在MDB的postconstruct方法中检查它,并且仅在服务器启动时继续。
@MessageDriven(...)
public class MyMdb implements MessageListener {
@PostConstruct
public void init() {
// check if server has started here
//if server is not started, sleep and re-check again.
}
public void onMessage(Message message) {
}
}