|
Problem |
After upgrading from WebSphere® Application Server 4.0.2
(or earlier) to a later fix pack, when an ejbHandle is serialized for
persistence and then deserialized to retrieve the ejbHandle, the following
exception is issued:
java.io.InvalidClassException: com.ibm.ejs.csi.SessionHandle; Local class
not compatible: stream classdesc
serialVersionUID=-8306538725233355912 local class
serialVersionUID=-8306435371140344968
at
java.io.ObjectStreamClass.validateLocalClass(ObjectStreamClass.java:565)
at java.io.ObjectStreamClass.setClass(ObjectStreamClass.java:609)
... |
|
Cause |
This is due to a change in the JDK™ that shipped with
WebSphere 4.0.3 and later. The problem did not occur with the JDK that
shipped with WebSphere 4.0.2 and earlier. |
|
Solution |
The solution to the problem is to specify a JVM command
line argument -Dfile.encoding=ISO8859_1 as follows:
In WebSphere 4.0.x AE,
- Start the Administrative Server and open the administrative
console.
- Expand Nodes, the node name, Application Servers, and the Application
Server name.
- Select JVM Settings.
- Click Add next to System Properties.
- For the Name field, type -Dfile.encoding and for the Value,
type ISO8859_1.
- Click Apply.
- Restart the Application Server.
In WebSphere 4.0.x AEs, follow these steps:
- Start the server and open the administrative console.
- Expand Nodes, the node name, Application Servers, the server name, and
Process Definition.
- Select JVM Settings.
- Scroll down and click System Properties.
- Click New.
- For the Name, type -Dfile.encoding and for the Value, type
ISO8859_1.
- Click OK and save the configuration.
- Restart the server.
|
|
|
|
|
|
|