jjzjj

MessageConsumer

全部标签

java - MessageConsumer 不消费消息

我的应用程序在Jboss7.1.1上运行。我有一个每分钟运行一次的调度程序,需要检查DLQ中是否有消息并在数据库中进行一些更新。我编写了一个消息消费者来监听预定义的自定义DLQ。问题是我可以看到自定义DLQ中有消息,但consumer.receiveNoWait()总是返回null。下面是创建消费者的代码:/*thisisrunningfineandcreatingtheconsumer*/publicDestinationHandlerImpl(ConnectionFactoryconnectionFactory,Destinationdestination,booleanuseTr

java - JMS MessageConsumer 的 messageListener 是推还是拉?

当我在我的队列MessageConsumer对象上设置一个messageListener时,到底发生了什么。MessageConsumer对象是否在后台进行某种轮询,或者这是JMS服务器进行的真正推送?Java消息服务(O'ReillyJava系列),DavidA.Chappell、RichardMonson-Haefel和MarkRichards,p10第1章:点对点点对点消息传递模型传统上是基于拉取或基于轮询的模型,其中从队列中请求消息而不是自动推送到客户端http://docs.oracle.com/javaee/1.4/tutorial/doc/JMS4.html#wp7917

javax.jms.MessageConsumer 在消费者关闭时挂起接收

根据javadoc,如果我在javax.jms.MessageConsumer上调用receive(),它将无限期阻塞,直到生成消息或直到消息使用者关闭。我有一个正在调用receive()的线程。作为线程关闭的一部分,我正在调用close(),但消费者仍然阻塞在receive()中,因此线程不会关闭。我的代码的要点是:publicStringreceiveMessage(){......System.out.println("Abouttoreceive")TextMessagemessage=(TextMessage)consumer.receive();System.out.pri

c++ - 哪个更好 : Function overriding or passing a function pointer for event handling

因此,我正在为一个类编写代码,该类将进入一个供其他人使用的库。此类将拦截和处理传入的消息(细节并不重要,但它使用activemq-cpp库)。这个消费类的轮廓是classMessageConsumer{...public:voidrunConsumer();virtualvoidonMessage(constMessage*message);}其中runConsumer()建立连接并开始监听,并在收到消息时调用onMessage()。我的问题是:使用此代码的人将各自有自己的方式来处理不同的消息。我怎样才能保持MessageConsumer通用但提供这种灵active,同时保持代码简单?

java - MessageConsumer/MessageProducer 与 QueueSender/QueueReceiver

MessageConsumer/MessageProducer是QueueSender/QueueReceiver的XA等效项吗?据我所知,MessageConsumer/MessageProducer更适合在XA上下文中使用。在我的应用程序中,我想从QueueConnectionFactory、QueueConnection、QueueSession切换到它们的XA等价物,为此我需要使用MessageConsumers/Receivers而不是QueueSenders和QueueReceivers。 最佳答案 IstheMessa