Sorry for multiple post. I received a mail from the bot which said my
post was considered as SPAM : I undestand know why, I didn't knew I've
post more than once.

For my problem, I don't think it's such a solution ; I've packed
server and client in the same jar, and this jar use log4 and
commons-logging in its classpath.

I'll try it to separate them tomorow, just to see if I got a more
symapthic Exception.

Thanks for your anwer :-)
 DeMZed

2005/12/8, Jacob Kjome <[EMAIL PROTECTED]>:
>
> First, you only need to post once, and certainly not under two different
> threads.  Be patient.
>
> It seems to me that you don't have Log4j.jar on both the client and server.  
> You
> also should define your logger without "transient".  static's aren't subject 
> to
> serialization in the first place.  So, change you statement to be...
>
> private static final Logger LOG = Logger.getLogger(ClientServer.class);
>
> ...and make sure that log4j.jar is in the classpath of both the client and the
> server.
>
> Jake
>
> Quoting DeMZed <[EMAIL PROTECTED]>:
>
> > Hi,
> >
> > I've made a class ClientServer which extends Thread implements Remote,
> > Serializable to bind it with RMI.
> > Inside, i've got this attribute :
> >
> > private transient static Logger LOG = Logger.getLogger(ClientServer.class);
> >
> >
> > I've made another similar class ClientPartenaire which extends
> > UnicastRemoteObject implements Remote (not a thread)
> > Inside, i've got this attribute :
> >
> > private transient static Logger LOG =
> > Logger.getLogger(ClientPartenaire.class);
> >
> >
> > Then, I've generated stubs for both classes.
> >
> > Thus, I try to serialize it while using RMI server.
> > When I do
> >
> > Naming.rebind("server", new ClientPartenaire ())
> >
> > everything works well
> >
> > but when I do
> >
> > Naming.rebind("server", new ClientServer("demeter"));
> >
> > I get this stacktrace :
> >
> > java.rmi.ServerError: Error occurred in server thread; nested exception is:
> >       java.lang.NoClassDefFoundError: Lorg/apache/log4j/Logger;
> >       at 
> > sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:382)
> >
> >       at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:240)
> >       at sun.rmi.transport.Transport$1.run(Transport.java:153)
> >       at java.security.AccessController.doPrivileged(Native Method)
> >       at sun.rmi.transport.Transport.serviceCall
> > (Transport.java:149)
> >       at 
> > sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
> >       at
> >
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
> >       at java.lang.Thread.run(Thread.java
> > :595)
> >       at 
> > sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(Unknown
> > Source)
> >       at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown Source)
> >       at sun.rmi.server.UnicastRef.invoke(Unknown Source)
> >
> >       at sun.rmi.registry.RegistryImpl_Stub.bind(Unknown Source)
> >       at java.rmi.Naming.bind(Unknown Source)
> >       at i2.application.demeter.client.RunClient.main(RunClient.java:61)
> > Caused by: java.lang.NoClassDefFoundError: Lorg/apache/log4j/Logger;
> >
> >       at java.lang.Class.getDeclaredFields0(Native Method)
> >       at java.lang.Class.privateGetDeclaredFields(Class.java:2232)
> >       at java.lang.Class.getDeclaredField(Class.java:1852)
> >       at java.io.ObjectStreamClass.getDeclaredSUID
> > (ObjectStreamClass.java:1555)
> >       at java.io.ObjectStreamClass.access$600(ObjectStreamClass.java:47)
> >       at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:381)
> >       at java.security.AccessController.doPrivileged(Native Method)
> >
> >       at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:373)
> >       at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:268)
> >       at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:504)
> >
> > If I comment all lines using attribute LOG and delete attribute LOG,
> > keeping the import for Logger class, I get this error again. Then, if
> > I delete the import, the error disapears !
> > Furthermore, if I use java.util.Logging, I do not have this error again.
> >
> > Any idea why do I get this error ?
> >
> > Thanks a lot for your help :)
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to