为什么我不能在JBoss AS中将根上下文更改为“/”?

时间:2013-06-19 06:18:32

标签: java maven jboss7.x

我有一个部署在JBoss 7.1服务器上的java企业应用程序的maven项目。

在我的EAR模块中,我有这个pom.xml

<plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-ear-plugin</artifactId>
                <configuration>
                    <finalName>myproject</finalName>
                    <modules>
                        <webModule>
                            <groupId>myproject</groupId>
                            <artifactId>myproject-webservice</artifactId>
                            <contextRoot>/</contextRoot>
                            <unpack>false</unpack>
                        </webModule>
                        <ejbModule>
                            <groupId>myproject</groupId>
                            <artifactId>myproject-ejb</artifactId>
                        </ejbModule>
                    </modules>
                </configuration>
            </plugin>

我想将根上下文设置为/,以便我可以转到http://127.0.0.1:8080。但如果根上下文为/,则JBoss不会部署:

08:00:54,251 INFO  [org.jboss.as.controller] (management-handler-thread - 36) JBAS014774: Service status report
JBAS014777:   Services which failed to start:      service jboss.web.deployment.default-host./: org.jboss.msc.service.StartException in service jboss.web.deployment.default-host./: Failed to start service

但是如果根上下文不是/,而是<contextRoot>/myproject</contextRoot>,那么它可以工作(但我必须转到http://127.0.0.1:8080/myproject)。

我的配置有什么问题?

1 个答案:

答案 0 :(得分:2)

我在这里找到答案:https://community.jboss.org/thread/198890

它代表:
AS7附带了部署到/上下文的默认应用程序。当您点击localhost:8080时,您将看到一个页面,其中包含一条消息:

To replace this page set "enable-welcome-root" to false in your server configuration and deploy your own war with / as its context path.

我刚刚更改了standalone.xml,这就是解决方案! :-D