在迁移到Play 2.5时,我试图按照here所述实现新的WebSocket功能处理与演员的WebSockets)。在Play 2.5.4中没有play.libs.streams.ActorFlow(如示例所示),但只有play.api.libs.streams.ActorFlow。但是,当我写这篇文章的代码:播放2.5 ActorFlow:无法从Flow <String,String,capture#1 of?>转换为Flow <String,String,?>
public class MyController extends Controller {
private final ActorSystem actorSystem;
private final Materializer materializer;
@Inject
public MyController(ActorSystem actorSystem, Materializer materializer) {
this.actorSystem = actorSystem;
this.materializer = materializer;
}
public WebSocket socket() {
return WebSocket.Text.accept(request ->
return ActorFlow.<String, String>actorRef(MyWebSocketActor::props, 256, OverflowStrategy.dropHead(),
actorSystem, materializer
)
);
}
}
编译器给我一个错误:
Type mismatch: cannot convert from Flow
<String,String,capture#1-of ?> to Flow<String,String,?>
是否有人可以解释我如何实现在2.5这一做法?为什么我得到这个错误?
感谢您的回应:)但是,我发现在Play 2.5中使用新的WebSocket实现的方式基于这里写的内容:http://nuah.livejournal.com/315561.html – sleb82