3.5.2. 为 STOMP 消息提供 ID
在通过 JMS 使用者或 QueueBrowser 接收 STOMP 消息时,消息不包含任何 JMS 属性,如 JMSMessageID
。但是,您可以使用代理参数设置每个传入 STOMP 消息的消息 ID。
流程
-
打开
<broker_instance_dir>/etc/broker.xml
配置文件。 -
将用于 STOMP 连接的接收器的
stomp
EnableMessageId
参数设置为true
,如下例所示:
<acceptors> <acceptor name="stomp-acceptor">tcp://localhost:61613?protocols=STOMP;stompEnableMessageId=true</acceptor> ... </acceptors>
<acceptors>
<acceptor name="stomp-acceptor">tcp://localhost:61613?protocols=STOMP;stompEnableMessageId=true</acceptor>
...
</acceptors>
通过使用 stomp EnableMessageId
参数,使用此接收器发送的每一 stomp 消息都会添加额外的属性。属性键是 amq-message-id
,其值是前缀为 “STOMP” 的内部消息 ID 的 String 表示,如下例所示:
amq-message-id : STOMP12345
amq-message-id : STOMP12345
如果没有在配置中指定 stomp EnableMessageId
,则默认值为 false
。