[jboss-user] [Remoting] - Re: InstantiationException with client passed proxies

cdelashmutt do-not-reply at jboss.com
Fri Aug 11 23:53:32 EDT 2006


I tried making the MBean use the new 2.0.0.CR2 release, but I ran into some strange problems.  So to help isolate things, I ran the server component outside of the App Server.  Basically, I just added a main method to explictly call the startup methods which create the Transporter server.  The client remained the same.

I can now send a proxy to the server for the Person object, and it can work with it.  However, when the server tries to call a method (void setAge (int age)) on the Person object proxy that was passed in, I get a ClassNotFoundException:


  | Exception in thread "main" java.lang.reflect.UndeclaredThrowableException
  | 	at $Proxy0.setAge(Unknown Source)
  | 	at com.foo.server.impl.TestRemoteImpl.applyRules(TestRemoteImpl.java:53)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.jboss.remoting.transporter.TransporterHandler.invoke(TransporterHandler.java:74)
  | 	at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:999)
  | 	at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:848)
  | 	at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:447)
  | 	at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:534)
  | 	at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:257)
  | 	at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:163)
  | 	at org.jboss.remoting.Client.invoke(Client.java:612)
  | 	at org.jboss.remoting.Client.invoke(Client.java:604)
  | 	at org.jboss.remoting.Client.invoke(Client.java:589)
  | 	at org.jboss.remoting.transporter.TransporterClient.invoke(TransporterClient.java:276)
  | 	at $Proxy0.applyRules(Unknown Source)
  | 	at com.foo.client.TestClient.main(TestClient.java:66)
  | Caused by: java.lang.ClassNotFoundException: int
  | 	at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
  | 	at java.security.AccessController.doPrivileged(Native Method)
  | 	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
  | 	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
  | 	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
  | 	at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
  | 	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
  | 	at java.lang.Class.forName0(Native Method)
  | 	at java.lang.Class.forName(Class.java:164)
  | 	at org.jboss.remoting.transporter.TransporterHandler.invoke(TransporterHandler.java:69)
  | 	at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:999)
  | 	at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:848)
  | 	at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:447)
  | 	at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:520)
  | 	at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:257)
  | 	at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:163)
  | 	at org.jboss.remoting.Client.invoke(Client.java:612)
  | 	at org.jboss.remoting.Client.invoke(Client.java:604)
  | 	at org.jboss.remoting.Client.invoke(Client.java:589)
  | 	at org.jboss.remoting.transporter.TransporterClient.invoke(TransporterClient.java:276)
  | 	at $Proxy0.setAge(Unknown Source)
  | 	at com.foo.server.impl.TestRemoteImpl.applyRules(TestRemoteImpl.java:53)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.jboss.remoting.transporter.TransporterHandler.invoke(TransporterHandler.java:74)
  | 	at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:999)
  | 	at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:848)
  | 	at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:447)
  | 	at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:534)
  | 	at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:257)
  | 

I can't believe that remoting isn't able to sent primitives, so I must be doing something wrong again.

Any more thoughts?

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3964738#3964738

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3964738



More information about the jboss-user mailing list