1

我正在使用 IBM.XMS .NET 库将消息写入消息队列。我需要将“组中的最后一条消息”标志设置为 true。

textMessage.SetBooleanProperty("JMS_IBM_LAST_MSG_IN_GROUP", true);

我在这行代码中收到以下错误消息:“属性名称 JMS_IBM_LAST_MSG_IN_GROUP 已保留,无法设置。提供的属性名称以 JMS 前缀开头,但不是受支持的可设置属性之一。检查属性名称并更正错误。” 我是否有可能从代码中更改此标志?谢谢。

4

1 回答 1

1

您正在使用名称以“JMS”开头的属性。根据 JMS 规范的第 3.5.10 节,“JMS 为提供者特定的属性保留 'JMS_' 属性名称前缀。每个提供者都定义了自己的值。这是 JMS 提供者用来使其特殊的每条消息服务可用于JMS 客户端。

我建议您使用 XMS 定义的名称或名称不以“JMS”开头的属性。下面是一个工作片段。

        var msg = session.CreateTextMessage();
        msg.SetStringProperty(XMSC.JMSX_GROUPID, "ABCDEFGKILDD");
        msg.SetBooleanProperty(XMSC.JMS_IBM_LAST_MSG_IN_GROUP, true);
        msg.Text = "Message in group";
        prod.Send(msg);
于 2016-09-05T10:11:33.637 回答