IBM Support

PH27497: CNTR5010E,CNTR0075E ERRORS AFTER MIGRATING FROM WEBSPHERE V8.5.5.X TO V9.0.5.X

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • After deploying EJBs successfully on WebSphere v9.0.5.x, during
    the server startup the application fails to start and
    the following errors are logged in the SystemOut.log:
    
    CNTR5010E: The name of the ejbCreate business method of the
    com.ibm.xxx.yyy.xxxMessageListener interface for the
    XXXEAR#XXX.jar#XXX bean must not start with ejb.
    
    CNTR0075E: The user-provided class
    "com.ibm.eez.aab.MDBProxyXXX_7797d814" needed by the
    EnterpriseBean could not be found or loaded.
    
    WSVR0040E: addEjbModule failed for XXX.jar
    com.ibm.ejs.container.ContainerException: Bean class
    com.ibm.xxx.yyy.MDBProxyXXXXX_7797d814 could not be found or
    loaded; nested exception is:
     com.ibm.ejs.container.EJBConfigurationException: EJB business
    method ejbCreate on interface com.ibm.xxx.yyy.xxxMessageListener
    must not start with 'ejb'.
     at
    com.ibm.ws.metadata.ejb.EJBMDOrchestrator.loadGeneratedImplement
    ationClasses(EJBMDOrchestrator.java:4327)
     at
    com.ibm.ws.metadata.ejb.EJBMDOrchestrator.finishBMDInitWithRefer
    enceContext(EJBMDOrchestrator.java:636)
     at
    com.ibm.ws.ejbcontainer.runtime.AbstractEJBRuntime.finishBMDInit
    (AbstractEJBRuntime.java:1541)
     at
    com.ibm.ws.ejbcontainer.runtime.AbstractEJBRuntime.initializeBMD
    (AbstractEJBRuntime.java:1523)
     at
    com.ibm.ws.ejbcontainer.runtime.SharedEJBRuntimeImpl.initializeB
    MD(SharedEJBRuntimeImpl.java:381)
     at
    com.ibm.ws.ejbcontainer.runtime.AbstractEJBRuntime.startModule(A
    bstractEJBRuntime.java:542)
     at
    com.ibm.ws.ejbcontainer.runtime.SharedEJBRuntimeImpl.startModule
    (SharedEJBRuntimeImpl.java:347)
     at
    com.ibm.ws.runtime.component.EJBContainerImpl.start(EJBContainer
    Impl.java:3355)
     at
    com.ibm.ws.runtime.component.ApplicationMgrImpl.start(Applicatio
    nMgrImpl.java:1249)
     at
    com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeploye
    dObjectStart(DeployedApplicationImpl.java:1590)
     at
    com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedMo
    duleImpl.java:707)
     at
    com.ibm.ws.runtime.component.DeployedApplicationImpl.start(Deplo
    yedApplicationImpl.java:1161)
     at
    com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication
    (ApplicationMgrImpl.java:801)
     at
    com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication
    Dynamically(ApplicationMgrImpl.java:1451)
     at
    com.ibm.ws.runtime.component.ApplicationMgrImpl.start(Applicatio
    nMgrImpl.java:2319)
     at
    com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(Compos
    itionUnitMgrImpl.java:436)
     at
    com.ibm.ws.runtime.component.CompositionUnitImpl.start(Compositi
    onUnitImpl.java:123)
     at
    com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(Compos
    itionUnitMgrImpl.java:379)
     at
    com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$500(C
    ompositionUnitMgrImpl.java:127)
     at
    com.ibm.ws.runtime.component.CompositionUnitMgrImpl$1.run(Compos
    itionUnitMgrImpl.java:654)
     at
    com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManager
    Impl.java:5536)
     at
    com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextM
    anagerImpl.java:5662)
     at
    com.ibm.ws.security.core.SecurityContext.runAsSystem(SecurityCon
    text.java:255)
     at
    com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startComposi
    tionUnit(CompositionUnitMgrImpl.java:668)
     at
    com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startComposi
    tionUnit(CompositionUnitMgrImpl.java:612)
     at
    com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication
    (ApplicationMgrImpl.java:1341)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessor
    Impl.java:90)
     at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod
    AccessorImpl.java:55)
     at java.lang.reflect.Method.invoke(Method.java:508)
     at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:83)
     at sun.reflect.GeneratedMethodAccessor81.invoke(Unknown Source)
     at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod
    AccessorImpl.java:55)
     at java.lang.reflect.Method.invoke(Method.java:508)
     at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:287)
     at
    javax.management.modelmbean.RequiredModelMBean$4.run(RequiredMod
    elMBean.java:1263)
     at
    java.security.AccessController.doPrivileged(AccessController.jav
    a:673)
     at
    java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersec
    tionPrivilege(ProtectionDomain.java:85)
     at
    javax.management.modelmbean.RequiredModelMBean.invokeMethod(Requ
    iredModelMBean.java:1257)
     at
    javax.management.modelmbean.RequiredModelMBean.invoke(RequiredMo
    delMBean.java:1096)
     at
    com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(Def
    aultMBeanServerInterceptor.java:831)
     at
    com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.jav
    a:813)
     at
    com.ibm.ws.management.AdminServiceImpl$1.run(AdminServiceImpl.ja
    va:1352)
     at
    com.ibm.ws.security.util.AccessController.doPrivileged(AccessCon
    troller.java:118)
     at
    com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.j
    ava:1245)
     at
    com.ibm.ws.management.connector.AdminServiceDelegator.invoke(Adm
    inServiceDelegator.java:181)
     at sun.reflect.GeneratedMethodAccessor89.invoke(Unknown Source)
     at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod
    AccessorImpl.java:55)
     at java.lang.reflect.Method.invoke(Method.java:508)
     at
    com.ibm.ws.management.connector.soap.SOAPConnector.invoke(SOAPCo
    nnector.java:503)
     at
    com.ibm.ws.management.connector.soap.SOAPConnector.service(SOAPC
    onnector.java:335)
     at
    com.ibm.ws.management.connector.soap.SOAPConnection.handleReques
    t(SOAPConnection.java:65)
     at
    com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnecti
    on.java:733)
     at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:522)
     at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1909)
    Caused by: com.ibm.ejs.container.EJBConfigurationException: EJB
    business method ejbCreate on interface
    com.ibm.xxx.yyy.xxxMessageListener must not start with 'ejb'.
     at
    com.ibm.ws.ejbcontainer.jitdeploy.EJBWrapper.generateClassBytes(
    EJBWrapper.java:365)
     at
    com.ibm.ws.ejbcontainer.jitdeploy.JITDeploy.generateMDBProxy(JIT
    Deploy.java:498)
     at
    com.ibm.ws.metadata.ejb.EJBMDOrchestrator.loadGeneratedImplement
    ationClasses(EJBMDOrchestrator.java:3912)
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server                                      *
    *                  with message-driven bean applications       *
    ****************************************************************
    * PROBLEM DESCRIPTION: Message-driven beans may fail to start  *
    *                      with CNTR5010E if the message listener  *
    *                      interface has no methods.               *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    New in the Enterprise Beans specification version 3.2 is the
    ability to provide a message listener interface with no methods,
    and the enterprise beans container will then expose all public
    method of the message-driven bean class on the message endpoint.
    However, the enterprise beans container is incorrectly
    restricting method names that start with "ejb" or methods that
    are not public.
    Applications containing message-driven beans with methods that
    start with "ejb" or are not public and have a message listener
    interface with no methods will fail with the following series of
    exceptions:
    CNTR5010E: The name of the ejb[Create] business method of the
    xxx.yyy.[MessageListener] interface for the
    XXXEAR#XXX.jar#XXX bean must not start with ejb.
    CNTR0075E: The user-provided class
    "xxx.yyy.MDBProxyXXX_7797d814" needed by the
    EnterpriseBean could not be found or loaded.
    WSVR0040E: addEjbModule failed for XXX.jar
    com.ibm.ejs.container.ContainerException: Bean class
    xxx.yyy.MDBProxyXXXXX_7797d814 could not be found or
    loaded; nested exception is:
    com.ibm.ejs.container.EJBConfigurationException: EJB business
    method ejb[Create] on interface xxx.yyy.[MessageListener]
    must not start with 'ejb'.
    at
    com.ibm.ws.metadata.ejb.EJBMDOrchestrator.loadGeneratedImplement
    ationClasses(EJBMDOrchestrator.java:4327)
    This error is most common when migrating message-driven beans
    written to a prior version of the Enterprise Beans specification
    where message listener interfaces with no methods just resulted
    in no methods being exposed on the message endpoint.
    

Problem conclusion

  • The enterprise beans container has been updated to allow
    message-driven bean implementation methods starting with "ejb"
    for message listener interfaces with no methods. Non-public
    methods will be tolerated, but not exposed on the message
    endpoint.
    
    The problem has been corrected in open-liberty with the
    following issues: OLGH 13094 and OLGH 13170.
    
    The fix for this APAR is targeted for inclusion in fix packs
    9.0.5.6 and 20.0.0.9. For more information, see 'Recommended
    Updates for WebSphere Application Server':
    https://www.ibm.com/support/pages/node/715553
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH27497

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-07-16

  • Closed date

    2020-09-18

  • Last modified date

    2020-09-18

  • 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

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

Document Information

Modified date:
01 November 2021