Let's not forget the 3rd solution of explicitly specify the serialVersionUID
(private static final long) for the class, which seems to be the best
solution.

-- Stoehr

-----Original Message-----
From: Vincent Harcq [mailto:[EMAIL PROTECTED]]
Sent: Thursday, March 01, 2001 08:54 AM
To: [EMAIL PROTECTED]
Subject: ActionErrors and Debug Info of JBuilder saved in the Class
Files


Hi!
I was faced to a strange problems, I finally found the solution, you may
want to make this changes to Struts so that other users does not have the
same issue.  Let's begin the story.

I pass ActionErrors between Tomcat and JBoss.
I build JBoss EJB JAR with ActionErrors.class in the JAR file.

I build/debug classes for Tomcat with JBuilder 4.

I receive ClassCastException because the two classes does not have the same
serialVersionUID because when JBuilder compile, it includes some
informations in the Class.
Because of the static final definition, the serialVersionUID is changed by
JBuilder compilation.

So my problem.

The solution
(http://www.visi.com/~gyles19/cgi-bin/fom.cgi?_recurse=1&file=1#file_63) is
simply to add

        private static int DUMMY=1;

in ActionErrors, then the class generated by JBuilder is the same as any
compiler.

The other solution is to avoid JBuilder putting Debug info in the class
files.

End of the story.

Vincent.

Reply via email to