TIBCO EMS キューからのメッセージを消費する MDB を作成しました。これは正常に機能しており、すべてのメッセージを消費しています。ここで、特定の 1 つのタイプのメッセージのみを消費するメッセージ セレクターを実装する必要があります。
問題は、私の messageSelector が機能せず、MDB がまだすべてのメッセージを消費していることです。
マイ MDB
@MessageDriven(
name = "MDBPscInformationResponseReceiver",
activationConfig = {
@ActivationConfigProperty( propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
@ActivationConfigProperty( propertyName = "destination", propertyValue ="jms/PscInformationResponseQueue"),
@ActivationConfigProperty( propertyName = "messageSelector", propertyValue ="TipoMensagem='UPDATE'")
}
)
public class MDBPscInformationResponseReceiver implements MessageListener {
受信したメッセージ (ヘッダー)
TextMessage={ Header={
JMSMessageID={ID:EMS-SERVER.BD0DC51386DFD35EC0:18012}
JMSDestination={Queue[WAI.SDAGL.08502.PSC.RPL]}
JMSReplyTo={null} JMSDeliveryMode={NON_PERSISTENT}
JMSRedelivered={false}
JMSCorrelationID={}
JMSType={}
JMSTimestamp={Wed Jun 05 11:08:07 BST 2013}
JMSExpiration={0}
JMSPriority={4}
}
Properties={
TipoMensagem={String:CONSULTA}
}
Text={<?xml version="1.0" encoding="UTF-8"?>
GEMS を使用してメッセージを送信しています (プリントスクリーンは持っていますが、まだ画像を投稿できません)。
JMSDeliveryMode NON_PERSISTENT
JMSDestination WAI.SDAGL.08502.PSC.RPL
JMSCorrelationID
JMSType
JMSExpiration 0
JMSPriority 4
TipoMensagem CONSULTA
私はすでにJava(http://docs.oracle.com/javaee/6/tutorial/doc/bncgw.html)のドキュメントを読んでいて、アイデアがありません。