Handling of EJB business interface which is inherited in EAP

Solution Verified - Updated -

Issue

  • Is it possible to use inheritance for EJB business interface?
  • How to declare an interface as an EJB business interface?
  • A working application in EAP 7.1 can not be deployed in EAP 7.2, it will fail with the following Exception
16:36:30,284 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "ejb31-singletonAsync-ejb.jar")]) - failure description: {
    "WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"ejb31-singletonAsync-ejb.jar\".INSTALL" => "WFLYSRV0153: Failed to process phase INSTALL of deployment \"ejb31-singletonAsync-ejb.jar\"
    Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: WFLYEE0052: Failed to install component StartupSingletonAsyncPostBean
    Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: WFLYEJB0406: No EJB found with interface of type 'org.jboss.wfink.ejb31.LocalTest' for binding org.jboss.wfink.ejb31.singleton.StartupSingletonAsyncPostBean/initBean"},
    "WFLYCTL0412: Required services that are not installed:" => [
        "jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.StartupSingletonAsyncPostBean",
        "jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.TestReferenceBean",
        "jboss.deployment.unit.\"ejb31-singletonAsync-ejb.jar\".WeldStartService",
        "jboss.deployment.unit.\"ejb31-singletonAsync-ejb.jar\".beanmanager"
    ],
    "WFLYCTL0180: Services with missing/unavailable dependencies" => [
        "jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.StartupSingletonAsyncPostBean.ValidatorFactory is missing [jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.StartupSingletonAsyncPostBean]",
        "jboss.deployment.unit.\"ejb31-singletonAsync-ejb.jar\".batch.artifact.factory is missing [jboss.deployment.unit.\"ejb31-singletonAsync-ejb.jar\".beanmanager]",
        "jboss.deployment.unit.\"ejb31-singletonAsync-ejb.jar\".weld.weldClassIntrospector is missing [jboss.deployment.unit.\"ejb31-singletonAsync-ejb.jar\".WeldStartService, jboss.deployment.unit.\"ejb31-singletonAsync-ejb.jar\".beanmanager]",
        "jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.StartupSingletonAsyncPostBean.Validator is missing [jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.StartupSingletonAsyncPostBean]",
        "jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.StartupSingletonAsyncPostBean.InstanceName is missing [jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.StartupSingletonAsyncPostBean]",
        "jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.TestReferenceBean.ValidatorFactory is missing [jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.TestReferenceBean]",
        "jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.TestReferenceBean.Validator is missing [jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.TestReferenceBean]",
        "jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.StartupSingletonAsyncPostBean.InAppClientContainer is missing [jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.StartupSingletonAsyncPostBean]",
        "jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.TestReferenceBean.InstanceName is missing [jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.TestReferenceBean]",
        "jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.TestReferenceBean.InAppClientContainer is missing [jboss.naming.context.java.comp.ejb31-singletonAsync-ejb.ejb31-singletonAsync-ejb.TestReferenceBean]"
    ]
}

Environment

  • Red Hat JBoss Enterprise Application Platform (EAP)

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In