eFix (APAR): PQ58584 Status: efix For Release: WebSphere 4.0.2 For Edition: WebSphere AE, AEs For ContainerTypes: AEServer, AEsServer, J2EE client, Thin client For Operating System: All supported by WebSphere Supercedes eFixes: PQ58498 CMVC defect: PQ58584 Byte size of APAR: 876,921 Date: 03/04/2002 Abstract: EJB Container cumulative eFix and workaround for problem with reflection api Description/symptom of problem: This is a cumulative EJB Container eFix, correcting the following problems: 1) If method-level attributes are specified in the bean's deployment descriptor for transactions, isolation level, or read-only, and the attribute is specified to apply to a specific method with a specific signature, and one or more of the arguments in the signature is an array type, the container does not correctly apply the attribute to the corresponding method on the EJB. 2) On some platforms, a problem has been found where a call to the reflection api getField(name) results in a NoSuchFieldException even though the field does exist. This may be an intermittent problem which will be seen when installing an application with an Entity Bean with Container Managed Persistence fields. This efix provides a workaround for this problem, by merely attempting the call a second time. This is a temporary fix until a permanent solution can be obtained for the jdk. Directions to apply efix: 1) Create temporary "eFix" directory to store the zip/tar file: AIX: /tmp/WebSphere/eFix Solaris/Linux: /tmp/WebSphere/eFix Windows: c:\temp\WebSphere\eFix 2) Copy zip/tar file to the directory 3) Unzip/untar the file 4) Shutdown WebSphere 5) Run the jar file with the following command answering questions/prompts as they appear: java -jar -TargetDir 6) Restart WebSphere 7) The temp directory may be removed but the zip/tar file should be saved. Do not remove any files created and stored in the /WebSphere/AppServer/eFix/ directories. These files are required if an efix is to be removed. Directions to remove an efix: NOTE: EFIXES MUST BE REMOVED IN THE ORDER THEY WERE APPLIED. DO NOT REMOVE AN EFIX UNLESS ALL EFIXES APPLIED AFTER IT HAVE FIRST BEEN REMOVED. YOU MAY REAPPLY ANY REMOVED EFIX. Example: If your system has efix1, efix2, and efix3 applied in that order and efix2 is to be removed, efix3 must be removed first, efix2 removed, and efix3 re-applied. 1) Change directory to the efix location (/WebSphere/AppServer/eFix/). 2) Shutdown WebSphere 3) Run the backup jar file with the following command: java -jar 4) Restart WebSphere Directions to re-apply an efix: Follow the instructions for applying an efix. If the backup files still exist (from the previous efix application), you will be prompted to overwrite. Answer "yes" at the overwrite prompts. Trouble shooting -------------------------------------------------------------------------------------- o If an efix complains about the container type and you are sure it should match, contact WebSphere L2 Support for assistance with the -SkipContainerCheck option to the efix jar. Additional Information: ------------------------------------------------------------------