IBM Support

PM20483: CurrentCompositeContext.getContext() returns null on a server without any SCA applications deployed.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Scenario:
    Attempt to access a Service Component Architecture (SCA)
    service using SCA binding from a servlet.
    
    Environment:
    Cell contains 2 nodes:  Node01 running server1
    Node02 running server2
    
    SCA service is deployed to server2 on Node02.
    Servlet runs on server1 on Node01.
    
    Servlet attempts to get a handle to the service using the call
    CurrentCompositeContext.getContext() to get the
    CompositeContext.
    It then uses that CompositeContext to get a handle to the
    service on server2.
    
    However, when the call to get the Context is invoked, a null
    CompositeContext is returned.  No exceptions are thrown
    when trying to access the service
    CurrentCompositeContext.getContext(), only a null value is
    returned.
    

Local fix

  • Deploy a dummy composite on the server which is calling the
    remote SCA service.  This ensures that the CompositeContext is
    not null when the servlet requests it.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  Users of the IBM WebSphere Application      *
    *                  Server V7 Feature Pack for Service          *
    *                  Component Architecture (SCA)                *
    ****************************************************************
    * PROBLEM DESCRIPTION: When a server or cluster does not       *
    *                      contain any SCA applications,the SCA    *
    *                      runtime is not started. As a            *
    *                      result calls to                         *
    *                      CurrentCompositeContext.getContext()    *
    *                      in client applications will return      *
    *                      null.                                   *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    When a server or cluster does not contain any SCA
    applications, calls to CurrentCompositeContext.getContext()
    will return null.
    
    As a result, this common programming pattern will fail with a
    NullPointerException:
    
    CompositeContext compositeContext =
    com.ibm.websphere.sca.context.CurrentCo
    mpositeContext.getContext();
    MyService myService =
    (MyService)compositeContext.getService(
    MyService.class, "MyComponent");
    

Problem conclusion

  • The Feature Pack for SCA was changed to initialize the SCA
    runtime when CurrentCompositeContext.getContext() is
    called. If the SCA runtime can not be initialized, a
    ServiceRuntimeException is thrown.
    
    APAR PM20483 is currently targeted for inclusion in Service
    Level (Fix Pack) 1.0.1.9 of WebSphere Application Server v7
    Feature Pack for Service Component Architecture (SCA) Refresh
    Pack. 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

    PM20483

  • 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

    2010-08-12

  • Closed date

    2010-08-24

  • Last modified date

    2010-08-24

  • 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