【发布时间】:2019-02-15 17:35:31
【问题描述】:
我有用于 MQ 消息的消息转发器/路由器之类的东西。我正在尝试根据一些规则转发消息。这种转发只是通过从一个队列接收消息、创建一条新消息(具有相同或修改的内容)并将其放入另一个队列来完成。转发器的存在应该尽可能透明。
目前我的问题是PutApplicationType 消息属性。看来我无法更改此属性。我有 .NET 和 Java 示例实现,我试图简单地使用:
MQMessage forwardedMessage = new MQMessage();
forwardedMessage.putApplicationType = CMQC.MQAT_UNIX;
我尝试使用什么值并不重要。 .NET 版本始终使用MQAT_DEFAULT / MQAT_WINDOWS_NT 发送消息,Java 版本始终使用MQAT_JAVA 发送消息。
是否可以更改此标题?如果不是,如果我不更改值,是否会对遗留系统造成一些问题?为什么无法更改值?
顺便说一句。转发原始消息也不起作用 - 我的应用程序也会更改 PutApplicationType 属性。
编辑:如果我使用原生 C API,我可以控制这个属性的内容吗?
【问题讨论】: