问题标签 [xms]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ibm-mq - 如何在我的 .NET 项目中引用 IBM.XMS.dll
我正在构建一个程序,它将开始监听 IBM 队列。为此,我使用了随 Windows 安装的 Websphere MQ 客户端安装的 IBM.XMS.dll。我问自己,当我将它部署到验收或生产时,我可能还必须在那台机器上安装 Websphere MQ 客户端吗?
我的另一个问题是,我是否必须像这样引用 IBM.XMS.dll C:\Program Files\IBM\WebSphere MQ\bin\IBM.XMS.dll
:?我尝试将 IBM.XMS.dll 放在我的 .NET 解决方案的构建文件夹中,但这不起作用,因为 dll 依赖于其他 dll。
编辑
查看示例后,我发现 IBM 编写的示例引用了 GAC 中的 dll。所以我也做了同样的事情。
- 按
Ctrl
+R
- 类型
C:\WINDOWS\assembly\GAC_MSIL\IBM.XMS
- 按
Enter
- 找到 IBM.XMS.dll 并在您的解决方案中引用这个
c# - 订阅者的 IBM MQ 重新连接逻辑
我有一个 Windows 服务,它将订阅队列并连续处理消息。除了重新连接逻辑之外,一切都在工作。我在我的代码中使用 IBM.XMS.dll 版本 8。
当 IBM Websphere MQ 服务器发生故障转移时,我在重新建立订阅时遇到问题。在故障转移期间,我收到以下异常:
在 onException 事件处理程序中重新建立订阅时,我需要一些帮助:
以下是我的 XMS 实现的完整代码片段。
ibm-mq - 从多实例队列管理器获取活动 QM 实例并连接
当我将队列管理器的单个实例更改为多实例队列管理器时,我无法为多实例队列管理器定义多个主机名。现有主机在 web.config 中定义
连接在这里定义
队列处理程序:
并且主机名和端口也在 SendNewMessage 方法的同一个类中定义......
那么如何在 MQEnvironment.Hostname 中设置备用主机呢?
c# - CreateTopic 上的 IBM MQ XMS 错误 2085
我正在尝试创建一个主题并将消息发布到 IBM MQ 主题。我收到 2085 MQ 异常并确定如何解决此问题。
我使用的 IBM.XMS.dll 版本是 8.0.0.6。
控制台应用程序代码:
异常详情:
错误消息:
CWSMQ0006E:在调用 WmqV6Session.SetupPubSub 方法期间收到异常:CompCode:2,原因:2085。在执行指定方法期间,另一个组件引发了异常。有关详细信息,请参阅链接的异常。链接异常原因:2085
链接异常堆栈跟踪:
在 IBM.WMQ.MQQueue..ctor(MQQueueManager qMgr, String queueName, Int32 openOptions, String queueManagerName, String dynamicQueueName, String alternateUserId) 在 IBM.WMQ.MQQueue.Open(MQObjectDescriptor& od) 在 IBM.WMQ。 IBM.WMQ.MQQueueManager.AccessQueue(String queueName, Int32 openOptions) 在 IBM.XMS.Client.WMQ.MqV6Impl.WmqV6Session.SetUpPubSub(Boolean) 的 MQQueueManager.AccessQueue(String queueName, Int32 openOptions, String queueManagerName, String dynamicQueueName, String alternateUserId)开始清理)
c# - 发布到主题时出现随机 IBM MQ XMS 错误 2195
我在将 JSON 字符串消息发布到 IBM MQ 主题时遇到了这个随机问题。它总是如此随机地发生。我不确定如何查明问题。自从我切换到 SSL 通道后,这种情况就发生了。
我使用的 IBM.XMS.dll 版本是 8.0.0.6。以下是代码片段和异常详细信息:
例外:
堆栈跟踪:
在 IBM.WMQ.MQFAP.NmqiConnect(String name, NmqiConnectOptions pNmqiConnectOpts, MQConnectOptions cno, Hconn parentHconn, Phconn pHconn, Int32& compCode, Int32& reason, ManagedHconn rcnHconn)
在 IBM.WMQ.MQFAP.NmqiConnect(String pQMgrName, NmqiConnectOptions pNmqiConnectOpts , MQConnectOptions pConnectOpts, Hconn parentHconn, Phconn pHconn, Int32& pCompCode, Int32& pReason)
在 IBM.XMS.Client.WMQ.WmqSession..ctor(WmqConnection connection, AcknowledgeMode ackMode, XmsPropertyContext properties)
在 IBM.XMS.Client.WMQ.WmqConnection。
IBM.XMS.Client.Impl.XmsConnectionImpl.CreateSession(Boolean transacted, AcknowledgeMode ackMode) 上的CreateSession(XmsPropertyContext properties, AcknowledgeMode ackMode)
ibm-mq - 使用 XMS 向多实例队列管理器发送消息
关注这篇文章:从多实例队列管理器获取活动 QM 实例并连接
我创建了一个连接
然后是
发送消息,但是它在最后一行生产者抛出异常。发送(响应):
从跟踪中我可以看到生产者在连接名称列表中有我的两个活动/备用主机,还有“localhost”作为主机名和 1414 作为端口,这就是我无法连接到它的原因吗?
c# - IBM Webshpere MQ .net client, which is more suitble amqmdnet or XMS
I have a IBM websphere MQ .net client application which uses amqmdnet dll. It works fine but I am not able to read messages in event(subscription) based manner. Reading online I found that XMS library has in-built subscriber methods.
I am also looking at scalability of the .net client application which will allow a cluster of nodes reading the same MQ pipeline. My objective is to create a .net message consumer which supports
point-to-point & publish/subscribe method
Cluster of nodes connecting to same queue and consuming messages.
Remove the messages from pipeline once it is persisted.
Which of the method is preferred in such scenario?
ibm-mq - IBM MQ XMS v7.5。在 .Net C# amqmdnac.dll 中实现消息侦听器时出错
创建在.Net C#中实现的IBM MQ 消息侦听器并在 MQ 客户端 7.5.0.2 上工作时,我在安装 MQ 客户端 7.5 后遇到了几个问题。修订包 7。
其中一个也是最重要的一个是,我的客户端工具试图找到一个名为
amqmdnac.dll
在 %Program Files (x86)%\IBM\Websphere MQ\bin 中运行时。
该文件在 MQ 客户端 7.5 上不存在。爬取 www 以获取下载可能性或此问题的答案除了对 MQ Client 7.1 的提示没有帮助之外没有任何结果。
c# - queueBrowser.GetEnumerator() 没有收到任何消息 | IBM MQ XMS C# 客户端
我们正在使用 IBM MQ XMS C# 客户端版本 9.0(在 .NET 4.6.2 框架上)与 IBM MQ 一起工作。我只需要知道给定队列上的所有消息,而无需将它们从队列中删除。
我们还为队列设置了消费者。需要消费者和浏览器协同工作。浏览器不应删除消息,但仍需要获取所有消息。
所以我设置了一个像下面这样的 QueueBrowser,但是 queueBrowser.GetEnumerator() 根本没有收到消息。
使用相同的代码,如果创建一个 MessageConsumer 并附加一个侦听器,它将获取发布到队列的消息。因此,仅 QueueBrowser 出现问题。
谁能指出为什么会这样。为什么 queueEnumerator.MoveNext() 总是返回 false,表示队列中没有消息。
c# - 连接失败时重新连接到 IBM MQ 队列
以下代码片段包含我的 IBM MQ 队列的连接和订阅逻辑。当出现连接失败时,我使用 IConnection.ExceptionListener 委托通过队列建立新连接并重新订阅消息。但问题是,我可以看到多个队列句柄。我如何确保关闭以前的连接句柄并在由于网络问题或 MQ 服务器重新启动而导致连接中断的情况下建立新连接?