特征 BSONFormats 中的对象 BSONDocumentFormat 已弃用:0.11.9

object BSONDocumentFormat in trait BSONFormats is deprecated: 0.11.9

我有一个接收输入 JSON 并使用 "com.eclipsesource" %% "play-json-schema-validator" % "0.6.2" 根据给定的 JSON-Schema 对其进行验证的函数。整个设置运行良好,直到我开始收到有关已弃用库的警告。如您所见,我正在使用 Ok(Json.toJson(result))) 将类型 scala.List[BSONDocument] 结果 转换为 JSON。这是使用 import play.modules.reactivemongo.json.BSONFormats._ 库完成的。我真的很喜欢这种转换的简单性和简单性,但是,我收到以下警告:

object BSONDocumentFormat in trait BSONFormats is deprecated: 0.11.9

而且,这是我的实际功能:

def getMessage(campaignID: String, revision: Int, transactionID: Int ) = 
   Action.async { implicit request =>

  db.getDocument(campaignID, revision, transactionID)
  .map(result =>
  Ok(Json.toJson(result)))
  .recover {case ex: IOException => InternalServerError("Please install MongoDB")}

}

是否有其他方法可以做到这一点?库开发者为什么要删除这么有用的功能?

根据@cchantep 的评论,我能够通过替换来解决问题:

import play.modules.reactivemongo.json.BSONFormats._

与:

import reactivemongo.play.json.BSONFormats._