【问题标题】:How to use the correct protocol for receiving active mq web socket stomp from java based program如何使用正确的协议从基于 java 的程序中接收 activemq websocket stomp
【发布时间】:2017-04-13 20:11:46
【问题描述】:

我有一个基于 JavaScript 的活动 mq 侦听器,它使用 stomp 和 web 套接字。我能够将测试消息发送到活动 mq 并接收它们。

我真正想要的是它需要从基于 Java 的代码中发送。

  • 是否可以让 JavaScript 监听 web sockets/stomp 和 java代码使用tcp?
  • 如果没问题,是不是所有的端口都一样?

我在 JavaScript 中接收数据时遇到问题。但是我看到这个话题被排在了活跃的mq.thanks

function subscribeEndpoint(endpoint){
    var client = Stomp.client("ws://localhost:61614/stomp", "v11.stomp");
    var headers = { id:'JUST.FCX', ack: 'client'};
    client.connect("admin", "admin", function () {
        client.subscribe(endpoint,
             function (message) {
                 alert(message);
             }, headers);
    });
}

Java:

ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://localhost:61616/stomp");

// Create a Connection
Connection connection = connectionFactory.createConnection();
connection.start();

// Create a Session
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

// Create the destination (Topic)
Destination destination = session.createTopic("vrwrThreat");

// Create a MessageProducer from the Session to the Topic or Queue
MessageProducer producer = session.createProducer(destination);
producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);

// Create a messages
TextMessage message = session.createTextMessage(text);

producer.send(message);

// Clean up
session.close();
connection.close();

【问题讨论】:

    标签: javascript java websocket activemq stomp


    【解决方案1】:

    客户端可以跨协议和传输机制相互通信而不会出现问题。 WebSocket 或任何其他端口(TCP、SSL 等)上的 STOMP 客户端可以发送到主题,并且 AMQP、MQTT 或 OpenWire 客户端可以接收消息,只要协议支持消息的内容,反之亦然AMQP、MQTT 或 OpenWire 发送和 STOMP 接收的情况。

    你提到的案例很标准。您发布的代码似乎正在使用 OpenWire 客户端发送到主题“vrwrThreat”。连接工厂中使用的 URI 略有不同,因为您添加了无意义的“/stomp”。由于您要发送到主题,因此您需要确保接收消息的客户端在传输时处于活动状态,否则消息将被丢弃。此外,您需要确保两者都在同一个主题上运行,这在您的代码 sn-ps 中不清楚。

    【讨论】:

      猜你喜欢
      • 2020-06-09
      • 2014-05-21
      • 1970-01-01
      • 2020-10-27
      • 2012-11-03
      • 1970-01-01
      • 1970-01-01
      • 2015-04-06
      • 2016-05-22
      相关资源
      最近更新 更多