IBM Support

PI92105: ALLOW EMPTY MAIN-CLASS ATTRIBUTE IN MANIFEST.MF FOR APPLICATION CLIENT MODULE

Fixes are available

9.0.0.7: WebSphere Application Server traditional V9.0 Fix Pack 7
8.0.0.15: WebSphere Application Server V8.0 Fix Pack 15
9.0.0.8: WebSphere Application Server traditional V9.0 Fix Pack 8
8.5.5.14: WebSphere Application Server V8.5.5 Fix Pack 14
9.0.0.9: WebSphere Application Server traditional V9.0 Fix Pack 9
9.0.0.10: WebSphere Application Server traditional V9.0 Fix Pack 10
8.5.5.15: WebSphere Application Server V8.5.5 Fix Pack 15
9.0.0.11: WebSphere Application Server traditional V9.0 Fix Pack 11
9.0.5.0: WebSphere Application Server traditional Version 9.0.5 Refresh Pack
9.0.5.1: WebSphere Application Server traditional Version 9.0.5 Fix Pack 1
9.0.5.2: WebSphere Application Server traditional Version 9.0.5 Fix Pack 2
8.5.5.17: WebSphere Application Server V8.5.5 Fix Pack 17
9.0.5.3: WebSphere Application Server traditional Version 9.0.5 Fix Pack 3
9.0.5.4: WebSphere Application Server traditional Version 9.0.5 Fix Pack 4
9.0.5.5: WebSphere Application Server traditional Version 9.0.5 Fix Pack 5
WebSphere Application Server traditional 9.0.5.6
9.0.5.7: WebSphere Application Server traditional Version 9.0.5 Fix Pack 7
9.0.5.8: WebSphere Application Server traditional Version 9.0.5.8
8.5.5.20: WebSphere Application Server V8.5.5.20
8.5.5.18: WebSphere Application Server V8.5.5 Fix Pack 18
8.5.5.19: WebSphere Application Server V8.5.5 Fix Pack 19
9.0.5.9: WebSphere Application Server traditional Version 9.0.5.9
9.0.5.10: WebSphere Application Server traditional Version 9.0.5.10
8.5.5.16: WebSphere Application Server V8.5.5 Fix Pack 16
8.5.5.21: WebSphere Application Server V8.5.5.21
9.0.5.11: WebSphere Application Server traditional Version 9.0.5.11

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • In 8.5.5.12, an application having both of the following
    characteristics will fail to deploy.
    1) A JAR is listed as an application client module in the
    application.xml.
    2) The MANIFEST.MF in the JAR file contains an empty
    "Main-Class:" attribute.
    
    The configuration just described is invalid, because an
    application client module must specify a main class.
    
    The deployment failure results in messages similar to the
    following:
    ...
    ExtendedMessage: An error occurred while opening a nested
    archive: IWAE0006E Archive is not a valid Application Client
    JAR File because the deployment descriptor can not be found
    (case sensitive): META-INF/application-client.xml
    ...
    
    Prior to WAS fix packs 8.0.0.14, 8.5.5.12 and 9.0.0.4 an
    application such as this would have deployed successfully.  In
    these fix packs, APAR PI76439 fixes a problem in which a
    utility JAR is misidentified as an application client module
    when the MANIFEST.MF contains an empty "Main-Class:" attribute.
    However, if the application.xml also identifies such a JAR as
    an application client module, the deployment fails because
    verification was added to ensure an application module has a
    main class.
    
    The best solution is to update the application.xml by removing
    the misidentification of the JAR as an application client
    module, since a JAR cannot function as an application client
    without a main class. However, to facilitate a quick solution,
    a JVM custom property will be provided to turn off the main
    class verification that was added in PI76439.
    

Local fix

  • Update the application.xml by removing the misidentification of
    the JAR as an application client module
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server having an application with an        *
    *                  application.xml that indicates a JAR is an  *
    *                  application client module, but the          *
    *                  MANIFEST.MF of the JAR contains an empty    *
    *                  "Main-class" attribute.                     *
    ****************************************************************
    * PROBLEM DESCRIPTION: Application containing a JAR with       *
    *                      an empty "Main-class" attribute in      *
    *                      MANIFEST.MF fails to deploy.            *
    ****************************************************************
    * RECOMMENDATION:  The problem can be avoided by updating the  *
    *                  application.xml.  Remove the module         *
    *                  element that identifies the JAR as an       *
    *                  application client module.  For example:    *
    *                  <module id="Module_1397758295569">          *
    *                  <java>NotAnAppClient.jar</java>             *
    *                  </module>                                   *
    ****************************************************************
    In WAS 8.0.0.14, 8.5.5.12 and 9.0.0.4, an application having
    both of the following characteristics will fail to deploy.
    1) A JAR is listed as an application client module in the
    application.xml.
    2) The MANIFEST.MF in the JAR file contains an empty
    "Main-Class:" attribute.
    The configuration just described is invalid, because an
    application client module must specify a main class.
    The deployment failure results in messages similar to the
    following:
    ...
    ExtendedMessage: An error occurred while opening a nested
    archive: IWAE0006E Archive is not a valid Application Client
    JAR File because the deployment descriptor can not be found
    (case sensitive): META-INF/application-client.xml
    ...
    Prior to WAS fix packs 8.0.0.14, 8.5.5.12 and 9.0.0.4 an
    application such as this would have deployed successfully.  In
    these fix packs, APAR PI76439 fixes a problem in which a
    utility JAR is misidentified as an application client module
    when the MANIFEST.MF contains an empty "Main-Class:" attribute.
    However, if the application.xml also identifies such a JAR as
    an application client module, the deployment fails because
    verification was added to ensure an application module has a
    main class.
    The best solution is to update the application.xml by removing
    the misidentification of the JAR as an application client
    module, since a JAR cannot function as an application client
    without a main class. However, to facilitate a quick solution,
    a JVM custom property will be provided to turn off the main
    class verification that was added in PI76439.
    

Problem conclusion

  • The best solution is to correct the application.xml of the
    application by removing the "module" element that identifies
    the JAR as an application client module.  For example,
    <module id="Module_1397758295569">
            <java>NotAnAppClient.jar</java>
    </module>
    
    However, a custom property is provided to allow the
    application to deploy without modification.
    
    org.eclipse.jst.j2ee.commonarchivecore.internal.helpers.allowApp
    ClientWithoutMainClass=true
    
    Setting the property to true causes the invalid configuration
    to be ignored during application deployment.
    
    The fix for this APAR is currently targeted for inclusion in
    fix packs 8.0.0.15, 8.5.5.14, 9.0.0.7  Please refer to
    the Recommended Updates page for delivery information:
    http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI92105

  • Reported component name

    WEBSPHERE FOR Z

  • Reported component ID

    5655I3500

  • Reported release

    850

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-01-05

  • Closed date

    2018-01-17

  • Last modified date

    2018-02-21

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    WEBSPHERE FOR Z

  • Fixed component ID

    5655I3500

Applicable component levels

  • R850 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SS7K4U","label":"WebSphere Application Server for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"850","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
04 May 2022