java - JBoss 将 ROOT.WAR 重命名为默认值

标签 java servlets jboss

我有一个 jboss 4 web 服务器,如果我将一个 webapp 部署到

www/webapps/ROOT.WAR/

它在域上加载为 http://www.mywebsite.com/

如果我将一个 webapp 部署到

www/webapps/internal

它在域上加载为 http://www.mywebsite.com/internal/

所以 jboss 在某处将 ROOT.WAR 检测为表示“/”的神奇关键字。

这是可配置的吗?如果我需要我的文件夹结构是:

www/webapps/default

我可以更改设置以使 Jboss 将其加载为 http://www.mywebsite.com/吗?而不是 http://www.mywebsite.com/default/

谢谢

最佳答案

ROOT.war 作为默认 Web 应用程序是 Java EE Servlet 规范的一部分。

基本上,如果您的 Web 应用程序没有明确指定上下文根,它将默认使用 war 文件的名称。 “根”上下文是一种特殊情况,它将分配给您站点的根目录。 IE。 “/”。更改上下文根的最简单方法是将 war 文件重命名为“ROOT”以外的名称。

特别是对于 JBoss,您可以在您的应用程序 WEB-INF 文件夹中创建一个 jboss-web.xml,如下所示:

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

以上是您显式设置根上下文的方式。以下是将“内部”设置为上下文的方法:

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

这是关于如何配置它的 JBoss 指南:

http://docs.jboss.org/jbossas/guides/webguide/r2/en/html/ch06.html

关于java - JBoss 将 ROOT.WAR 重命名为默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12308116/

相关文章:

java - Solrj 导入 - 找不到包

java - 如何在 Jenkins 中运行 Cucumber JVM 测试

html - 我想使用 servlet 从 mysql 数据库检索图像,并在表中显示该图像以及该用户详细信息

java.lang.NullPointerException-登录 servlet

java - 将 infinispan 缓存注入(inject) wildfly 8.0.0.Final

java - 从独立客户端访问部署在 JBoss 7.1.1 上的 WAR 中的 @Remote EJB

java - Room.createFromAsset() 每次打开应用程序时都会重写应用程序的数据库

java - GCC 路径长度问题

java - 为 Servlet 设置 SimpleJdbcTemplate

jboss - Wildfly:使用客户端证书身份验证为用户分配默认角色