Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/16.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
Scala 在play 2.6中,WebSocket缺少自定义数据类型的隐式消息流转换器_Scala_Websocket_Akka_Akka Stream_Playframework 2.6 - Fatal编程技术网

Scala 在play 2.6中,WebSocket缺少自定义数据类型的隐式消息流转换器

Scala 在play 2.6中,WebSocket缺少自定义数据类型的隐式消息流转换器,scala,websocket,akka,akka-stream,playframework-2.6,Scala,Websocket,Akka,Akka Stream,Playframework 2.6,我试图在客户端和服务器之间建立web套接字连接,但数据类型需要隐式MessageFlowTransformer,播放文档仅介绍字符串和JsValue转换,我有以下数据类型: sealed trait InEvent sealed trait outEvent final case class AckInEevent(serial: Long) extends InEvent final case class AckOutEevent(serial: Long) extends outE

我试图在客户端和服务器之间建立web套接字连接,但数据类型需要隐式MessageFlowTransformer,播放文档仅介绍字符串和JsValue转换,我有以下数据类型:

sealed trait InEvent
sealed trait outEvent

  final case class AckInEevent(serial: Long) extends InEvent
  final case class AckOutEevent(serial: Long) extends outEvent
我有一个错误指示

could not find implicit value for parameter transformer: play.api.mvc.WebSocket.MessageFlowTransformer[InEvent, outEvent]
试一试

libraryDependencies+=“org.julienrf”%%“播放json派生的编解码器”%%“6.0.0”


谢谢,如果我使用Argonaut编码和解码,Json.Format将不会work@med10在Play framework中,您应该使用Play json,而不是Circe、Argonaut、Jackson、µPickle或其他任何东西。否则,您必须自己实现不同库的类型类之间的转换
could not find implicit value for parameter transformer: play.api.mvc.WebSocket.MessageFlowTransformer[InEvent, outEvent]
sealed trait InEvent
sealed trait outEvent

final case class AckInEevent(serial: Long) extends InEvent
final case class AckOutEevent(serial: Long) extends outEvent

import play.api.libs.json._
implicit val ackInEeventFormat = Json.format[AckInEevent]
implicit val ackOutEeventFormat = Json.format[AckOutEevent]
implicit val inEeventFormat = Json.format[InEvent]
implicit val outEeventFormat = Json.format[outEvent]

implicit val messageFlowTransformer =
  MessageFlowTransformer.jsonMessageFlowTransformer[InEvent, outEvent]

def accept = WebSocket.tryAcceptWithActor[InEvent, outEvent] { request => ???}