使用maven成功部署在JBoss 7上,但是web-app没有运行

时间:2013-12-04 00:53:16

标签: java maven deployment jboss

我使用maven为JBoss 7创建了一个Web应用程序。在maven任务期间,创建了一个战争。这是我的pom.xml

<?xml version="1.0"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>

<build>
    <plugins>
        <plugin>
            <groupId>org.jboss.as.plugins</groupId>
            <artifactId>jboss-as-maven-plugin</artifactId>
            <version>7.5.Final</version>
            <configuration>
                <hostname>127.0.0.1</hostname>
                <port>9999</port>
                <name>webAdmin</name>
                <username>administrator</username>
                <password>mypassword</password>
            </configuration>
        </plugin>
    </plugins>
    <finalName>webAdmin</finalName>
</build>

<repositories>
    <repository>
        <id>lightadmin-nexus-releases</id>
        <url>http://lightadmin.org/nexus/content/repositories/releases</url>
        <releases>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
        </releases>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.4</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.lightadmin</groupId>
        <artifactId>lightadmin</artifactId>
        <version>1.0.0.M2</version>
    </dependency>
    <dependency>
        <groupId>org.jboss.as</groupId>
        <artifactId>jboss-as-arquillian-container-managed</artifactId>
        <version>7.1.1.Final</version>
        <scope>test</scope>
    </dependency>
</dependencies>

这是我为它创建的web.xml。

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
<display-name>Ifrit Web Administration 1.0</display-name>

<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>

因此创建了webAdmin.war文件,如果我手动部署它(也就是说,我转到Jboss Web控制台并在“manage deploymentments”下部署它)我可以在[{{3下)成功查看index.jsp }}

当我尝试使用maven mvn jboss-as:deploy来部署它时出现问题。

这些是我遵循的步骤:

  1. 取消部署我手动部署的战争
  2. mvn jboss-as:deploy
  3. 转到Jboss Web控制台,我确认war文件已部署好(我可以看到它已启用)
  4. 转到[http://localhost:8080/webAdmin],我得到404。
  5. 我见过另一个这样的案例,以防有人想将其标记为重复说http://localhost:8080/webAdmin],但我仍然无法使其发挥作用。我也创建了一个EAR文件,一个jboss-web.xml,它只是没有出现。

    有没有办法知道哪个上下文根是由Jboss签名的?或者任何提示,为什么它在手动部署时与maven一起部署时有效?

    由于

    亚历

2 个答案:

答案 0 :(得分:2)

显然 JBoss AS 无法识别您已部署的工件的类型。尝试通过插件配置中的部署 名称 清楚地说明:

<plugin>
    <groupId>org.jboss.as.plugins</groupId>
    <artifactId>jboss-as-maven-plugin</artifactId>
    <version>7.5.Final</version>
    <configuration>
        <hostname>127.0.0.1</hostname>
        <port>9999</port>
        ***<name>webAdmin.war</name>***
        <username>administrator</username>
        <password>mypassword</password>
    </configuration>
</plugin>

答案 1 :(得分:0)

无论如何我不是专业人士,但在将我的网络应用程序部署到jboss时,我也遇到了各种各样的小问题。

我不知道你是否在更改代码后刷新maven构建,但我发现这有助于安静很多。

使用maven进行部署通常需要3个步骤(来自JBossDevStudio)。 以“maven clean”运行 作为“maven生成源”运行 运行为“maven build”..输入运行环境的目标(tomcat:运行tomcat)

希望它有所帮助!