在 JBoss As 7 下更改 Web 应用程序的上下文根 [英] Changing context root for a web app under JBoss As 7

查看:24
本文介绍了在 JBoss As 7 下更改 Web 应用程序的上下文根的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想将上下文根从/war_name"(默认情况下)更改为/".

I want to change context root from "/war_name" (by default) to "/".

因此,我创建了一个 jboss-web.xml 文件,并将其推送到 WEB-INF 目录中.

Thus, I created a jboss-web.xml file that I pushed in WEB-INF directory.

这个文件的内容是:

<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
    <context-root>/</context-root>
</jboss-web>

不幸的是,这会导致战争部署期间出现以下错误:

Unfortunately, this causes the following error during war deployment :

ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC00001: 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
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1780) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [:1.7.0_01]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [:1.7.0_01]
    at java.lang.Thread.run(Thread.java:722) [:1.7.0_01]
Caused by: java.lang.IllegalArgumentException: Child container with name  already exists
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:804)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:792)

但是,当我输入诸如/RoomManagement 之类的目录名称时,我没有这个问题.但是如果我使用这个,我将无法访问不在/RoomManagement 中的 JSP.

However, when I put some directory name like : /RoomManagement, I don't have this issue. But if I use this one, I couldn't access to JSPs that aren't in /RoomManagement.

您有将上下文根配置为/"的想法吗?

Have you an idea for well-configuring context-root to "/" ?

推荐答案

看起来有另一个应用程序正在根上下文/"中运行.

It looks like there is another app that's running at the root context "/".

在将您的应用分配给根上下文之前,您可能必须删除其他应用或将其移动到不同的上下文.

You may have to delete the other app or move it to a different context before you can assign your app to the root context.

如果冲突的应用程序是 JBoss AppServer root 本身,您可以使用以下命令禁用它 (enable-welcome-root="false")

If the conflicting app is JBoss AppServer root itself, you can disable that using the following (enable-welcome-root="false")

<subsystem xmlns="urn:jboss:domain:web:1.0">
  <connector name="http" protocol="HTTP/1.1" socket-binding="http" scheme="http"/>
  <virtual-server name="localhost" enable-welcome-root="false">
    <alias name="example.com"/>
  </virtual-server>
</subsystem>

这篇关于在 JBoss As 7 下更改 Web 应用程序的上下文根的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆