IBM Support

PI23290: EJB SESSIONCONTEXT.GETCALLERPRINCIPAL() CALL NOT WORKING IN ASYNCBEANS

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • EJB sessionContext.getCallerPrincipal() call not working in
    asynchbeans in WebSphere Application Server V8.5.  The
    following exception is thrown:
    
    java.lang.NullPointerException
    at com.ibm.ejs.container.BeanO.getCallerPrincipal
    (BeanO.java:847)
    at com.ibm.ejs.container.BeanO.getCallerPrincipal
    (BeanO.java:841)
    at com.ibm.ejs.container.StatelessBeanO.getCallerPrincipal
    (StatelessBeanO.java:1107)
    at com.ibm.example.TestWork.run(TestWork.java:10)
    at com.ibm.ws.asynchbeans.J2EEContext$RunProxy.run
    (J2EEContext.java:269)
    at java.security.AccessController.doPrivileged
    (AccessController.java:229)
    at com.ibm.ws.asynchbeans.J2EEContext.run(J2EEContext.java:795)
    at com.ibm.ws.asynchbeans.WorkWithExecutionContextImpl.go
    (WorkWithExecutionContextImpl.java:222)
    at com.ibm.ws.asynchbeans.ABWorkItemImpl.run
    (ABWorkItemImpl.java:206)
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1862)
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All IBM WebSphere Application Server V8.5   *
    *                  users of EJB and Asynchbeans                *
    ****************************************************************
    * PROBLEM DESCRIPTION: The getCallerPrincipal method cannot    *
    *                      be called from an asynchbean context    *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    The getCallerPrincipal method is only intended to be called
    from an Enterprise Java Beans (EJB) method, so the EJB
    container passes data from the current EJB method context to
    the security component to determine the caller principal.
    When getCallerPrincipal is called from an asynchbean context,
    there is no current EJB method context, so the EJB container
    throws a NullPointerException.
    

Problem conclusion

  • EJB container is updated to pass null to the security
    component when there is no current EJB method context, which
    causes UNAUTHENTICATED to be returned.
    
    The fix for this APAR is currently targeted for inclusion in
    fix pack 8.5.5.4.  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

    PI23290

  • Reported component name

    WEBSPHERE APP S

  • Reported component ID

    5724J0800

  • Reported release

    850

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2014-08-05

  • Closed date

    2014-08-14

  • Last modified date

    2014-11-04

  • 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 APP S

  • Fixed component ID

    5724J0800

Applicable component levels

  • R850 PSY

       UP

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

Document Information

Modified date:
28 April 2022