6

我正在尝试通过使用 JMS 作为传输协议的 Websphere MQ 向 Java 服务器发送消息。我可以使用 IBM 提供的库愉快地将消息放到 MQ 上,但服务器拒绝了它们。我假设(希望是正确的)这是因为我在 MQ 消息上缺少各种 JMS 特定的标头/属性。

我通过检查队列确保消息的有效负载相同(如果有帮助,它们都是映射消息),但不想完全实现JMS Websphere MQ 协议只是为了让它工作。

我想知道是否有人设法让它工作,如果是这样,您需要在 JMS 标头中指定的最少信息量是多少?是否有任何替代方法可以直接在 MQ 上执行此操作(我已经看到一些关于使用 java interop 的内容,但我认为这有点过头了)。

任何帮助将不胜感激!

4

4 回答 4

2

你能粘贴你用来阅读消息的Java代码吗?该代码是否假设消息是“MapMessage”。通常,从非 java 客户端放入队列的内容将显示为 TextMessage 或 BytesMessage。

只要您以 TextMessage / BytesMessage 的形式阅读,WebsphereMQ JMS api 通常可以很好地阅读没有 JMS 标头的这些消息。

在我的服务器代码中,我的内容通常作为字节放入队列,因此显示为 BytesMessage,但以防万一我收到手动放入队列的消息,我会捕获 classcastexception,并测试它是否实际上是一个TextMessage。

于 2009-11-24T03:19:37.057 回答
1

WebSphere MQ 没有非常清晰的错误消息。我建议在出现问题时检查的事情是:

  1. 异常详细信息及其递归原因。
  2. MQ 错误日志。
  3. 来自 MQ 的事件日志。
  4. .FDC 文件。
于 2009-11-30T17:30:38.327 回答
1

您是否尝试使用 MQI 发送 JMS 消息?看看 IBM 的 XMS 库。他们会提供你需要的一切。这些库提供了与 WebsphereMQ 一起使用的 JMS 的 .NET 实现。在过去的一年中,我多次使用这些库,在 java 和 .net 系统之间进行交流,并且对这些功能非常满意。

XMS .NET 库下载

于 2009-12-11T15:36:02.723 回答
0

我想我有同样的问题,我无法让 XMS 工作。如果它仍然是您的问题,这可能会有所帮助

问候克里斯托弗

于 2010-01-14T14:09:19.557 回答