无法启动服务 jboss.deployment.unit

发布于 2025-01-19 02:53:21 字数 13488 浏览 2 评论 0原文

我正在尝试使用教程: https:// /balusc.omnifaces.org/2020/04/jsf-23-tutorial-with-eclipse-maven.html

  • 服务器 Wildfly18
  • Java 11
  • Eclipse 2022-03 (4.23.0)

消息模型类:

public class Message implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(nullable = false) @Lob
    private @NotNull String text;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getText() {
        return text;
    }

    public void setText(String text) {
        this.text = text;
    } 
}

MesssageService 类:

public class MessageService {

    @PersistenceContext
    private EntityManager entityManager;

    public void create(Message message) {
        entityManager.persist(message);
    }

    public List<Message> list() {
        return entityManager.createQuery("FROM Message m", Message.class).getResultList();
    }

}

Bean 类:

@Named
@RequestScoped
public class Bean {

    private Message message = new Message();
    private List<Message> messages; 

    @Inject
    private MessageService messageService;

    @PostConstruct
    public void init() {
        messages = messageService.list();
    }

    public void submit() {
        messageService.create(message);
        messages.add(message);
        message = new Message();
    }

    public Message getMessage() {
        return message;
    }

    public List<Message> getMessages() {
        return messages;
    }
}

Persistense.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.2"
    xmlns="http://xmlns.jcp.org/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence 
    http://xmlns.jcp.org/xml/ns/persistence/persistence_2_2.xsd">

    <persistence-unit name="project"
        transaction-type="JTA">
        <jta-data-source>java:global/DataSourceName</jta-data-source>
        <class>pt.example.project.model.Message</class>
        <properties>
            <property
                name="javax.persistence.schema-generation.database.action"
                value="drop-and-create" />
        </properties>
    </persistence-unit>
</persistence>

pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>pt.example</groupId>
    <artifactId>project</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>project</name>
 
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
        <failOnMissingWebXml>false</failOnMissingWebXml>
    </properties>

    <dependencies>
        <dependency>
            <groupId>jakarta.platform</groupId>
            <artifactId>jakarta.jakartaee-api</artifactId>
            <version>8.0.0</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>1.4.200</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

    <distributionManagement>
        <repository>
            <id>Central Maven repository</id>
            <name>Central Maven repository https</name>
            <url>https://repo.maven.apache.org/maven2</url>
        </repository>
    </distributionManagement>

</project>

错误日志: 12:33:02,320 INFO [org.jboss.as.ejb3.deployment](MSC 服务线程 1-1)WFLYEJB0473:部署单元“部署“project.war””中名为“MessageService”的会话 bean 的 JNDI 绑定如下:

12:33:02,320 INFO  [org.jboss.as.ejb3.deployment] (MSC service thread 1-1) WFLYEJB0473: JNDI bindings for session bean named 'MessageService' in deployment unit 'deployment "project.war"' are as follows:

    java:global/project/MessageService!pt.example.project.service.MessageService
    java:app/project/MessageService!pt.example.project.service.MessageService
    java:module/MessageService!pt.example.project.service.MessageService
    ejb:/project/MessageService!pt.example.project.service.MessageService
    java:global/project/MessageService
    java:app/project/MessageService
    java:module/MessageService

12:33:02,902 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC000001: Failed to start service jboss.deployment.unit."project.war".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.unit."project.war".INSTALL: WFLYSRV0153: Failed to process phase INSTALL of deployment "project.war"
    at [email protected]//org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:183)
    at [email protected]//org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1739)
    at [email protected]//org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1701)
    at [email protected]//org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1559)
    at [email protected]//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
    at [email protected]//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
    at [email protected]//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
    at [email protected]//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
    at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: java.lang.ClassNotFoundException: org.h2.jdbcx.JdbcDataSource from [Module "deployment.project.war" from Service Module Loader]
    at [email protected]//org.jboss.as.connector.deployers.datasource.DataSourceDefinitionInjectionSource.getResourceValue(DataSourceDefinitionInjectionSource.java:178)
    at [email protected]//org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor.addJndiBinding(ModuleJndiBindingProcessor.java:289)
    at [email protected]//org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor.deploy(ModuleJndiBindingProcessor.java:122)
    at [email protected]//org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:176)
    ... 8 more
Caused by: java.lang.ClassNotFoundException: org.h2.jdbcx.JdbcDataSource from [Module "deployment.project.war" from Service Module Loader]
    at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:255)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:410)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
    at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:116)
    at [email protected]//org.jboss.as.connector.deployers.datasource.DataSourceDefinitionInjectionSource.getResourceValue(DataSourceDefinitionInjectionSource.java:142)
    ... 11 more

12:33:02,997 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 76) WFLYCLINF0002: Started client-mappings cache from ejb container
12:33:03,069 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "project.war")]) - failure description: {
    "WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"project.war\".INSTALL" => "WFLYSRV0153: Failed to process phase INSTALL of deployment \"project.war\"
    Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: java.lang.ClassNotFoundException: org.h2.jdbcx.JdbcDataSource from [Module \"deployment.project.war\" from Service Module Loader]
    Caused by: java.lang.ClassNotFoundException: org.h2.jdbcx.JdbcDataSource from [Module \"deployment.project.war\" from Service Module Loader]"},
    "WFLYCTL0412: Required services that are not installed:" => [
        "jboss.naming.context.java.global.DataSourceName",
        "jboss.deployment.unit.\"project.war\".beanmanager",
        "jboss.deployment.unit.\"project.war\".WeldStartService"
    ],
    "WFLYCTL0180: Services with missing/unavailable dependencies" => [
        "jboss.persistenceunit.\"project.war#project\".__FIRST_PHASE__ is missing [jboss.naming.context.java.global.DataSourceName]",
        "jboss.deployment.unit.\"project.war\".batch.artifact.factory is missing [jboss.deployment.unit.\"project.war\".beanmanager]",
        "jboss.deployment.unit.\"project.war\".weld.weldClassIntrospector is missing [jboss.deployment.unit.\"project.war\".WeldStartService, jboss.deployment.unit.\"project.war\".beanmanager]"
    ]
}
12:33:03,325 INFO  [org.jboss.as.server] (ServerService Thread Pool -- 44) WFLYSRV0010: Deployed "project.war" (runtime-name : "project.war")
12:33:03,330 INFO  [org.jboss.as.controller] (Controller Boot Thread) WFLYCTL0183: Service status report
WFLYCTL0184:    New missing/unsatisfied dependencies:
      service jboss.deployment.unit."project.war".WeldStartService (missing) dependents: [service jboss.deployment.unit."project.war".weld.weldClassIntrospector] 
      service jboss.deployment.unit."project.war".beanmanager (missing) dependents: [service jboss.deployment.unit."project.war".weld.weldClassIntrospector, service jboss.deployment.unit."project.war".batch.artifact.factory] 
      service jboss.naming.context.java.global.DataSourceName (missing) dependents: [service jboss.persistenceunit."project.war#project".__FIRST_PHASE__] 
WFLYCTL0186:   Services which failed to start:      service jboss.deployment.unit."project.war".INSTALL: WFLYSRV0153: Failed to process phase INSTALL of deployment "project.war"
WFLYCTL0448: 2 additional services are down due to their dependencies being missing or failed
12:33:03,400 INFO  [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0212: Resuming server
12:33:03,402 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0060: Http management interface listening on http://127.0.0.1:9990/management
12:33:03,403 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0051: Admin console listening on http://127.0.0.1:9990
12:33:03,403 ERROR [org.jboss.as] (Controller Boot Thread) WFLYSRV0026: WildFly Full 18.0.1.Final (WildFly Core 10.0.3.Final) started (with errors) in 9989ms - Started 390 of 610 services (6 services failed or missing dependencies, 371 services are lazy, passive or on-demand)

I am trying to use tutorial: https://balusc.omnifaces.org/2020/04/jsf-23-tutorial-with-eclipse-maven.html

  • Server Wildfly18
  • Java 11
  • Eclipse 2022-03 (4.23.0)

Message Model Class:

public class Message implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(nullable = false) @Lob
    private @NotNull String text;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getText() {
        return text;
    }

    public void setText(String text) {
        this.text = text;
    } 
}

MesssageService Class:

public class MessageService {

    @PersistenceContext
    private EntityManager entityManager;

    public void create(Message message) {
        entityManager.persist(message);
    }

    public List<Message> list() {
        return entityManager.createQuery("FROM Message m", Message.class).getResultList();
    }

}

Bean Class:

@Named
@RequestScoped
public class Bean {

    private Message message = new Message();
    private List<Message> messages; 

    @Inject
    private MessageService messageService;

    @PostConstruct
    public void init() {
        messages = messageService.list();
    }

    public void submit() {
        messageService.create(message);
        messages.add(message);
        message = new Message();
    }

    public Message getMessage() {
        return message;
    }

    public List<Message> getMessages() {
        return messages;
    }
}

Persistense.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.2"
    xmlns="http://xmlns.jcp.org/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence 
    http://xmlns.jcp.org/xml/ns/persistence/persistence_2_2.xsd">

    <persistence-unit name="project"
        transaction-type="JTA">
        <jta-data-source>java:global/DataSourceName</jta-data-source>
        <class>pt.example.project.model.Message</class>
        <properties>
            <property
                name="javax.persistence.schema-generation.database.action"
                value="drop-and-create" />
        </properties>
    </persistence-unit>
</persistence>

pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>pt.example</groupId>
    <artifactId>project</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>project</name>
 
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
        <failOnMissingWebXml>false</failOnMissingWebXml>
    </properties>

    <dependencies>
        <dependency>
            <groupId>jakarta.platform</groupId>
            <artifactId>jakarta.jakartaee-api</artifactId>
            <version>8.0.0</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>1.4.200</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

    <distributionManagement>
        <repository>
            <id>Central Maven repository</id>
            <name>Central Maven repository https</name>
            <url>https://repo.maven.apache.org/maven2</url>
        </repository>
    </distributionManagement>

</project>

Error log:
12:33:02,320 INFO [org.jboss.as.ejb3.deployment] (MSC service thread 1-1) WFLYEJB0473: JNDI bindings for session bean named 'MessageService' in deployment unit 'deployment "project.war"' are as follows:

12:33:02,320 INFO  [org.jboss.as.ejb3.deployment] (MSC service thread 1-1) WFLYEJB0473: JNDI bindings for session bean named 'MessageService' in deployment unit 'deployment "project.war"' are as follows:

    java:global/project/MessageService!pt.example.project.service.MessageService
    java:app/project/MessageService!pt.example.project.service.MessageService
    java:module/MessageService!pt.example.project.service.MessageService
    ejb:/project/MessageService!pt.example.project.service.MessageService
    java:global/project/MessageService
    java:app/project/MessageService
    java:module/MessageService

12:33:02,902 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC000001: Failed to start service jboss.deployment.unit."project.war".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.unit."project.war".INSTALL: WFLYSRV0153: Failed to process phase INSTALL of deployment "project.war"
    at [email protected]//org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:183)
    at [email protected]//org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1739)
    at [email protected]//org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1701)
    at [email protected]//org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1559)
    at [email protected]//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
    at [email protected]//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
    at [email protected]//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
    at [email protected]//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
    at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: java.lang.ClassNotFoundException: org.h2.jdbcx.JdbcDataSource from [Module "deployment.project.war" from Service Module Loader]
    at [email protected]//org.jboss.as.connector.deployers.datasource.DataSourceDefinitionInjectionSource.getResourceValue(DataSourceDefinitionInjectionSource.java:178)
    at [email protected]//org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor.addJndiBinding(ModuleJndiBindingProcessor.java:289)
    at [email protected]//org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor.deploy(ModuleJndiBindingProcessor.java:122)
    at [email protected]//org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:176)
    ... 8 more
Caused by: java.lang.ClassNotFoundException: org.h2.jdbcx.JdbcDataSource from [Module "deployment.project.war" from Service Module Loader]
    at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:255)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:410)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
    at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:116)
    at [email protected]//org.jboss.as.connector.deployers.datasource.DataSourceDefinitionInjectionSource.getResourceValue(DataSourceDefinitionInjectionSource.java:142)
    ... 11 more

12:33:02,997 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 76) WFLYCLINF0002: Started client-mappings cache from ejb container
12:33:03,069 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "project.war")]) - failure description: {
    "WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"project.war\".INSTALL" => "WFLYSRV0153: Failed to process phase INSTALL of deployment \"project.war\"
    Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: java.lang.ClassNotFoundException: org.h2.jdbcx.JdbcDataSource from [Module \"deployment.project.war\" from Service Module Loader]
    Caused by: java.lang.ClassNotFoundException: org.h2.jdbcx.JdbcDataSource from [Module \"deployment.project.war\" from Service Module Loader]"},
    "WFLYCTL0412: Required services that are not installed:" => [
        "jboss.naming.context.java.global.DataSourceName",
        "jboss.deployment.unit.\"project.war\".beanmanager",
        "jboss.deployment.unit.\"project.war\".WeldStartService"
    ],
    "WFLYCTL0180: Services with missing/unavailable dependencies" => [
        "jboss.persistenceunit.\"project.war#project\".__FIRST_PHASE__ is missing [jboss.naming.context.java.global.DataSourceName]",
        "jboss.deployment.unit.\"project.war\".batch.artifact.factory is missing [jboss.deployment.unit.\"project.war\".beanmanager]",
        "jboss.deployment.unit.\"project.war\".weld.weldClassIntrospector is missing [jboss.deployment.unit.\"project.war\".WeldStartService, jboss.deployment.unit.\"project.war\".beanmanager]"
    ]
}
12:33:03,325 INFO  [org.jboss.as.server] (ServerService Thread Pool -- 44) WFLYSRV0010: Deployed "project.war" (runtime-name : "project.war")
12:33:03,330 INFO  [org.jboss.as.controller] (Controller Boot Thread) WFLYCTL0183: Service status report
WFLYCTL0184:    New missing/unsatisfied dependencies:
      service jboss.deployment.unit."project.war".WeldStartService (missing) dependents: [service jboss.deployment.unit."project.war".weld.weldClassIntrospector] 
      service jboss.deployment.unit."project.war".beanmanager (missing) dependents: [service jboss.deployment.unit."project.war".weld.weldClassIntrospector, service jboss.deployment.unit."project.war".batch.artifact.factory] 
      service jboss.naming.context.java.global.DataSourceName (missing) dependents: [service jboss.persistenceunit."project.war#project".__FIRST_PHASE__] 
WFLYCTL0186:   Services which failed to start:      service jboss.deployment.unit."project.war".INSTALL: WFLYSRV0153: Failed to process phase INSTALL of deployment "project.war"
WFLYCTL0448: 2 additional services are down due to their dependencies being missing or failed
12:33:03,400 INFO  [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0212: Resuming server
12:33:03,402 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0060: Http management interface listening on http://127.0.0.1:9990/management
12:33:03,403 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0051: Admin console listening on http://127.0.0.1:9990
12:33:03,403 ERROR [org.jboss.as] (Controller Boot Thread) WFLYSRV0026: WildFly Full 18.0.1.Final (WildFly Core 10.0.3.Final) started (with errors) in 9989ms - Started 390 of 610 services (6 services failed or missing dependencies, 371 services are lazy, passive or on-demand)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文