要解决"ActiveMQ Artemis STOMP接收器不接受"的问题,你可以尝试以下几个步骤:
...
tcp://0.0.0.0:61616?protocols=STOMP
...
import org.apache.activemq.artemis.api.core.TransportConfiguration;
import org.apache.activemq.artemis.api.core.client.ActiveMQClient;
import org.apache.activemq.transport.stomp.Stomp;
import org.apache.activemq.transport.stomp.StompConnection;
import org.apache.activemq.transport.stomp.StompFrame;
public class StompReceiver {
public static void main(String[] args) throws Exception {
TransportConfiguration transportConfiguration = new TransportConfiguration(Stomp.CONNECTION_FACTORY);
StompConnection stompConnection = (StompConnection) ActiveMQClient.createConnection(transportConfiguration);
stompConnection.connect();
stompConnection.subscribe("/queue/myQueue");
while (true) {
StompFrame frame = stompConnection.receive();
System.out.println("Received message: " + frame.getBody());
frame.ack();
}
}
}
检查服务器日志以查看是否有任何错误消息。如果有错误消息,请根据错误消息进行调试和解决问题。
确保你的STOMP消息格式是正确的。ActiveMQ Artemis使用的是STOMP 1.2规范,因此请确保你的消息格式符合规范。
希望以上解决方法能帮助到你解决"ActiveMQ Artemis STOMP接收器不接受"的问题。