我一直在尝试让 kaazing stockticker excel 演示工作,但我在 websocket 连接上遇到了一些问题。我的网关正在运行,并且 Stock Feed 服务似乎正在运行:
[Stock Feed] Stock Ticker demo connected to tcp://localhost:61616
当我尝试运行 javascript JMS 消息传递演示时,我得到以下信息:
CONNECT: ws://localhost:8001/jms
EXCEPTION: ConnectionFailedException: WebSocket connection failed
失败通常需要大约 30 秒。在那段时间里,我在 kaazing 仪表板上的当前会话确实飙升至 1,所以我知道至少正在尝试连接。
如果我使用简单的 websocket 客户端 chrome 扩展,也会发生同样的事情。在我的错误日志中,我看到:
2016-03-11 11:06:18,723 [New I/O worker #6] INFO [ws://localhost:8001/jms x-kaazing-handshake]
[tcp://[0:0:0:0:0:0:0:1]:52340 http/1.1] - [localhost:8001] "GET /jms?.kl=Y HTTP/1.1 " "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0"
2016-03-11 11:06:19,860 [EagerCP_0-1] WARN Unable to establish JMS Connection due to the following exception: Could not connect to broker URL: tcp://localhost:61616. Reason: java.net.ConnectException: Connection refused: connect
该错误在 kaazing 网站上得到解决:http://kaazing.com/doc/jms/4.0/integration-jms/p_jms_integrate_tshoot.html#problem4但它并没有真正提供解决方案。我会尝试实施建议的“解决方法”,但我找不到配置文件。没有任何网关配置包含给定的 XML 块。
作为最后的努力,我尝试通过将 ws 添加到 transportConnector 来修改 activemq 服务配置以包含 websocket:
<transportConnectors>
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
<transportConnector name="ssl" uri="ssl://0.0.0.0:61617"/>
<transportConnector name="stomp" uri="stomp://0.0.0.0:61613"/>
<transportConnector name="websocket" uri="ws://0.0.0.0:61614"/>
</transportConnectors>
仍然没有运气。我错过了什么?看起来这应该是开箱即用的......