我有用于 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,我可以控制这个属性的内容吗?