Yeah, it's not fun debugging class loader issues. I concur that the error message indicates that the class Acknowledged$ is not in the classpath of the frontend. It fails during deserialization.
What does Acknowledged$ look like? Is it a case object? Companion object? Can you try with another class, such as a case class. Regards, Patrik On Mon, Nov 24, 2014 at 5:32 PM, Hengky Sucanda <[email protected]> wrote: > Hi Martynas, > > Yes the class (without the dollar sign) is in the classpath. It is > actually in another project that i made to depends on the frontend and > backend > > On Thursday, November 13, 2014 6:35:08 PM UTC+7, Martynas Mickevičius > wrote: >> >> Hi Hengky, >> >> could you make sure that Acknowledged$ class is in the classpath of the >> node where you see this error? >> >> On Mon, Nov 10, 2014 at 1:30 PM, Hengky Sucanda <[email protected]> >> wrote: >> >>> Hi Everyone! >>> >>> I have been trying to implement akka clustering and sharding with >>> persistent actor, i seperated the projects in 3 projects (*api, >>> backend, and frontend*). I started 2 backend nodes with different >>> ports, and one frontend cluster. I use cluster client in the frontend side, >>> the command was able to be sent to the backend but i cannot get any message >>> back (it is supposed to send an acknowledgment message back). Here is the >>> error log >>> >>> [ERROR] [11/10/2014 18:22:21.468] >>> [se3-actor-system-akka.remote.default-remote-dispatcher-6] >>> [akka.tcp://[email protected]:51599/system/endpointManager/ >>> reliableEndpointWriter-akka.tcp%3A%2F%2Fse3-actor-system% >>> 40127.0.0.1%3A2552-1/endpointWriter] AssociationError [akka.tcp:// >>> [email protected]:51599] -> [akka.tcp://se3-actor-system@ >>> 127.0.0.1:2552]: Error >>> [com.icehousecorp.common.support.domain.protocol.Acknowledged$] >>> [ >>> java.lang.ClassNotFoundException: com.icehousecorp.common. >>> support.domain.protocol.Acknowledged$ >>> at java.net.URLClassLoader$1.run(URLClassLoader.java:372) >>> at java.net.URLClassLoader$1.run(URLClassLoader.java:361) >>> at java.security.AccessController.doPrivileged(Native Method) >>> at java.net.URLClassLoader.findClass(URLClassLoader.java:360) >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:424) >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:357) >>> at java.lang.Class.forName0(Native Method) >>> at java.lang.Class.forName(Class.java:340) >>> at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:626) >>> at akka.util.ClassLoaderObjectInputStream.resolveClass( >>> ClassLoaderObjectInputStream.scala:19) >>> at java.io.ObjectInputStream.readNonProxyDesc( >>> ObjectInputStream.java:1613) >>> at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1518) >>> at java.io.ObjectInputStream.readOrdinaryObject( >>> ObjectInputStream.java:1774) >>> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) >>> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371) >>> at akka.serialization.JavaSerializer$$anonfun$1. >>> apply(Serializer.scala:136) >>> at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58) >>> at akka.serialization.JavaSerializer.fromBinary(Serializer.scala:136) >>> at akka.serialization.Serialization$$anonfun$deserialize$1.apply( >>> Serialization.scala:104) >>> at scala.util.Try$.apply(Try.scala:191) >>> at akka.serialization.Serialization.deserialize(Serialization.scala:98) >>> at akka.remote.MessageSerializer$.deserialize( >>> MessageSerializer.scala:23) >>> at akka.remote.DefaultMessageDispatcher.payload$lzycompute$1(Endpoint. >>> scala:58) >>> at akka.remote.DefaultMessageDispatcher.payload$1(Endpoint.scala:58) >>> at akka.remote.DefaultMessageDispatcher.dispatch(Endpoint.scala:76) >>> at akka.remote.EndpointReader$$anonfun$receive$2.applyOrElse( >>> Endpoint.scala:937) >>> at akka.actor.Actor$class.aroundReceive(Actor.scala:465) >>> at akka.remote.EndpointActor.aroundReceive(Endpoint.scala:415) >>> 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:393) >>> at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) >>> at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue. >>> runTask(ForkJoinPool.java:1339) >>> at scala.concurrent.forkjoin.ForkJoinPool.runWorker( >>> ForkJoinPool.java:1979) >>> at scala.concurrent.forkjoin.ForkJoinWorkerThread.run( >>> ForkJoinWorkerThread.java:107) >>> ] >>> [WARN] [11/10/2014 18:22:21.471] >>> [se3-actor-system-akka.remote.default-remote-dispatcher-5] >>> [akka.tcp://[email protected]:51599/system/endpointManager/ >>> reliableEndpointWriter-akka.tcp%3A%2F%2Fse3-actor-system% >>> 40127.0.0.1%3A2552-1] Association with remote system [akka.tcp:// >>> [email protected]:2552] has failed, address is now gated for >>> [5000] ms. Reason is: [com.icehousecorp.common.support.domain.protocol. >>> Acknowledged$]. >>> >>> This file (com.icehousecorp.common.support.domain.protocol.Acknowledged) >>> is located at the API project and the frontend project depends on the APi >>> project (in the build.sbt). >>> >>> Can anyone help me out why it throws error even though i have made it >>> depends on the required project? >>> >>> -- >>> >>>>>>>>>> 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. >>> >> >> >> >> -- >> Martynas Mickevičius >> Typesafe <http://typesafe.com/> – Reactive >> <http://www.reactivemanifesto.org/> Apps on the JVM >> > -- > >>>>>>>>>> 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. > -- Patrik Nordwall Typesafe <http://typesafe.com/> - Reactive apps on the JVM Twitter: @patriknw -- >>>>>>>>>> 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.
