json - 找不到play.api.libs.json.JsObject类型的Json序列化程序作为JsObject

标签 json scala reactivemongo

当引用"org.reactivemongo" %% "play2-reactivemongo" % "0.10.5.0.akka23"时,我有以下代码可在控制台应用程序中使用

当我更新对"org.reactivemongo" % "play2-reactivemongo_2.11" % "0.11.0.play23-M3"的引用时,我得到:


找不到play.api.libs.json.JsObject类型的Json序列化程序作为JsObject。尝试为此类型实现隐式OWrites或OFormat。


import org.joda.time.DateTime
import reactivemongo.bson.BSONObjectID
import play.modules.reactivemongo.json.BSONFormats._

case class GoogleToken
(
  id: Option[BSONObjectID],
  name: String,
  emailAddress: String,
  refreshToken: String,
  expires: DateTime
  )

object GoogleToken {

  import play.api.libs.json.Json

  // Generates Writes and Reads
  implicit val googleTokenFormat = Json.format[GoogleToken]
}


然后

val collection = db.collectionJSONCollection

val query = Json.obj()
val cursor = collection.find(query).
  cursor[GoogleToken](ReadPreference.nearest).
  collect[List]()


我究竟做错了什么?

最佳答案

ReactiveMongo 0.11的最终版本已发布("org.reactivemongo" %% "play2-reactivemongo" % "0.11.0.play23")。

updated documentation所示,对于默认的BSON / JSON转换,建议使用:import play.modules.reactivemongo.json._, ImplicitBSONHandlers._

关于json - 找不到play.api.libs.json.JsObject类型的Json序列化程序作为JsObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31142366/

相关文章:

Flutter 中的 JSON ObjectMapper

java - 如何在 json 文件中编辑和添加嵌套数据?

scala - 如何使用累加器统计leftOuterJoin中没有匹配项的记录?

scala - 是否有规范匹配器可以取消装箱选项和任一

json - 玩 & ReactiveMongo : How to deserialize Json from request in controller

file-upload - 使用 ReactiveMongo 和 GridFS 在 PlayFramework 中调整上传图像的大小

java - 将 Web 请求的字符串转换为 JSON 数组

java - 从 java 中嵌套的 JSON 格式文件中读取值

scala - JavaScript 路由中的可选参数 - 如何指示无

scala - play 2.3/reactivemongo 应用程序上的编译器错误