eFix (APAR): PQ54691 Status: eFix For Release: WebSphere 3.5.4 For Operating System: ALL Prerequisite eFixes: Included eFixes: CMVC defect: PQ54691 Date: 11/05/01 Abstract: Session not available on a switch to another clone in a clustered environment on the second request. Description/symptom of problem: This problem can occur only in a clustered environment. When a session gets created in a jsp/servlet it was being persisted at the end of the service method only after the response was being written back to the client. In the meanwhile, if a second request came in and a switch took place to another clone there is a possibility that the first clone was not able to persist the session object in time hence making it unavailable to the second clone. This fix will make the session object to be persisted before the response is flushed back to the client. However, in cases where an explicit flush is performed by the application or the buffer getting filled up the fix will not be helpful. For such situations the following workarounds can be used : 1. If possible avoid situations where a second request can come in without the session object having been persisted on the first request. For instance, if your login page is a html convert it into a jsp so that the session object which is created in the jsp by default gets persisted. That way on a switch the second request would be able to locate the session object even though it would be empty. 2. The customer can remove any explict flush statements in their code. This will cause the response to be returned only at the end of the service method. This in conjunction with my fix will ensure that the session object is available for the next request. 3. If the customer is not using explicit flush statements and the response is getting returned because the buffer is getting filled up the customer can increase the buffer size in their servlets/jsp's programatically. Directions to apply efix: 1) Create "efix" directory to store the efix jar file(s): AIX: /usr/WebSphere/AppServer/efix Solaris: /opt/WebSphere/AppServer/efix Linux: /opt/IBMWebAS/efix Windows: c:\WebSphere\AppServer\efix 2) Copy PQ54691.jar to the directory. 3) Add the directory/jar file to the beginning of the admin server's classpath in admin.config: com.ibm.ejs.sm.adminserver.classpath=C:/WebSphere/AppServer/efix/PQ54691.jar;... 4) Stop and restart the Admin Server Additional Information: none ------------------------------------------------------------------