2016-02-25 75 views
1

我下面的這個指南,但使用簡單的消息代理,而不是http://spring.io/guides/gs/messaging-stomp-websocket/,我想用蹬經紀人繼電器春天開機+ ActiveMQ的+跺腳經紀人中繼連接失敗

@Override 
public void configureMessageBroker(MessageBrokerRegistry registry) { 
    registry.enableStompBrokerRelay("/topic").setRelayHost("stomp://localhost").setRelayPort(61612); 
    registry.setApplicationDestinationPrefixes("/app"); 
} 

和我試圖但是我的控制檯一直顯示連接失敗

2016年2月26日01:38:05.786 INFO 3584 --- [主] osmssStompBrokerRelayMessageHandler:連接 「系統」 會議上跺腳://本地主機:61612

2016-02-26 01:38:05.942信息3584 --- [eactor-tcp-io-1] r.io.net.impl.netty.tcp.NettyTcpClient:無法連接到stomp:// localhost:61612 。嘗試在5000毫秒內重新連接。

2016-02-26 01:38:05.957 INFO 3584 --- [main] o.s.m.s.s.StompBrokerRelayMessageHandler:Started。

2016年2月26日01:38:06.025 INFO 3584 --- [主要] sbcetTomcatEmbeddedServletContainer:Tomcat的開始端口(一個或多個):8052(HTTP)

2016年2月26日1點38: 06.025 INFO 3584 --- [main] main.java.test.TestApplication:在9.419秒內啓動TestApplication(JVM運行15.121)

2016-02-26 01:38:11.022信息3584 --- [eactor- tcp-io-2] r.io.net.impl.netty.tcp.NettyTcpClient:無法連接到stomp:// localhost:61612。嘗試在5000毫秒內重新連接。

2016-02-26 01:38:16.008信息3584 --- [eactor-tcp-io-3] r.io.net.impl.netty.tcp.NettyTcpClient:未能連接到stomp://本地主機:61612。嘗試在5000毫秒內重新連接。

我activemq.xml中,除了這個默認:

<transportConnectors> 
     <transportConnector name="stomp" uri="stomp://localhost:61612"/> 
</transportConnectors> 

ActiveMQ的,沒有任何問題,因爲我能夠以http://localhost:8161/admin連接到管理頁面啓動。

這裏是萬一有人我看到maven pom.xml察覺出來,我可能是使用了錯誤的依賴

<?xml version="1.0" encoding="UTF-8"?> 

http://maven.apache.org/xsd/maven-4.0.0.xsd 「> 4.0.0

<groupId>com.test.program</groupId> 
<artifactId>testapp</artifactId> 
<version>0.1.0</version> 

<parent> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-parent</artifactId> 
    <version>1.3.2.RELEASE</version> 
</parent> 


<dependencies> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-thymeleaf</artifactId> 
    </dependency> 

    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-websocket</artifactId> 
    </dependency> 

    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-messaging</artifactId> 
    </dependency> 

    <dependency> 
     <groupId>org.json</groupId> 
     <artifactId>json</artifactId> 
     <version>20140107</version> 
    </dependency> 

    <dependency> 
     <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-core</artifactId> 
     <version>3.1.5</version> 
    </dependency> 

    <dependency> 
     <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-rt-frontend-jaxws</artifactId> 
     <version>3.1.5</version> 
    </dependency> 

    <dependency> 
     <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-rt-transports-http</artifactId> 
     <version>3.1.5</version> 
    </dependency> 


    <dependency> 
     <groupId>io.projectreactor</groupId> 
     <artifactId>reactor-core</artifactId> 
     <version>2.0.7.RELEASE</version> 
    </dependency> 

    <dependency> 
     <groupId>io.projectreactor</groupId> 
     <artifactId>reactor-net</artifactId> 
     <version>2.0.7.RELEASE</version> 
    </dependency> 

    <dependency> 
     <groupId>io.netty</groupId> 
     <artifactId>netty-transport</artifactId> 
     <version>4.0.34.Final</version> 
    </dependency> 

    <dependency> 
     <groupId>io.netty</groupId> 
     <artifactId>netty-transport-native-epoll</artifactId> 
     <version>4.0.34.Final</version> 
    </dependency> 

</dependencies> 

<properties> 
    <java.version>1.8</java.version> 
</properties> 


<build> 
    <plugins> 
     <plugin> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-maven-plugin</artifactId> 
     </plugin> 

    </plugins> 
</build> 

<repositories> 
    <repository> 
     <id>spring-milestone</id> 
     <url>https://repo.spring.io/libs-release</url> 
     <snapshots> 
      <enabled>false</enabled> 
     </snapshots> 
    </repository> 

</repositories> 


<pluginRepositories> 
    <pluginRepository> 
     <id>spring-milestone</id> 
     <url>https://repo.spring.io/libs-release</url> 
     <snapshots> 
      <enabled>false</enabled> 
     </snapshots> 
    </pluginRepository> 
</pluginRepositories> 

+0

你檢查跺腳傳輸連接器是啓動和運行,ActiveMQ的管理頁面可能可以訪問,請檢查運輸連接器 – Sundar

+0

是那裏檢查一種特殊的方式?據我所知它不會在控制檯中顯示任何地址綁定錯誤,當我啓動activemq。 – ron

回答

0

問題解決了。

我只是需要與r emove「stomp://」前綴。由於彈簧配置方法意味着它是一個stomp繼電器,我不需要自己添加前綴。如果在默認的activemq安裝中設置,還需要輸入用戶名和密碼。

@Override 
public void configureMessageBroker(MessageBrokerRegistry registry) { 
    registry.enableStompBrokerRelay("/topic") 
     .setRelayHost("127.0.0.1") 
     .setRelayPort(61613) 
     .setClientLogin("system") 
     .setClientPasscode("password") 
    registry.setApplicationDestinationPrefixes("/app"); 

} 
相關問題