Hi,
I am getting the following error, I have only one CMP entity bean with oracle DB and one session bean.
In my session bean I am using the following logging.
private final Category log = Category.getInstance(getClass().getName());
..
..
log.info(...)
Any Idea, Why I am getting this error.
-Sr
[Container factory] java.rmi.ServerException: Could not passivate; nested except
ion is:
[Container factory] java.io.NotSerializableException: org.apache.log4j.Categ
ory
[Container factory] java.io.NotSerializableException: org.apache.log4j.Category
[Container factory] at java.io.ObjectOutputStream.outputObject(ObjectOutputS
tream.java:1148)
[Container factory] at java.io.ObjectOutputStream.writeObject(ObjectOutputSt
ream.java:366)
[Container factory] at java.io.ObjectOutputStream.outputClassFields(ObjectOu
tputStream.java:1841)
[Container factory] at java.io.ObjectOutputStream.defaultWriteObject(ObjectO
utputStream.java:480)
[Container factory] at java.io.ObjectOutputStream.outputObject(ObjectOutputS
tream.java:1214)
[Container factory] at java.io.ObjectOutputStream.writeObject(ObjectOutputSt
ream.java:366)
[Container factory] at org.jboss.ejb.plugins.StatefulSessionFilePersistenceM
anager.passivateSession(StatefulSessionFilePersistenceManager.java:285)
[Container factory] at org.jboss.ejb.plugins.StatefulSessionInstanceCache.pa
ssivate(StatefulSessionInstanceCache.java:67)
[Container factory] at org.jboss.ejb.plugins.AbstractInstanceCache$1.execute
(AbstractInstanceCache.java:709)
[Container factory] at org.jboss.util.WorkerQueue$QueueLoop.run(WorkerQueue.
java:199)
[Container factory] at java.lang.Thread.run(Thread.java:484)
try private transient Category log = Category.getInstance(getClass().getName());
but you've to manually reinit this field in activate().
Or maybe you could set it private static final transient?