[kaffe] java.io.ObjectInputStream: final field cannot be restored

jserv@linux2.cc.ntu.edu.tw jserv@linux2.cc.ntu.edu.tw
Wed Mar 24 00:12:02 2004


On Wed, Mar 24, 2004 at 02:56:18PM +0900, Ito Kazumitsu wrote:
> cannot run on kaffe.  After studying the cause of the error,
> I found something buggy in java.io.ObjectInputStream.
> (1) Kaffe --> Kaffe
> $bash java Test01 write | java Test01 read
> t2=Test01@8291b64 null B
> t1=Test01@81459b4 A B

Here is my result using Kaffe 1.1.x-cvs:

/opt/bin/kaffe -cp . Test01 write  | /opt/bin/kaffe -cp . Test01 read
t1=Test01@81192f4 A B
t2=Test01@822fda4 A B

so, I decided to run prevayler's demo, and I got the following message:

$ /opt/bin/kaffe -cp ../prevayler2.01.000alpha.jar:.
org.prevayler.demos.demo1.Main

Robustness Reminder: You can kill this process at any time.
When you restart the system, you will see that nothing was lost.
Press Enter to continue.

java.lang.NullPointerException
   at org.prevayler.demos.demo1.NumberKeeper.keep (NumberKeeper.java:16)
   at org.prevayler.demos.demo1.NumberStorageTransaction.executeOn
(NumberStorageTransaction.java:21)
   at
org.prevayler.implementation.publishing.censorship.StrictTransactionCensor.approve
(StrictTransactionCensor.java:31)
   at org.prevayler.implementation.publishing.CentralPublisher.approve
(CentralPublisher.java:89)
   at
org.prevayler.implementation.publishing.CentralPublisher.publishWithoutWorryingAboutNewSubscriptions
(CentralPublisher.java:63)
   at org.prevayler.implementation.publishing.CentralPublisher.publish
(CentralPublisher.java:49)
   at org.prevayler.implementation.PrevaylerImpl.publish
(PrevaylerImpl.java:63)
   at org.prevayler.implementation.PrevaylerImpl.execute
(PrevaylerImpl.java:58)
   at org.prevayler.demos.demo1.PrimeCalculator.start
(PrimeCalculator.java:31)
   at org.prevayler.demos.demo1.Main.main (Main.java:14)

Any hints?

Jim Huang