eFix (APAR): PQ56086 Status: efix For Release: WebSphere 4.0, 4.0.1 For Edition: WebSphere AE, AEs For ContainerTypes: AEServer, AEsServer For Operating System: All Supersedes eFixes: none CMVC defect: PQ56086 Byte size of APAR: 18,411,322 bytes Date: 12/20/01 Abstract: Upgrade the deploytool from 4.01 to 4.02. The new EJB Deploy is the same version that is available in WAS PTF 4.0.2. This efix is intended for customers who need the fixes to the deploy tool but cannot wait for PTF 4.0.2, or customers who want to upgrade the deploy tool without upgrading their server. The generated deployed code runs on both WAS 4.0.1 and WAS 4.0.2. Description/symptom of problems: 108021 SVT: EJBDeploy fails for entity bean with field named 'value' 108259 INFORMIX 550: Total length of columns in constraint is too long 108367 iSeries: Changes required for generated table.ddl 109972 TVT BR AAT - Codepage Problem in EJBdeploy process In AAT, some messages displayed in the panel "Generate Implementation Code" are with codepage problems. 110505 findByPK for CMPs with inheritance is wrong The code generated for findByPrimaryKey is for the non-inheritance case. 110570 Incorrect output for Table.ddl generated by ejbDeploy 110990 Codegen creates an invalid Persister Compilation error in the code generated for a custom finder method taking a java.lang.Long argument. Error is: The method setLong(int, long) in the type java.sql.PreparedStatement is not applicable for the arguments (int, java.lang.Long) 111082.4 LI 1391: Add support for Informix 7.31 to AE & AEs 111083.5 LI 1422: Add support for optimistic concurrency control 112118 Support missing for inherited custom method finders Missing support for inherited FinderObject class. This affects code gen and validation. 112242 Inherited finder methods missing from EJSFinder The generated finder interface declares just the methods in the bean home interface, and is missing the inherited methods. 112245 Persister not using inherited finder helpers Any helpers (eg. static helper Strings) in the parent of the FinderHelper interface are not being found. As a result, either an error is logged, or (if FinderObject class exists) it assumes that a custom method finder must exist and generates code that calls the finder in the FinderObject class. 112253.8 LI 1601: Support Merant type 4 for SQL Server 2000 112475 Inherited home methods missing from session home impl For session beans, methods are missing from the home implementation. This happens when the home interface inherits from another interface. The inherited methods are the ones that are missing from the home implementation. 114201 Generating deployment code fails with null pointer 114362 CTS:Error with the EJBdeployer. 114556 ejbdeploy generates bad code - EJB associations, 2 part key In an application that contains several EJBs that use 1-1 and 1-many associations, and the foreign key contains two parts (eg. an integer and a String), then the code generated by the deploy tool fails to compile because the two fields are transposed. The integer is being treated as a string, and the string is being treated as an integer. 114912 CTS: validation error during ejb deploy, ASV40X 115080 Values not set for all parms in custom WHERE finder The problem is in the generated code for custom finders with WHERE clause finder helper. If the WHERE clause is repeated (as happens for EJBs in a hierarchy), the argument values are assigned to the parm markers only once, rather than for each occurrence of the where clause. 115295 WAS z/OS: EJB Deploy StringIndexOutOfBoundsException Problem with DBCS text 115320 create method is missing call to ejbPostCreate 188352 Code to extract discriminator values needs a converter The code to extract the discriminator value is not using a converter, while the Visual Age for Java code is. The problem is that the converter information for that column is not included in the metadata that is being exported by the VAJ bridge. Therefore, there's no way to reliably detect and use the correct converter. The fix is to strip (trim()) trailing blanks. 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 PQ56086_eFix_AEServer_AEsServer.jar 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: ------------------------------------------------------------------