i am trying to start my server in prod mode but it thows error. i have given code below can someone

125 views
Skip to first unread message

srinivasan....@latentview.com

unread,
Dec 19, 2017, 7:03:40 AM12/19/17
to ReactiveMongo - http://reactivemongo.org
ERROR StatusLogger Log4j2 could not find a logging implementation. Please add log4j-core to the classpath. Using SimpleLogger to log to the console...
Oops, cannot start the server.
com.google.inject.CreationException: Unable to create injector, see the following errors:

1) No implementation for play.modules.reactivemongo.ReactiveMongoApi was bound.
  while locating play.modules.reactivemongo.ReactiveMongoApi
    for parameter 0 at com.bmw.smartInsight.job.JobResult.<init>(JobResult.scala:13)
  while locating com.bmw.smartInsight.job.JobResult
    for parameter 0 at com.bmw.smartInsight.controllers.DBConnectionController.<init>(DBConnectionController.scala:13)
  while locating com.bmw.smartInsight.controllers.DBConnectionController
    for parameter 1 at router.Routes.<init>(Routes.scala:31)
  while locating router.Routes
  while locating play.api.inject.RoutesProvider
  while locating play.api.routing.Router
    for parameter 0 at play.api.http.JavaCompatibleHttpRequestHandler.<init>(HttpRequestHandler.scala:200)
  while locating play.api.http.JavaCompatibleHttpRequestHandler
  while locating play.api.http.HttpRequestHandler
    for parameter 4 at play.api.DefaultApplication.<init>(Application.scala:221)
  at play.api.DefaultApplication.class(Application.scala:221)
  while locating play.api.DefaultApplication
  while locating play.api.Application

2) No implementation for play.modules.reactivemongo.ReactiveMongoApi was bound.
  while locating play.modules.reactivemongo.ReactiveMongoApi
    for parameter 0 at com.bmw.smartInsight.job.JobResult.<init>(JobResult.scala:13)
  while locating com.bmw.smartInsight.job.JobResult
    for parameter 0 at com.bmw.smartInsight.services.DBConnectionService.<init>(DBConnectionService.scala:22)
  while locating com.bmw.smartInsight.services.DBConnectionService
    for parameter 1 at com.bmw.smartInsight.controllers.DBConnectionController.<init>(DBConnectionController.scala:13)
  while locating com.bmw.smartInsight.controllers.DBConnectionController
    for parameter 1 at router.Routes.<init>(Routes.scala:31)
  while locating router.Routes
  while locating play.api.inject.RoutesProvider
  while locating play.api.routing.Router
    for parameter 0 at play.api.http.JavaCompatibleHttpRequestHandler.<init>(HttpRequestHandler.scala:200)
  while locating play.api.http.JavaCompatibleHttpRequestHandler
  while locating play.api.http.HttpRequestHandler
    for parameter 4 at play.api.DefaultApplication.<init>(Application.scala:221)
  at play.api.DefaultApplication.class(Application.scala:221)
  while locating play.api.DefaultApplication
  while locating play.api.Application

3) No implementation for play.modules.reactivemongo.ReactiveMongoApi was bound.
  while locating play.modules.reactivemongo.ReactiveMongoApi
    for parameter 0 at com.bmw.smartInsight.job.JobResult.<init>(JobResult.scala:13)
  while locating com.bmw.smartInsight.job.JobResult
    for parameter 0 at com.bmw.smartInsight.controllers.DBConnectionController.<init>(DBConnectionController.scala:13)
  while locating com.bmw.smartInsight.controllers.DBConnectionController
    for parameter 1 at router.Routes.<init>(Routes.scala:31)
  while locating router.Routes
  while locating play.api.inject.RoutesProvider
  while locating play.api.routing.Router
    for parameter 0 at play.api.http.JavaCompatibleHttpRequestHandler.<init>(HttpRequestHandler.scala:200)
  while locating play.api.http.JavaCompatibleHttpRequestHandler
  while locating play.api.http.HttpRequestHandler
    for parameter 4 at play.api.DefaultApplication.<init>(Application.scala:221)
  at play.api.DefaultApplication.class(Application.scala:221)
  while locating play.api.DefaultApplication
  while locating play.api.Application
    for parameter 0 at play.DefaultApplication.<init>(DefaultApplication.java:30)
  at play.DefaultApplication.class(DefaultApplication.java:30)
  while locating play.DefaultApplication
  while locating play.Application

4) No implementation for play.modules.reactivemongo.ReactiveMongoApi was bound.
  while locating play.modules.reactivemongo.ReactiveMongoApi
    for parameter 0 at com.bmw.smartInsight.job.JobResult.<init>(JobResult.scala:13)
  while locating com.bmw.smartInsight.job.JobResult
    for parameter 0 at com.bmw.smartInsight.services.DBConnectionService.<init>(DBConnectionService.scala:22)
  while locating com.bmw.smartInsight.services.DBConnectionService
    for parameter 1 at com.bmw.smartInsight.controllers.DBConnectionController.<init>(DBConnectionController.scala:13)
  while locating com.bmw.smartInsight.controllers.DBConnectionController
    for parameter 1 at router.Routes.<init>(Routes.scala:31)
  while locating router.Routes
  while locating play.api.inject.RoutesProvider
  while locating play.api.routing.Router
    for parameter 0 at play.api.http.JavaCompatibleHttpRequestHandler.<init>(HttpRequestHandler.scala:200)
  while locating play.api.http.JavaCompatibleHttpRequestHandler
  while locating play.api.http.HttpRequestHandler
    for parameter 4 at play.api.DefaultApplication.<init>(Application.scala:221)
  at play.api.DefaultApplication.class(Application.scala:221)
  while locating play.api.DefaultApplication
  while locating play.api.Application
    for parameter 0 at play.DefaultApplication.<init>(DefaultApplication.java:30)
  at play.DefaultApplication.class(DefaultApplication.java:30)
  while locating play.DefaultApplication
  while locating play.Application

5) No implementation for play.modules.reactivemongo.ReactiveMongoApi was bound.
  while locating play.modules.reactivemongo.ReactiveMongoApi
    for parameter 0 at com.bmw.smartInsight.job.JobResult.<init>(JobResult.scala:13)
  while locating com.bmw.smartInsight.job.JobResult
    for parameter 0 at com.bmw.smartInsight.controllers.DBConnectionController.<init>(DBConnectionController.scala:13)
  while locating com.bmw.smartInsight.controllers.DBConnectionController
    for parameter 1 at router.Routes.<init>(Routes.scala:31)
  while locating router.Routes
  while locating play.api.inject.RoutesProvider
  while locating play.api.routing.Router
    for parameter 0 at play.api.http.JavaCompatibleHttpRequestHandler.<init>(HttpRequestHandler.scala:200)
  while locating play.api.http.JavaCompatibleHttpRequestHandler
  while locating play.api.http.HttpRequestHandler
    for parameter 4 at play.api.DefaultApplication.<init>(Application.scala:221)
  at play.api.DefaultApplication.class(Application.scala:221)
  while locating play.api.DefaultApplication
  while locating play.api.Application
    for parameter 0 at play.DefaultApplication.<init>(DefaultApplication.java:30)
  at play.DefaultApplication.class(DefaultApplication.java:30)
  while locating play.DefaultApplication

6) No implementation for play.modules.reactivemongo.ReactiveMongoApi was bound.
  while locating play.modules.reactivemongo.ReactiveMongoApi
    for parameter 0 at com.bmw.smartInsight.job.JobResult.<init>(JobResult.scala:13)
  while locating com.bmw.smartInsight.job.JobResult
    for parameter 0 at com.bmw.smartInsight.services.DBConnectionService.<init>(DBConnectionService.scala:22)
  while locating com.bmw.smartInsight.services.DBConnectionService
    for parameter 1 at com.bmw.smartInsight.controllers.DBConnectionController.<init>(DBConnectionController.scala:13)
  while locating com.bmw.smartInsight.controllers.DBConnectionController
    for parameter 1 at router.Routes.<init>(Routes.scala:31)
  while locating router.Routes
  while locating play.api.inject.RoutesProvider
  while locating play.api.routing.Router
    for parameter 0 at play.api.http.JavaCompatibleHttpRequestHandler.<init>(HttpRequestHandler.scala:200)
  while locating play.api.http.JavaCompatibleHttpRequestHandler
  while locating play.api.http.HttpRequestHandler
    for parameter 4 at play.api.DefaultApplication.<init>(Application.scala:221)
  at play.api.DefaultApplication.class(Application.scala:221)
  while locating play.api.DefaultApplication
  while locating play.api.Application
    for parameter 0 at play.DefaultApplication.<init>(DefaultApplication.java:30)
  at play.DefaultApplication.class(DefaultApplication.java:30)
  while locating play.DefaultApplication

7) No implementation for play.modules.reactivemongo.ReactiveMongoApi was bound.
  while locating play.modules.reactivemongo.ReactiveMongoApi
    for parameter 0 at com.bmw.smartInsight.job.JobResult.<init>(JobResult.scala:13)
  while locating com.bmw.smartInsight.job.JobResult
    for parameter 0 at com.bmw.smartInsight.controllers.DBConnectionController.<init>(DBConnectionController.scala:13)
  while locating com.bmw.smartInsight.controllers.DBConnectionController
    for parameter 1 at router.Routes.<init>(Routes.scala:31)
  while locating router.Routes
  while locating play.api.inject.RoutesProvider
  while locating play.api.routing.Router
    for parameter 0 at play.api.http.JavaCompatibleHttpRequestHandler.<init>(HttpRequestHandler.scala:200)
  while locating play.api.http.JavaCompatibleHttpRequestHandler
  while locating play.api.http.HttpRequestHandler
    for parameter 4 at play.api.DefaultApplication.<init>(Application.scala:221)
  at play.api.DefaultApplication.class(Application.scala:221)
  while locating play.api.DefaultApplication

8) No implementation for play.modules.reactivemongo.ReactiveMongoApi was bound.
  while locating play.modules.reactivemongo.ReactiveMongoApi
    for parameter 0 at com.bmw.smartInsight.job.JobResult.<init>(JobResult.scala:13)
  while locating com.bmw.smartInsight.job.JobResult
    for parameter 0 at com.bmw.smartInsight.services.DBConnectionService.<init>(DBConnectionService.scala:22)
  while locating com.bmw.smartInsight.services.DBConnectionService
    for parameter 1 at com.bmw.smartInsight.controllers.DBConnectionController.<init>(DBConnectionController.scala:13)
  while locating com.bmw.smartInsight.controllers.DBConnectionController
    for parameter 1 at router.Routes.<init>(Routes.scala:31)
  while locating router.Routes
  while locating play.api.inject.RoutesProvider
  while locating play.api.routing.Router
    for parameter 0 at play.api.http.JavaCompatibleHttpRequestHandler.<init>(HttpRequestHandler.scala:200)
  while locating play.api.http.JavaCompatibleHttpRequestHandler
  while locating play.api.http.HttpRequestHandler
    for parameter 4 at play.api.DefaultApplication.<init>(Application.scala:221)
  at play.api.DefaultApplication.class(Application.scala:221)
  while locating play.api.DefaultApplication

8 errors
        at com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:466)
        at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:184)
        at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110)
        at com.google.inject.Guice.createInjector(Guice.java:96)
        at com.google.inject.Guice.createInjector(Guice.java:84)
        at play.api.inject.guice.GuiceBuilder.injector(GuiceInjectorBuilder.scala:181)
        at play.api.inject.guice.GuiceApplicationBuilder.build(GuiceApplicationBuilder.scala:123)
        at play.api.inject.guice.GuiceApplicationLoader.load(GuiceApplicationLoader.scala:21)
        at play.core.server.ProdServerStart$.start(ProdServerStart.scala:47)
        at play.core.server.ProdServerStart$.main(ProdServerStart.scala:22)
        at play.core.server.ProdServerStart.main(ProdServerStart.scala)


package com.bmw.smartInsight.job

import javax.inject.Inject
import play.api.libs.concurrent.Execution.Implicits.defaultContext
import play.api.libs.json._
import play.modules.reactivemongo.ReactiveMongoApi
import reactivemongo.api.{Cursor, ReadPreference}
import reactivemongo.bson.BSONObjectID
import reactivemongo.play.json.collection.JSONCollection
import scala.concurrent.Future
import play.modules.reactivemongo.json._

import reactivemongo.api.{DefaultDB, MongoConnection, MongoDriver}

class JobResult @Inject()(val reactiveMongoApi: ReactiveMongoApi) {
//
// val mongoUri = "mongodb://127.0.0.1:27017/BMW"
// // Connect to the database: Must be done only once per application
// val driver = MongoDriver()
// val parsedUri = MongoConnection.parseURI(mongoUri)
// // val connection = parsedUri.map(driver.connection(_))
//
//
// /** Mongodb */
// val connection = reactiveMongoApi.driver.connection(mongoUri)
// connection

// lazy val driver = new MongoDriver()
// lazy val connection = driver.connection(List("localhost:27017"))
// lazy val db = connection.database("specs2-test-reactivemongo")


lazy val db = reactiveMongoApi.db
lazy val export_collection = db.collection[JSONCollection]("export")
lazy val readout_collection = db.collection[JSONCollection]("readout_data")
lazy val warranty_collection = db.collection[JSONCollection]("warranty_data")
lazy val cluster_collection = db.collection[JSONCollection]("us_f10_clust")
lazy val defect_cluster_collection = db.collection[JSONCollection]("cluster_results_fin")
lazy val defect_name = db.collection[JSONCollection]("defect_name")
lazy val config_collection = db.collection[JSONCollection]("config_data")
lazy val clusterdata_collection = db.collection[JSONCollection]("clusterdata")

def saveExportData(obj: JsObject, obj_id: Option[String]): String = {
val id = BSONObjectID.generate
if (obj_id != None) {
export_collection.findAndUpdate(
Json.obj("_id" -> Json.obj("$oid" -> id)), obj).isCompleted
obj_id.get
} else {
export_collection.insert(obj).isCompleted
id.stringify
}
}

def saveConfigData(obj: JsObject, config_name: String): String = {
val id = BSONObjectID.generate
if (config_name != None) {
println(obj)
println(config_collection.update(Json.obj("config_name" -> config_name), obj, upsert = true).isCompleted)
id.stringify
} else {
println(obj)
println(config_collection.insert(obj).isCompleted)
println("Config file got inserted")
id.stringify
}
}



Cédric Chantepie

unread,
Dec 20, 2017, 1:10:21 PM12/20/17
to ReactiveMongo - http://reactivemongo.org
Reply all
Reply to author
Forward
0 new messages