IBM Support

PM39456: Incorrect interaction between Enterprise Java Beans (EJB) and Contexts and Dependency Injection (CDI)

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • This APAR is an umbrella APAR for multiple fixes to the
    interaction between Enterprise Java Beans (EJB) and Contexts
    and Dependency Injection (CDI).
    
    1) Underlying EJB instances for CDI contextual references were
    not obtained by the container until they were dereferenced.
    
    2) Interceptors of stateless session beans are unnecessarily
    required to implement serializable.
    
    3) Under some circumstances, dependent-scoped EJB's injected
    into CDI beans did not get destroyed when the enclosing bean
    was destroyed.
    
    4) Under some circumstances, dependent-scoped
    managed beandependencies of an EJB are not destroyed when the
    EJB is destroyed.
    
    5) When an @Remove annotated method of a contextually injected
    stateful session bean is explicitly called, a required
    exception was not being thrown.
    
    6) EJB's without a no-interface local view (@LocalBean)
    could not specialize another managed bean.
    
    7) During contextual injection EJB initializer methods may
    result in [Object not instanceof declaring class]
    
    8) Disposer methods on an EJB may result in [Object
    not instanceof Class]
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  Users of IBM WebSphere Application          *
    *                  Server V8 with applications containing      *
    *                  both EJB and CDI.                           *
    ****************************************************************
    * PROBLEM DESCRIPTION: Unexpected interactions between         *
    *                      Enterprise Java Beans (EJB) and         *
    *                      Contexts and Dependency Injection for   *
    *                      Java (CDI).                             *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    This APAR is an umbrella APAR for multiple fixes to the
    interaction between Enterprise Java Beans (EJB) and Contexts
    and Dependency Injection (CDI).  Multiple problems related to
    injection via @EJB and @Inject annotations into both EJB's and
    CDI managed beans.
    

Problem conclusion

  • The defects were resolved in the following manner:
    
    1) Underlying EJB instances for CDI contextual references are
    now created when the instance obtained (via Injection or
    BeanManager API)
    
    2) Interceptors of stateless session beans are no longer
    subject to being checked for implementing Serializable.
    
    3 and 4) Dependent beans of any type, injected into managed
    beans of any type, respect the lifecycle of their owning bean.
    
    5) When an @Remove annotated method of a contextually injected
    stateful session bean is explicitly called, an exception is
    thrown.
    
    6) EJB's can Specialize another bean without additional
    restriction.
    
    7) EJB initializer methods no longer result in an Exception.
    
    8) Disposer methods on an EJB no longer result in an Exception
    
    The fix for this APAR is currently targeted for inclusion
    in fix pack 8.0.0.1  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

    PM39456

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    800

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2011-05-17

  • Closed date

    2011-07-28

  • Last modified date

    2011-07-28

  • 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

    WEBS APP SERV N

  • Fixed component ID

    5724H8800

Applicable component levels

  • R800 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.0","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
27 October 2021