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 <WASHOME>/WebSphere/AppServer/efix/<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 (<WASHOME>/WebSphere/AppServer/efix/<efix#>).

2) Shutdown WebSphere

3) Run the backup jar file with the following command:
   java -jar <backup_efix#>

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:
------------------------------------------------------------------