Hi Sergey, If you see a java.lang.NoSuchMethodException that cannot mean anything else than versions are mixed up in your project. Are you sure *all* Akka artifacts (jar files) you have on the classpath share the same version?
> and adding 'version = "2.3.14"' doesn't generate akka.ConfigurationException, That cannot guarantee that all JARs are of that version, it will only check akka-actor. Akka remote jars might still be on a different version on your classpath. -Endre On Sat, Sep 26, 2015 at 9:46 PM, Sergey Anufrienko < [email protected]> wrote: > Hello, > > I'm writing a distributed application and want to store remote path of > Actors in a central database, so that other network nodes can send messages > to the Actors. > I found a way to get the "default" full path as used in the clustering > support for Akka: > http://doc.akka.io/docs/akka/2.3.14/scala/serialization.html > > 1. object ExternalAddress extends ExtensionKey[ExternalAddressExt] > 2. > 3. class ExternalAddressExt(system: ExtendedActorSystem) extends > Extension { > 4. def addressForAkka: Address = system.provider.getDefaultAddress > 5. } > 6. > 7. def serializeAkkaDefault(ref: ActorRef): String = > 8. ref.path.toSerializationFormatWithAddress(ExternalAddress( > theActorSystem). > 9. addressForAkka) > > > However after I added this code into my project and tried to call the > serializeAkkaDefault function results in the following stack trace: > > [ERROR] [09/26/2015 22:25:28.022] [FSM-akka.actor.default-dispatcher-3] > [akka://FSM/user/c2s-127.0.0.1:45607:38689] > main.scala.ClientFSM$ExternalAddressImpl.<init>(akka.actor.ExtendedActorSystem) > java.lang.NoSuchMethodException: > main.scala.ClientFSM$ExternalAddressImpl.<init>(akka.actor.ExtendedActorSystem) > at java.lang.Class.getConstructor0(Class.java:2902) > at java.lang.Class.getDeclaredConstructor(Class.java:2066) > at > akka.actor.ReflectiveDynamicAccess$$anonfun$createInstanceFor$2.apply(DynamicAccess.scala:76) > at scala.util.Try$.apply(Try.scala:192) > at > akka.actor.ReflectiveDynamicAccess.createInstanceFor(DynamicAccess.scala:73) > at akka.actor.ExtensionKey.createExtension(Extension.scala:153) > at > akka.actor.ActorSystemImpl.registerExtension(ActorSystem.scala:713) > at akka.actor.ExtensionId$class.apply(Extension.scala:79) > at akka.actor.ExtensionKey.apply(Extension.scala:149) > at main.scala.ClientFSM.getActorAddress(ClientFSM.scala:48) > at main.scala.ClientFSM$$anonfun$6.applyOrElse(ClientFSM.scala:166) > at main.scala.ClientFSM$$anonfun$6.applyOrElse(ClientFSM.scala:159) > at scala.PartialFunction$OrElse.apply(PartialFunction.scala:167) > at akka.actor.FSM$class.processEvent(FSM.scala:607) > at main.scala.ClientFSM.processEvent(ClientFSM.scala:35) > at akka.actor.FSM$class.akka$actor$FSM$$processMsg(FSM.scala:598) > at akka.actor.FSM$$anonfun$receive$1.applyOrElse(FSM.scala:592) > at akka.actor.Actor$class.aroundReceive(Actor.scala:467) > at main.scala.ClientFSM.aroundReceive(ClientFSM.scala:35) > at akka.actor.ActorCell.receiveMessage(ActorCell.scala:516) > at akka.actor.ActorCell.invoke(ActorCell.scala:487) > at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:238) > at akka.dispatch.Mailbox.run(Mailbox.scala:220) > at > akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:397) > > Googing shows this error could show up if I have an old version of Akka on > my classpath. I'm not sure if this is my case, however. > I'm running project via SBT and adding 'version = "2.3.14"' to > application.conf doesn't generate akka.ConfigurationException, which > indicates that version being used is actually 2.3.14 > > I've already spent few hours searching for a solution to no avail. Could > someone please point me in the right direction? > > Thanks! > > > -- > >>>>>>>>>> Read the docs: http://akka.io/docs/ > >>>>>>>>>> Check the FAQ: > http://doc.akka.io/docs/akka/current/additional/faq.html > >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user > --- > You received this message because you are subscribed to the Google Groups > "Akka User List" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/akka-user. > For more options, visit https://groups.google.com/d/optout. > -- Akka Team Typesafe - Reactive apps on the JVM Blog: letitcrash.com Twitter: @akkateam -- >>>>>>>>>> Read the docs: http://akka.io/docs/ >>>>>>>>>> Check the FAQ: >>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups "Akka User List" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
