IBM Support

PM32491: IMPROPER ERROR HANDLING IN THE SCA CODE DURING SCA COMPOSITE STOP WHEN A RUNTIME ERROR OCCURS IN APP'S STOP() BUSINESS LOGIC.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Improper error handling in the Service Component Architecture
    (SCA) code during SCA composite stop when runtime error occurs
    in application's stop () business logic.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All IBM WebSphere Application Server V7     *
    *                  Feature Pack for Service Component          *
    *                  Architecture (SCA) users.                   *
    ****************************************************************
    * PROBLEM DESCRIPTION: If a user's application throws an       *
    *                      exception during SCA composition unit   *
    *                      (CU) stop, the exception is not         *
    *                      caught. As a result, the SCA CU stop    *
    *                      code terminates prematurely,            *
    *                      potentially corrupting the SCA          *
    *                      configuration and resulting in          *
    *                      problems on application (re)start.      *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    When a user's application is defined with composite scope -
    for example, @Scope("COMPOSITE") and contains an method
    annotated with @Destroy, the method annotated with @Destroy is
    called during an SCA CU or business-level application (BLA)
    stop.
    For example:
    
    package mysca.test.stoperror;
    
    import org.osoa.sca.annotations.Destroy;
    import org.osoa.sca.annotations.Scope;
    import org.osoa.sca.annotations.Service;
    
    @Service(interfaces={StopError.class})
    @Scope("COMPOSITE")
    public class StopErrorImpl implements HelloWorld{
    
    
        public String sayHello()
        {
            return "Hello";
        }
    
        @Destroy
        public void stop()
        {
            //Some code that may throw an exception
        }
    
    }
    
    
    
    If the stop() method above throws an exception, it
    will cause the SCA stop code to terminate prematurely. As a
    result, the configuration maybe be corrupted and lead to
    errors when restarting the SCA CU or BLA.
    

Problem conclusion

  • The SCA code was updated to catch and log any exceptions
    encountered during SCA CU or BLA stop and continue processing
    the remaining SCA stop code.
    
    The fix for PM32491 is currently targeted for inclusion in fix
    pack 1.0.1.11. 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

    PM32491

  • Reported component name

    WAS SCA FEATURE

  • Reported component ID

    5724J0854

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2011-02-11

  • Closed date

    2011-02-22

  • Last modified date

    2011-02-22

  • 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

    WAS SCA FEATURE

  • Fixed component ID

    5724J0854

Applicable component levels

  • R700 PSY

       UP

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SUPPORT","label":"IBM Worldwide Support"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"1.0.1","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
09 February 2022