【问题标题】:Connecting to Websphere MQ Queue with Ruby for testing使用 Ruby 连接到 Websphere MQ 队列以进行测试
【发布时间】:2018-11-06 03:26:30
【问题描述】:

我一直在研究尝试连接到 Websphere 队列的 RubyWMQ gem,但没有运气。我的最终目标是使用 Ruby 连接、读取消息并将消息放入队列。我也使用了 gem 作者文档和示例here,但也没有运气。目前我已经尝试过:

queue = WMQ::QueueManager.connect(                        
  :q_mgr_name => 'MYQUEUEMANAGERNAMEHERE',
  :exception_on_error => true,
  :trace_level => 2,
  # :connect_options => WMQ::MQCNO_FASTBATH_BINDING,  # this errors
  :channel_name => 'MYQUEUEMANAGERNAMEHERE',
  :connection_name => 'localhost(1414)',
  :transport_type => WMQ::MQXPT_TCP,
  :user_identifier => 'MYUSERNAMEHERE',
  :password => 'MYPASSWORDHERE')

我相信我收到的第一个错误与 Webshpere MQ 客户端本身或 gem 的安装有关。我使用这个命令安装了 RubyWMQ:

gem install rubywmq --platform=ruby -- '--with-mqm-include="C:\Program Files\IBM\WebSphereMQ\tools\c\include"'

我使用的是 IBM WebSphere MQ 版本 7.1.0.3,位于 C:\Program Files\IBM\WebSphere MQ...

运行代码时出现此错误:

WMQ::QueueManager#connect(). Failed to load MQ Library:mqic32, rc=126 (WMQ::WMQException)

我可以在 C:\Program Files\IBM\WebSphere MQ\bin 中看到“mqic32.dll”文件,所以我不确定 gem 代码到底在做什么..

【问题讨论】:

  • 你得到你的答案了吗?我也面临同样的问题
  • 遗憾的是我还没有找到答案。在这种情况下,我不得不从 ruby​​ 继续前进,但很想知道是否有办法。
  • Windows 运气不好。我在 ubundu VM 中使用 ruby​​WMQ,现在我没有遇到任何问题。
  • 有同样的问题。适用于我的 Ruby v. 2.3.1,不适用于 2.5.1,无论是 x86 还是 x64。

标签: ruby rubygems ibm-mq


【解决方案1】:

通过将C:\Program Files\IBM\WebSphere MQ\bin64 添加到我的用户$Path 来解决此问题。

这很奇怪,因为 binbin64 都已被 IBM 安装添加到 System $path 变量中。

(这是一个 mingw ruby​​ 安装)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-25
    • 1970-01-01
    • 2018-12-17
    • 1970-01-01
    • 2018-02-15
    • 2017-04-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多