IBM Support

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

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

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

[{"Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU029","label":"Software"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"900"}]

Document Information

Modified date:
19 September 2020