IntelliJ 14.1.4 と Play フレームワーク 2.4 を使用しています。この github プロジェクト ( https://github.com/JAVEO/play-reactivemongo-polymer)からいくつかのコードをコピーして、 reactivemongo をテストしました。基本的に、Posts.scala をコントローラー フォルダーにコピーしました。それはクラスです:
package controllers
import javax.inject.Inject
import play.api.libs.concurrent.Execution.Implicits.defaultContext
import play.api.libs.json.Json
import play.api.mvc.{Action, BodyParsers, Call, Controller, Result}
import play.modules.reactivemongo.{MongoController, ReactiveMongoApi, ReactiveMongoComponents}
import reactivemongo.api.commands.WriteResult
import reactivemongo.bson.{BSONDocument, BSONObjectID}
import reactivemongo.core.actors.Exceptions.PrimaryUnavailableException
class Posts @Inject()(val reactiveMongoApi: ReactiveMongoApi)
extends Controller with MongoController with ReactiveMongoComponents {
...
}
ルート ファイルで、IntelJ は次の行を解決できません。
GET /api/posts controllers.Posts.list
IntelJ はオブジェクトとして宣言されたコントローラーのみを認識し、クラスは認識しないようです。
アクティベーターを使用してこれを実行しようとすると、コンパイル エラーが発生しました。
No Json serializer as JsObject found for type play.api.libs.json.JsObject. Try to implement an implicit OWrites or OFormat for this type
...
何か助けはありますか?