将war文件部署到JBOSS 7.1.1版本时引发未知错误

Posted

技术标签:

【中文标题】将war文件部署到JBOSS 7.1.1版本时引发未知错误【英文标题】:Unknown error thrown from JBOSS 7.1.1 version while deploying war file to it 【发布时间】:2014-07-28 17:03:18 【问题描述】:

无法了解此错误是如何产生的。没有理由没有来自te的大脑感觉

17:52:58,395 信息 [org.jboss.modules] JBoss 模块版本 1.1.1.GA 17:52:58,604 信息 [org.jboss.msc] JBoss MSC 版本 1.0.2.GA 17:52:58,665 信息 [org.jboss.as] JBAS015899:JBoss AS 7.1.1.Final “Brontes”从 17:52:59,554 开始 INFO [org.xnio] XNIO 版本 3.0.3.GA 17:52:59,554 信息 [org.jboss.as.server] JBAS015888:创建 http 使用套接字绑定 (management-http) 的管理服务 17:52:59,563 INFO [org.xnio.nio] XNIO NIO 实现版本 3.0.3.GA 17:52:59,570 INFO [org.jboss.remoting] JBoss Remoting 版本 3.2.3.GA 17:52:59,590 信息 [org.jboss.as.logging] JBAS011502:删除引导日志处理程序 17:52:59,593 信息 [org.jboss.as.configadmin] (ServerService 线程池 -- 26) JBAS016200:激活 ConfigAdmin 子系统 17:52:59,617 信息 [org.jboss.as.naming] (ServerService 线程池 -- 38) JBAS011800: 激活命名子系统 17:52:59,624 INFO [org.jboss.as.osgi] (ServerService 线程池 -- 39) JBAS011940: 激活 OSGi 子系统 17:52:59,633 信息 [org.jboss.as.clustering.infinispan] (ServerService 线程池 -- 31) JBAS010280: 激活 Infinispan 子系统。 17:52:59,655 信息 [org.jboss.as.security] (ServerService 线程池——44)JBAS013101:激活安全子系统 17:52:59,667 INFO [org.jboss.as.security](MSC 服务线程 1-6) JBAS013100:当前PicketBox 版本=4.0.7.Final 17:52:59,719 信息 [org.jboss.as.naming](MSC 服务线程 1-5)JBAS011802:正在启动 命名服务 17:52:59,722 INFO [org.jboss.as.mail.extension] (MSC 服务线程 1-5) JBAS015400:绑定邮件会话 [java:jboss/mail/默认] 17:52:59,725 信息 [org.jboss.as.webservices] (ServerService 线程池 -- 48) JBAS015537:激活 Web 服务扩展 17:52:59,782 信息 [org.jboss.as.connector](MSC 服务线程 1-8)JBAS010408:正在启动 JCA 子系统 (JBoss IronJacamar 1.0.9.Final) 17:52:59,812 INFO [org.jboss.as.connector.subsystems.datasources](服务器服务线程 池 -- 27) JBAS010403:部署符合 JDBC 的驱动程序类 org.h2.Driver(1.3 版)17:52:59,861 信息 [org.jboss.as.connector.subsystems.datasources](服务器服务线程 池 -- 27) JBAS010404:部署不符合 JDBC 的驱动程序类 com.mysql.jdbc.Driver(5.1 版)17:52:59,927 信息 [org.jboss.ws.common.management.AbstractServerConfig](MSC 服务 线程 1-5) JBoss Web 服务 - 堆栈 CXF 服务器 4.0.2.GA 17:53:00,363 信息 [org.jboss.as.server.deployment.scanner](MSC 服务线程 1-3) JBAS015012: 启动 FileSystemDeploymentService 对于目录 D:\jboss-as-7.1.1.Final\standalone\deployments 17:53:00,363 信息 [org.jboss.as.server.deployment.scanner](MSC 服务线程 1-5) JBAS015012: 启动 FileSystemDeploymentService 对于目录 D:\workspace\eclipse.metadata.plugins\org.jboss.ide.eclipse.as.core\JBoss_7.1_Runtime_Server1402151223281\deploy 17:53:00,393 INFO [org.jboss.as.remoting](MSC 服务线程 1-8) JBAS017100:监听 localhost/127.0.0 .1:4447 17:53:00,393 INFO [org.jboss.as.remoting](MSC服务线程1-1)JBAS017100:监听 开 / 127 .0。 0.1:10101 17:53:00,413 信息 [org.apache.coyote.http11.Http11Protocol](MSC服务线程1-5) 在 http-locallhost-127 上启动 Coyote HTTP/1.1。 0.0.1-7070 17:53:00,525 信息 [org.jboss.as.connector.subsystems.datasources] (MSC服务线程1-4)JBAS010400:绑定数据源[java:/MySqlDS] 17:53:00,525 信息 [org.jboss.as.connector.subsystems.datasources] (MSC服务线程1-1)JBAS010400:绑定数据源 [java:jboss/datasources/ExampleDS] 17:53:00,554 信息 [org.jboss.as] (控制器引导线程)​​JBAS015951:管理控制台监听 http: // 127 .0.0.1: 10102 17:53:00,554 INFO [org.jboss.as] (控制器 引导线程)​​JBAS015874:JBoss AS 7.1.1.Final “Brontes” 开始于 2443ms - 启动了 215 个服务中的 139 个(74 个服务是被动的或 按需)17:53:15,376 信息 [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) JBAS015003: Found HelloRest.war in 部署目录。要触发部署,请创建一个名为 HelloRest.war.dodeploy 17:53:15,412 信息 [org.jboss.as.server.deployment](MSC 服务线程 1-3)JBAS015876: 开始部署“HelloRest.war” 17:53:16,843 INFO [org.jboss.weld.deployer](MSC 服务线程 1-4)JBAS016002: 处理焊接部署 HelloRest.war 17:53:16,853 错误 [org.jboss.msc.service.fail](MSC服务线程1-4)MSC00001:失败 启动服务 jboss.deployment.unit."HelloRest.war".POST_MODULE: 服务中的 org.jboss.msc.service.StartException jboss.deployment.unit."HelloRest.war".POST_MODULE: 处理失败 部署“HelloRest.war”的阶段 POST_MODULE org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] 在 org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] 在 org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] 在 java.util.concurrent.ThreadPoolExecutor.runWorker(未知来源) [rt.jar:1.7.0_51] 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(未知来源) [rt.jar:1.7.0_51] 在 java.lang.Thread.run(未知来源) [rt.jar:1.7.0_51] 原因: java.lang.StringIndexOutOfBoundsException:字符串索引超出范围: 0 at java.lang.String.charAt(Unknown Source) [rt.jar:1.7.0_51] at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:460) 在 org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456) 在 org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398) 在 org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120) 在 org.jboss.as.jaxrs.deployment.JaxrsScanningProcessor.checkDeclaredApplicationClassAsServlet(JaxrsScanningProcessor.java:288) 在 org.jboss.as.jaxrs.deployment.JaxrsScanningProcessor.scanWebDeployment(JaxrsScanningProcessor.java:155) 在 org.jboss.as.jaxrs.deployment.JaxrsScanningProcessor.deploy(JaxrsScanningProcessor.java:104) 在 org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] ... 5 更多

17:53:16,868 INFO [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS015870:部署“HelloRest.war”的部署被回滚 带有失败消息 "JBAS014671: 失败的服务" => "jboss.deployment.unit.\"HelloRest.war\".POST_MODULE" => “服务中的 org.jboss.msc.service.StartException jboss.deployment.unit.\"HelloRest.war\".POST_MODULE: 处理失败 部署阶段 POST_MODULE \"HelloRest.war\"" 17:53:16,870 INFO [org.jboss.as.controller] (DeploymentScanner-threads - 2) JBAS014774: 服务状态报告 JBAS014777:服务启动失败: 服务 jboss.deployment.unit."HelloRest.war".POST_MODULE: 服务中的 org.jboss.msc.service.StartException jboss.deployment.unit."HelloRest.war".POST_MODULE: 处理失败 部署“HelloRest.war”的阶段 POST_MODULE

17:53:16,879 错误 [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) "JBAS014653: 复合操作 失败并被回滚。失败的步骤:" => "操作步骤 2" => "JBAS014671: 失败的服务" => "jboss.deployment.unit.\"HelloRest.war\".POST_MODULE" => “服务中的 org.jboss.msc.service.StartException jboss.deployment.unit.\"HelloRest.war\".POST_MODULE: 处理失败 阶段 POST_MODULE 部署 \"HelloRest.war\"" 17:53:16,914 INFO [org.jboss.as.server.deployment](MSC 服务线程 1-7) JBAS015877:在 40 毫秒内停止部署 HelloRest.war

PERSON JAVA 类:

package rest.hello;

public class Person implements Speakable 

@Override
public String getName() 
    return "My Name";



SPEACKABLE 界面:

package rest.hello;

import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

@Path("/person")
@Produces(MediaType.TEXT_PLAIN)
@Consumes(MediaType.TEXT_PLAIN)
public interface Speakable 

@GET
@Path("/name")
public String getName();

POM 文件

<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.tools</groupId>
<artifactId>hellorest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>hellorest</name>
<description>hellorest</description>
<build>
    <resources>
        <resource>
            <directory>$basedir/src/main/java</directory>
            <excludes>
                <exclude>**/*.java</exclude>
            </excludes>
        </resource>
    </resources>
    <plugins>
        <plugin>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.3</version>
            <configuration>
                <warSourceDirectory>$basedir/WebContent</warSourceDirectory>
                <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
        </plugin>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.0</version>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
            </configuration>
        </plugin>
    </plugins>
</build>

<repositories>
    <repository>
        <id>maven-central</id>
        <url>http://repo1.maven.org/maven2</url>
    </repository>
    <repository>
        <id>maven2-repository.java.net</id>
        <name>Java.net Repository for Maven</name>
        <url>http://download.java.net/maven/2/</url>
        <layout>default</layout>
    </repository>
    <repository>
        <id>java.net2</id>
        <name>Java.net</name>
        <url>https://oss.sonatype.org/content/repositories/java.net2</url>
    </repository>
</repositories>

<dependencies>

    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
        <version>6.0</version>
    </dependency>

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>ejb3-persistence</artifactId>
        <version>1.0.1.GA</version>
    </dependency>

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-annotations</artifactId>
        <version>3.3.1.GA</version>
    </dependency>

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate</artifactId>
        <version>3.2.6.ga</version>
    </dependency>

    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.16</version>
    </dependency>

    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-jaxrs</artifactId>
        <version>2.2.1.GA</version>
    </dependency>

</dependencies>

【问题讨论】:

【参考方案1】:

在您的 Eclipse 中,单击项目 > 属性 > 项目方面

取消选中 jax-rs 选项并重试

【讨论】:

以上是关于将war文件部署到JBOSS 7.1.1版本时引发未知错误的主要内容,如果未能解决你的问题,请参考以下文章

无法在jboss AS 7.1.1中部署war文件

如何从 Eclipse 将 Maven 项目的 WAR 部署到 JBoss 服务器?

如何编写 Dockerfile 将我的 war 文件部署到 jboss 7.2 中?

Eclipse 生成的war文件在JBoss中无效

通过传递参数在JBoss中部署WAR

JavaEE + JBoss:验证所有部署的war文件