我想在变量Activemq
值等于x
时向1
发送确认。如果它不等于1
,我想重新发送消息给{{} 1}}。然后只有Activemq
再次向订阅者发送消息。为此,我编写了以下程序。
MessageConsumer.java:
Activemq
这是正确的方法。你建议我,有没有有效的方法。
感谢。
答案 0 :(得分:2)
理想情况下,您必须:
为您的装订地址创建 ActiveMQConnectionFactory , 创建 RedeliveryPolicy 并将其设置为 ActiveMQConnectionFactory 。 创建会话并使用 session.commit()(如果为true)和 session.rollback()(如果失败)。
这两个链接可能会对您有所帮助:
http://activemq.apache.org/message-redelivery-and-dlq-handling.html
http://activemq.apache.org/redelivery-policy.html
public class Consumer extends HttpServlet {
@Override
protected void service(HttpServletRequest arg0, HttpServletResponse arg1)
throws ServletException, IOException {
try {
...
MessageListener listener = new MessageListener() {
public void onMessage(Message msg) {
....
}
};
....
}
}