为什么JBoss EAP 7.0.0.GA找不到我的EJB?

时间:2018-02-05 16:08:19

标签: java jboss

我看到的错误:

10:54:25,376 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-7) MSC000001: Failed to start service jboss.deployment.subunit."xxxEAR-1.0.0-SNAPSHOT.ear"."upload-api-talon.war".POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.subunit."xxxEAR-1.0.0-SNAPSHOT.ear"."xxx.war".POST_MODULE: WFLYSRV0153: Failed to process phase POST_MODULE of subdeployment "xxx.war" of deployment "xxxEAR-1.0.0-SNAPSHOT.ear"

我看到的更多错误:

10:54:25,429 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "xxxEAR-1.0.0-SNAPSHOT.ear")]) - failure description: {
    "WFLYCTL0080: Failed services" => {"jboss.deployment.subunit.\"xxxEAR-1.0.0-SNAPSHOT.ear\".\"xxx.war\".POST_MODULE" => "org.jboss.msc.service.StartException in service jboss.deployment.subunit.\"xxxEAR-1.0.0-SNAPSHOT.ear\".\"xxx.war\".POST_MODULE: WFLYSRV0153: Failed to process phase POST_MODULE of subdeployment \"xxx.war\" of deployment \"xxxEAR-1.0.0-SNAPSHOT.ear\"
    Caused by: java.lang.ClassFormatError: Failed to link javax/faces/webapp/FacetTag (Module \"deployment.xxxEAR-1.0.0-SNAPSHOT.ear.xxx.war:main\" from Service Module Loader): Absent Code attribute in method that is not native or abstract in class file javax/faces/webapp/FacetTag"},
    "WFLYCTL0180: Services with missing/unavailable dependencies" => [
        "jboss.naming.context.java.comp.\"xxxEAR-1.0.0-SNAPSHOT\".transient-store-data.TransientMetadataStorageImpl.InAppClientContainer is missing [jboss.naming.context.java.comp.\"xxxEAR-1.0.0-SNAPSHOT\".transient-store-data.TransientMetadataStorageImpl]",
        "jboss.naming.context.java.comp.\"xxxEAR-1.0.0-SNAPSHOT\".transient-store-logic.StoreTrustedDocumentsInTransient.Validator is missing [jboss.naming.context.java.comp.\"xxxEAR-1.0.0-SNAPSHOT\".transient-store-logic.StoreTrustedDocumentsInTransient]",

看起来它说它无法找到我的课程,但它可以找到我的罐子。怎么可能?

我也看到这个日志,表明它可以找到库:

10:54:25,408 INFO  [org.jboss.as.ejb3.deployment] (MSC service thread 1-1) WFLYEJB0473: JNDI bindings for session bean named 'QuarantineTransientMetadataStorageImpl' in deployment unit 'subdeployment "transient-store-data.jar" of deployment "upload-api-talonEAR-1.0.0-SNAPSHOT.ear"' are as follows:

        java:global/upload-api-talonEAR-1.0.0-SNAPSHOT/transient-store-data/QuarantineTransientMetadataStorageImpl!com.usaa.api.enterprise.contentstorage.data.connectors.IQuarantineMetadataStorage
        java:app/transient-store-data/QuarantineTransientMetadataStorageImpl!com.usaa.api.enterprise.contentstorage.data.connectors.IQuarantineMetadataStorage
        java:module/QuarantineTransientMetadataStorageImpl!com.usaa.api.enterprise.contentstorage.data.connectors.IQuarantineMetadataStorage
        java:global/upload-api-talonEAR-1.0.0-SNAPSHOT/transient-store-data/QuarantineTransientMetadataStorageImpl
        java:app/transient-store-data/QuarantineTransientMetadataStorageImpl
        java:module/QuarantineTransientMetadataStorageImpl

老实说,日志遍布整个地方

1 个答案:

答案 0 :(得分:0)

如果部署EJB,则应将其打包为JAR,并将ejb-jar.xml作为描述符。我不认为我们可以将EJB与Web应用程序文件一起打包。

典型结构:

EAR

  • WARs - Web模块

  • JARs - EJBs

相关问题