Scala 在play 2.6中,WebSocket缺少自定义数据类型的隐式消息流转换器
我试图在客户端和服务器之间建立web套接字连接,但数据类型需要隐式MessageFlowTransformer,播放文档仅介绍字符串和JsValue转换,我有以下数据类型: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
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 => ???}