我有一个graphdsl,在执行webSocketClientFlow
的{{1}}后由于某种原因,我得到了一个空流。 Flow
未来的错误消息是:
run
图形如下:
java.util.NoSuchElementException: head of empty stream
最近的val loginMessage = Flow[LoginCommand].map(data => {
TextMessage(data.toJsonString())
}).named("Converting Login to Message").log("LoginMessage")
val exasolAnnounce = http
.webSocketClientFlow(WebSocketRequest(socketUrl))
.named("ExasolAnnounceLogin")
.log("SendAnnounce")
val announceResponse = builder.add(Flow[Message].map(data =>
LoginCommand.Response.extract(data)
).named("Building Response").log("AnnouncementResponse"))
import GraphDSL.Implicits._
Source.single(new LoginCommand) ~> loginMessage ~> exasolAnnounce ~> announceResponse
日志是:
DEBUG
在我看来,就像它连接到Websocket一样,但是由于某种原因没有提供结果。任何人都可以弄清问题出在哪里,或者我如何进一步找到问题所在?
编辑1 :
用 ws://echo.websocket.org 测试,然后流按预期进行处理。 不知道如何进一步调试服务器行为。
答案 0 :(得分:0)
发现我们的防火墙正在关闭连接。