PQ73371: Serialization of Internationalization
Context fails
Downloadable files
Abstract
Serialization of Internationalization Context fails in
WebSphere Application Server V5 when interoperating over releases 5.0.0
and 5.0.1
Download Description
This interim fix addresses Internationalization service
interoperability issues between WebSphere Application Server, Version
5.0.0 and Version 5.0.1.
The WebSphere Application Server Enterprise, Version 5
internationalization service has an interoperability problem that affects
how dependent services and customer applications behave when deserializing
internationalization context across interoperating WebSphere Application
Server, Version 5 and Version 5.0.1 products.
Internationalization context created by the Internationalization service
causes an InvalidClassException
when deserialized within the WebSphere Application Server runtime
environment. This is true whenever:
--Internationalization context created by Version 5.0 and deserialized
within the V5.0.1 runtime environment.
--Internationalization context is created by Version 5.0.1 and
deserialized within the V5 runtime environment.
Because internationalization service documentation does not instruct
customers towards the manual serialization or deserialization of
internationalization context, you should rarely, if ever, directly
encounter this problem within your applications. However, it can manifest
indirectly when
interoperating between Version 5 and Version 5.0.1 releases of WebSphere
Application Server Enterprise services that process Java 2 Platform,
Enterprise Edition (J2EE) contextual information.
The following services are affected by interim fix PQ73371:
Internationalization
Asynchronous beans
Scheduler
Process choreography
To categorically avoid this problem, install the interim fix PQ73371 in
all Version 5.0.1 server environments.
The following section describes the specific problematic behaviors.
Problem description: internationalization
---------------------------------------------------
When attempting to deserialize internationalization context imported on an
incoming EJB (RMI/IIOP) method request between interoperating Version 5
and Version 5.0.1 releases of WebSphere Application Server Enterprise, the
internationalization service displays a message indicating an unexpected
exception, "InvalidClassException," and then scopes the default locale and
time zone of the local Java virtual machine (JVM) as the caller
internationalization context of the EJB method. Because the
internationalization application programming interface (API) provides
methods to set invocation internationalization context, not caller
internationalization context, this behavior is immutable.
This problem appears whenever the following three conditions exist:
1. An EJB method request is invoked between interoperating Version 5 and
Version 5.0.1 releases of WebSphere Application Server Enterprise.
2. The internationalization service is enabled in the invoking client or
server environment.
3. The internationalization service is enabled in the target server
environment.
To avoid this problem, install the interim fix for PQ73371 to all Version
5.0.1 server environments.
Problem description: asynchronous beans
------------------------------------------------------
Asynchronous beans allow taking snapshots of Java 2 Platform, Enterprise
Edition (J2EE) contextual information from the current servlet or EJB
method. Such a snapshot is taken when using the WorkManager.create(Work r)
method to obtain an instance of WorkWithExecutionContext --> a
serializable object that can be stored for future use. An instance of
WorkWithExecutionContext contains internationalization context whenever:
1. The WorkManager resource used to create the instance has the
com.ibm.ws.i18n context policy attribute enabled, and
2. The internationalization service is enabled.
Due to the internationalization service interoperability problem described
above, deserializing WorkWithExecutionContext objects containing
internationalization context created on the other
version fails with an SerialDeserialException. This is true for:
--Version 5 WorkWithExecutionContext objects containing
Internationalization context are deserialized on V5.0.1.
--Version 5.0.1 WorkWithExecutionContext objects containing
Internationalization context are deserialized on V5.
In the event that asynchronous beans serialization mechanisms process an
inoperable internationalization context within a WorkWithExecutionContext,
and that interim fix PQ72742 is installed in the server environment,
asynchronous beans display a message in the service logs that indicates an
unexpected exception occurred involving the internationalization service:
ASYN9999E: Unexpected Exception Occurred:
com.ibm.websphere.asynchbeans.SerialDeserialException:
Exception while deserializing a saved service. Service=com.ibm.ws.i18n.
When an asynchronous beans WorkManager begins executing a
WorkWithExecutionContext instance with an invalid or missing
internationalization context, and the internationalization service is
enabled, the asynchronous beans scopes the default locale and time zone of
the host JVM to the Work rather than the current invocation
internationalization context.
To avoid this problem, install the interim fix for PQ73371 to all Version
5.0.1 server environments, and follow the directions prescribed in section
PQ72742.RN.
Problem description: process choreography
-------------------------------------------------------
The process choreographer service employs the asynchronous beans
serialization mechanisms when creating and executing interruptible flows.
If a flow is unable to deserialize the internationalization context, and
the internationalization service is enabled during execution, both
compensating tasks and the flows themselves incorrectly use the default
locale and time zone of the local JVM rather than the current invocation
internationalization context. See -> Problem description: asynchronous
beans for error messages and further details.
To avoid this problem, install the interim fix for PQ73371 to all Version
5.0.1 server environments, and follow the directions prescribed in section
PQ72742.RN.
Prerequisites
Please download the update installer below to install this fix.