【问题标题】:Issue in putting a message into IBM Websphere MQ from "CMD"从“CMD”将消息放入 IBM Websphere MQ 的问题
【发布时间】:2013-11-12 06:31:30
【问题描述】:

我们在 AIX 平台上有一个 IBM websphere MQ[v5.2],我的机器是 windows 7 pro,它有 MQ 客户端 v7.5。

我尝试远程连接到服务器,但收到了Authorization 错误消息。这是因为我的本地用户帐户确实有权远程连接到队列管理器。

所以,我在我的系统中创建了一个新用户帐户,其名称与服务器上的名称相同,该服务器有权放置/获取消息,现在我能够以客户端模式进行连接[Websphere MQ v7.5]。

我不知道它是否真的连接到服务器,但它没有给我授权错误消息,所以我认为它是成功的。但问题是,当我尝试使用 amqsputc Queue_name mqm 将消息从 cmd 放入队列时,队列正在打开并接收消息。但是当我尝试使用命令amqsgetc queue_name mqm 获取消息时,它显示“NO MORE MESSAGE”。

可能是什么问题?

屏幕截图:

【问题讨论】:

    标签: windows ibm-mq aix


    【解决方案1】:

    amqsputc 没有给出错误的事实,而 amqsgetc 运行成功的事实意味着该功能正在运行。但是,它在队列中找不到任何内容,这让我非常怀疑您有一个应用程序正在侦听该队列,这将在消息到达时消耗消息,因此在您的 amqsgetc 之前。在 runmqsc 中检查 DISPLAY QSTATUS 以获取队列中的 IPPROCS - amqsgetc 未运行时是否为 0?

    【讨论】:

    • 对不起,我无法访问服务器.....我无法登录系统。
    • 我同意 JasonE。您可以尝试将消息放入 SYSTEM.DEFAULT.LOCAL.QUEUE 而不是 OMS_ESB_TO_CIS_WARM 队列并从同一个 SYSTEM.DEFAULT.LOCAL.QUEUE 队列接收吗?我假设您对 SYSTEM.DEFAULT.LOCAL.QUEUE 队列有足够的权限。
    • 我想我没有权限。我在尝试将消息放入 SYSTEM.DEFAULT.LOCAL.QUEUE 时收到授权错误代码:2035。
    • 还有其他方法可以检查吗?..................这个问题是关于队列上的提交和未提交的消息吗?
    • amqsputc 和 amqsgetc 不使用工作单元(同步点),因此未提交的消息不是问题。您需要一个您有权放入的队列,服务器上的任何内容都不会从中消耗(获取),并且也不会触发应用程序。如果没有更多信息,就无法进一步说明,但 amqsputc 和 amqsgetc 几乎是最基本的功能,如果事情根本上错误,将返回错误
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-06
    • 1970-01-01
    • 2017-08-30
    • 2021-06-09
    • 2013-10-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多