我正在使用Spring4 Messaging开发的聊天应用程序和使用SockJS实现的STOMP.我使用Simple Message Broker时应用程序正常工作:
config.enableSimpleBroker("/queue/", "/topic/");
Run Code Online (Sandbox Code Playgroud)
但是,现在我们需要使用具有相同应用程序的外部代理(RabbitMQ).为此,我用以下内容更改了上面的代码:
// config.enableSimpleBroker("/queue/", "/topic/");
config.enableStompBrokerRelay("/queue", "/topic");
Run Code Online (Sandbox Code Playgroud)
我的客户端使用STOMP客户端进行连接,如下所示:
stompClient.connect({}, function(frame) {
// subscribe to topics or queues and other stuff
});
Run Code Online (Sandbox Code Playgroud)
但是,我得到以下异常:
2014-05-09 11:13:13,567 ERROR o.s.s.support.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled task.
org.springframework.messaging.MessageDeliveryException: Message broker is not active.
at org.springframework.messaging.simp.stomp.StompBrokerRelayMessageHandler.handleMessageInternal(StompBrokerRelayMessageHandler.java:378) ~[spring-messaging-4.0.3.RELEASE.jar:4.0.3.RELEASE]
at org.springframework.messaging.simp.broker.AbstractBrokerMessageHandler.handleMessage(AbstractBrokerMessageHandler.java:171) ~[spring-messaging-4.0.3.RELEASE.jar:4.0.3.RELEASE]
at org.springframework.messaging.support.ExecutorSubscribableChannel.sendInternal(ExecutorSubscribableChannel.java:64) ~[spring-messaging-4.0.3.RELEASE.jar:4.0.3.RELEASE]
at org.springframework.messaging.support.AbstractMessageChannel.send(AbstractMessageChannel.java:116) ~[spring-messaging-4.0.3.RELEASE.jar:4.0.3.RELEASE]
at org.springframework.messaging.support.AbstractMessageChannel.send(AbstractMessageChannel.java:98) ~[spring-messaging-4.0.3.RELEASE.jar:4.0.3.RELEASE]
at org.springframework.messaging.simp.SimpMessagingTemplate.doSend(SimpMessagingTemplate.java:129) ~[spring-messaging-4.0.3.RELEASE.jar:4.0.3.RELEASE]
at org.springframework.messaging.simp.SimpMessagingTemplate.doSend(SimpMessagingTemplate.java:48) ~[spring-messaging-4.0.3.RELEASE.jar:4.0.3.RELEASE]
at org.springframework.messaging.core.AbstractMessageSendingTemplate.send(AbstractMessageSendingTemplate.java:93) ~[spring-messaging-4.0.3.RELEASE.jar:4.0.3.RELEASE]
at org.springframework.messaging.core.AbstractMessageSendingTemplate.convertAndSend(AbstractMessageSendingTemplate.java:146) ~[spring-messaging-4.0.3.RELEASE.jar:4.0.3.RELEASE]
at org.springframework.messaging.core.AbstractMessageSendingTemplate.convertAndSend(AbstractMessageSendingTemplate.java:112) ~[spring-messaging-4.0.3.RELEASE.jar:4.0.3.RELEASE]
at org.springframework.messaging.core.AbstractMessageSendingTemplate.convertAndSend(AbstractMessageSendingTemplate.java:106) ~[spring-messaging-4.0.3.RELEASE.jar:4.0.3.RELEASE]
at …Run Code Online (Sandbox Code Playgroud) 我试图在一台机器(笔记本电脑)上为RabbitMQ配置一个集群环境.我正在关注RabbitMQ网站上的这个指南.我的机器使用的是Windows 7和RabbitMQ服务器3.3.0.当我尝试运行以下命令时:
RABBITMQ_NODE_PORT=5672 RABBITMQ_NODENAME=rabbit rabbitmq-server -detached
Run Code Online (Sandbox Code Playgroud)
命令提示符发生以下错误:
"RABBITMQ_NODE_PORT" is not recognized as an internal or external command, operable program or batch file
Run Code Online (Sandbox Code Playgroud)
这个命令的作用是基本上为服务器设置变量RABBITMQ_NODE_PORT和RABBITMQ_NODENAME作为名为rabbit且在端口5672上的单个节点运行.同样,我会尝试启动名为hare和端口5673的另一个节点.我知道这是一个系统路径问题,但我仍然无法解决它.有人可以帮帮我!!