Ich habe einen Java-Client, der einen automatisch generierten Port erhält. Nach dem Starten des Actor-Systems möchte ich auf den Port zugreifen.Akka Remote: get automatisch generierten Port
Config clientConfig = ConfigFactory.parseString("akka.remote.netty.tcp.port = 0")
.withFallback(ConfigFactory.parseString("akka.remote.netty.tcp.hostname = " + serverHostName))
.withFallback(ConfigFactory.load("common"));
actorSystem = ActorSystem.create("clientActorSystem", clientConfig);
// how to access the generated port here..!?
Der Port muss bereits eingestellt werden, da die Protokollausgabe nach ActorSystem.create(...)
wie das ist:
[INFO] [03/31/2016 14:11:32.042] [main] [akka.remote.Remoting] Starting remoting
[INFO] [03/31/2016 14:11:32.233] [main] [akka.remote.Remoting] Remoting started; listening on addresses :[akka.tcp://[email protected]:58735]
[INFO] [03/31/2016 14:11:32.234] [main] [akka.remote.Remoting] Remoting now listens on addresses: [akka.tcp://[email protected]:58735]
Wenn ich versuche es über die Konfiguration mit actorSystem.settings().config().getValue("akka.remote.netty.tcp.port")
zu bekommen, ich vorher definiert noch 0 erhalten.
Hat jemand eine Idee, wie dieser Port (58735 in dem Beispiel) zugegriffen werden kann?
Danke Danny! Das hat auch in Java funktioniert :-) – oustriem