Fix (APAR): PM91417 Status: Fix Release: 7.0.0.29,7.0.0.27,7.0.0.25 Operating System: AIX,HP-UX,IBM i,Linux,Solaris,Windows Supersedes Fixes: PM94981 CMVC Defect: PM91417 Byte size of APAR: 69702 Date: 2013-12-16 Abstract: provide option for backwards compatibility for earexpander Description/symptom of problem: PM91417 resolves the following problem: ERROR DESCRIPTION: An option is necessary to provide backwards compatibility for having the EARExpander command line utility extract files from JAR files in all locations, not just in JavaEE active locations. LOCAL FIX: n.a PROBLEM SUMMARY USERS AFFECTED: All users of IBM WebSphere Application Server PROBLEM DESCRIPTION: Partial application updates will not update JARs in non-active Java EE locations. RECOMMENDATION: None Applications deployed to the WebSphere Application Server by default only expand archives in active Java EE locations. For example, JARS in a WAR's WEB-INF/lib directory are active. JARs in other locations within a WAR are not active. Because JARs not in active locations are not expanded, partial application updates are not applied to these JARs. (Whole JAR replacements are applied to these JARs.) For example, the file "SampleScript.js" having the following packaging structure is not updated: SampleEAR.ear/ SampleWAR.war/ WEB-INF/SampleDir/NestedSampleDir/ SampleJar.jar/ SampleScript.js Expansion is performed by internal processing steps, including deployment steps, and including expansions performed by the earExpander script. PROBLEM CONCLUSION: A custom property has been introduced which enables expansion of all archives, even those outside of active Java EE locations: org.eclipse.jst.j2ee.commonarchivecore.openAllArchives=true By default, the custom property value is false. Setting the value true will revert the fix introduced by PM42643, and set the server to expand all archives. This should be done sparingly since setting the server to expand archives outside of active Java EE locations provides the best performance, and avoids any problems caused by non-valid archives. For example, simple corruption of an archive file, or use of multi-byte characters for entries in a archive file. To enable expansion of non-standard archives during deployment, set the property on the processes involved with the deployment, that is, on the Application Server process, and, if a Deployment Manager is being used, on the Deployment Manager process. To enable expansion by the earExpander script, set the property as a Java Custom property by editing the earExpander script. The property is not applied to JARs within JARs. JARs within JARs will still not be expanded, even with the property set to true. Note that all JARs in EAR files are active and all JARs in RAR files are active. The processing of JARs in EAR files and JARs in RAR files is not affected by the custom property. The fix for this APAR is currently targeted for inclusion in fix packs 7.0.0.31, 8.0.0.8, and 8.5.5.2. Please refer to the Recommended Updates page for delivery information: http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980 Directions to apply fix: Fix applies to Editions: Release 7.0 _X Application Server (Express or BASE) _X Network Deployment (ND) __ Edge Components __ Developer Install Fix to all WebSphere installations unless special instructions are included below. Special Instructions: None NOTE: The user must: * Logged in with the same authority level when unpacking a fix, fix pack or refresh pack. * Be at V7.0.0.0 or newer of the Update Installer. Certain iFixes may require a newer version of the Update Installer and the Update Installer will inform you during the installation process if a newer version is required. This can be checked by reviewing the level of the Update Installer in file /updateinstaller/version.txt. The Update Installer can be downloaded from the following link: http://www.ibm.com/support/docview.wss?rs=180&uid=swg21205991 1) If your iFix is delivered as a single file with a .pak extension, Copy the .pak file directly to the maintenance directory. If your iFix is delivered as a single file with a .zip extension, unzip the file into the maintenance directory. 2) Shutdown WebSphere Application Server. Manually execute setupCmdLine.bat in Windows or . ./setupCmdLine.sh in Unix from the WebSphere instance that maintenance is being applied to. 3) For IBM i users, use the update command to install and uninstall the interim fix. The IBM Information Center can provide additional details, if needed, on the use of this command. http://www14.software.ibm.com/webapp/wsbroker/redirect?version=compass&product=was-nd-iseries&topic=rins_update. For non-IBM i users, launch the Update Installer and click the Next button on the Welcome page. 4) Enter the directory path of the installation location of the WebSphere product you want to update, and click the Next button. 5) Select the "Install maintenance package" operation and click the Next button. 6) Enter the directory path of your maintenance directory where you have the maintenance packages (.pak files) and click the Next button. 7) The Available Maintenance Package to Install page should list all maintenance packages (.pak files) that it finds in the directory path provided in the previous step. The Update Installer will select the correct maintenance packages based on your system configuration and will not allow an invalid combination to be installed. Please keep the Update Installer recommendations and click the Next button and continue with the installation of the maintenance package. To determine why some maintenance packages have been identified as not applicable, see description in log found in /logs/tmp*/updatelogs.txt 8) For all platforms except Windows. In pre-install summary panel, use the "verify permission" feature to verify the user has permissions to apply updates to files associated with the selected maintenance. Correct any file permissions before clicking next to start the install. 9) Restart WebSphere Application Server. Directions to remove fix: NOTE: * The user must have Administrative rights in Windows, or be the Actual Root User in a UNIX environments. * FIXES MUST BE REMOVED IN THE ORDER THEY WERE APPLIED * DO NOT REMOVE A FIX UNLESS ALL FIXES APPLIED AFTER IT HAVE FIRST BEEN REMOVED * YOU MAY REAPPLY ANY REMOVED FIX Example: If your system has fix1, fix2, and fix3 applied in that order and fix2 is to be removed, fix3 must be removed first, fix2 removed, and fix3 re-applied. 1) Shutdown WebSphere Application Server. Manually execute setupCmdLine.bat in Windows or . ./setupCmdLine.sh in Unix from the WebSphere instance that uninstall is being run against. 2) Start Update Installer 3) Enter the installation location of the WebSphere product you want to remove the fix. 4) Select "Uninstall maintenance package" operation. 5) Enter the file name of the maintenance package to uninstall (PKxxxxx.pak). 6) UnInstall maintenance package. 7) Restart WebSphere Directions to re-apply fix: 1) Shutdown WebSphere Application Server. 2) Follow the Fix instructions to apply the fix. 3) Restart WebSphere Application Server. Additional Information: