如何使用 javascript 将消息发送到 JMS 队列?

How to send message to JMS queue using javascript?

我使用 node.js 创建了一个网络服务器,现在在我的客户端(我使用 java-脚本创建),当用户点击发送按钮时,而不是 post请求(XMLHttpRequest),我想把数据发送到JMS队列。我如何在 javascript.

中实现它

JMS 是 Java-onlyAPI。没有办法让 JavaScript 实现 Java-API 除非你实际上 运行 在 java (Rhino 或其他)之上的 JS。但这里似乎不是这样。

理论上 - 可以实现 C++ wrapper using JNI 与可以使用 JMS 的 java 类 对话。然后,该包装器必须适应 Node/V8 扩展。好吧,这是很多容易出错的工作。 别往这边走

解决方案是不使用 JMS。大多数 JMS 实现(ActiveMQ、IBM WebSphere MQ 等)通常有多种方式与之通信。通常有一个 C/C++ 客户端可以被 Node.js 扩展使用。

还有 JMS 代理通常支持的标准化 wire-protocols,可以与现有 Node.js 扩展一起使用。 AMQP 1.0, MQTT, STOMP。此外,许多消息代理有一定的可能性(插件或类似)通过 HTTP 接受消息。

所以请探索您的 JMS 实现有哪些可能的通信方法。

作为后备解决方案,只需编写一个小 java 程序来侦听 HTTP 并生成您可以从 Node.js 应用程序调用的 JMS 消息。