[Ich bin neu bearbeite diese Frage auf meiner letzten Tests zu reflektieren]reactivemongo spielen 2.3 0.11.7 bis 0.11.11 Upgrade erhöht ExceptionInInitializerError
Ich versuche, meine akka/spielen 2.3 Anwendung von
Upgrade"org.reactivemongo" %% "play2-reactivemongo" % "0.11.7.play23"
zu
"org.reactivemongo" %% "play2-reactivemongo" % "0.11.11-play23"
Compilation geht in Ordnung, aber zur Laufzeit bekomme ich folgende Fehlermeldung:
[ERROR] -- NettyTransport(akka://reactivemongo)
failed to bind to /127.0.0.1:2552, shutting down Netty transport
...
Caused by: org.jboss.netty.channel.ChannelException: Failed to bind to: /127.0.0.1:2552
Der Akka Teil application.conf lautet wie folgt:
akka {
loggers = ["akka.event.slf4j.Slf4jLogger"]
loglevel = "DEBUG"
actor {
provider = "akka.remote.RemoteActorRefProvider"
mailbox {
requirements {
"akka.dispatch.BoundedMessageQueueSemantics" = bounded-mailbox
}
}
}
remote {
enabled-transports = ["akka.remote.netty.tcp"]
netty.tcp {
hostname = "127.0.0.1"
port = 2552
}
}
}
Die Ausnahme wird ausgelöst, wenn versucht, die reactivemongo zu instanziiert Treiber
val driver = new reactivemongo.api.MongoDriver()
Dies deutet darauf hin, dass die mongodriver Akka unter der Haube verwendet wird, und wird auf die gleiche Adresse, die meine Hauptanwendung zu binden. Und in der Tat, wenn ich meine application.conf bearbeiten und die akka.remote.netty.tcp.port 2552-2553 ändern, erhalte ich die folgende Ausnahme:
[ERROR] -- NettyTransport(akka://reactivemongo)
failed to bind to /127.0.0.1:2553, shutting down Netty transport
In den früheren Versionen von reactivemongo, standardmäßig Instanziieren des Treibers begann ein neues Akteursystem, vielleicht versucht Version 0.11.11 das vorhandene System wiederzuverwenden?
ich den akka Port durch den Fahrer zu ändern versucht haben, wie folgt:
val customConf = ConfigFactory.parseString("""
akka {
remote {
netty.tcp.port = 4711
}
}
""")
val typesafeConfig: com.typesafe.config.Config = ConfigFactory.load(customConf)
val driver = new reactivemongo.api.MongoDriver(Some(typesafeConfig))
Aber das funktioniert nicht, wird der neue Hafen nicht berücksichtigt, und ich halte den gleichen Fehler:
[ERROR] -- NettyTransport(akka://reactivemongo)
failed to bind to /127.0.0.1:2552, shutting down Netty transport
Teile Code/reproducer – cchantep
OK, würde helfen, habe ich nur noch einigen Kontext Code. – david
Sie verwenden 'connection (..)' aka 'connection.apply', verwenden Sie besser die neue' connection.database', die die richtige DB-Auflösung hat. – cchantep