Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 修改webSocket方法以返回actor ref_Java_Scala_Playframework_Websocket_Akka - Fatal编程技术网

Java 修改webSocket方法以返回actor ref

Java 修改webSocket方法以返回actor ref,java,scala,playframework,websocket,akka,Java,Scala,Playframework,Websocket,Akka,我有一个这样的函数 def socket = WebSocket.accept[JsValue, JsValue] { request => homelogger.info(logMessages.connectionEstablished) ActorFlow.actorRef(out => SocketHandlerClass.props(out,postActor)) /* out is an actor-ref for a particular

我有一个这样的函数

def socket = WebSocket.accept[JsValue, JsValue] { request =>

    homelogger.info(logMessages.connectionEstablished)

    ActorFlow.actorRef(out => SocketHandlerClass.props(out,postActor))

    /* out is an actor-ref for a particular connection to send messages back */


  }
我在游戏2.5.3和Akka 2.4.7中工作。
如何修改上述方法以返回actor引用,即out?

ActorFlow
提供了由actor处理的流。它仍然为浏览器连接的实例提供u
actorref
。 您可以使用下面的示例获取actor ref,这是更好的方法。虽然
actorflowmaterlizer
在play框架中是隐式使用的

不需要使用
ActorFlow
get
actorref


不清楚。请清除您的方法。@AniketPandey您可以使用上面的代码返回'out'作为ActorRef的意思是'def socket=WebSocket.accept[JsValue,JsValue]{request=>out=>SocketHandlerClass.props(out,postActor)(out)}`@AniketPandey是的,但是为什么要返回呢?如果要使用out,请在SocketHandlerClass下创建一个hashmap,如,val connection=new Hashmap[String,ActorRef]并使用SocketHandlerClass.connection.push(“->”out)不要用不同的标题问同一个问题也请阅读问题。你怎么知道这是那个的复制品。答案是一样的吗?想想看。
 def socket = WebSocket.acceptWithActor[JsValue, JsValue] { request =>out=>  SocketHandlerClass.props(out,postActor)
// no need to return out
      }