如何将Jboss默认页面更改为我的应用程序主页?

如何将Jboss默认页面更改为我的应用程序主页?,jboss,Jboss,我在JBOSS中部署了一个应用程序,它的访问方式是:localhost/appname 当我只输入IP地址时,我会被重定向到JBOSS默认页面。 有没有一种方法可以在不需要给出/appname的情况下进入应用程序的主页 我希望问题是清楚的。 提前谢谢 您必须在名为“ROOT.war”的文件中部署应用程序。您还必须删除deploy目录中现有的ROOT.war。作为Nightsough给出的解决方案的一部分,您还可以使用web-INF/jboss-web.xml文件的context ROOT标记定义

我在JBOSS中部署了一个应用程序,它的访问方式是:localhost/appname 当我只输入IP地址时,我会被重定向到JBOSS默认页面。 有没有一种方法可以在不需要给出/appname的情况下进入应用程序的主页

我希望问题是清楚的。
提前谢谢

您必须在名为“ROOT.war”的文件中部署应用程序。您还必须删除deploy目录中现有的ROOT.war。

作为Nightsough给出的解决方案的一部分,您还可以使用web-INF/jboss-web.xml文件的context ROOT标记定义web应用程序的context ROOT。因此,将其定义为“/”,可以保留原始文件名。通过这种方式,您可以覆盖JBoss的默认行为,即将web应用程序的上下文根定义为应用程序的文件名(除非应用程序名为root.war,其默认上下文为“/”)

因此jboss-web.xml文件类似于:

<jboss-web>
   ... other tags ...
   <context-root>/</context-root>
   ... other tags ...
</jboss-web>

... 其他标签。。。
/
... 其他标签。。。
请注意,不能有两个应用程序具有相同的上下文根,因此首先必须删除root.war,或者按照相同的过程更改其上下文根:

  • 将上下文根标记添加到jboss-web.xml(例如:
    /oldRoot
    ,这将使旧的root.war应用程序通过localhost/oldRoot可用),或
  • 只是更改它的文件名
如果您想要部署一个内部包含web模块(war)的EAR文件(而不仅仅是一个普通的war文件),您必须使用EAR的META-INF/application.xml。以这种方式定义web模块:

<application>
        ... other tags and other modules (ejb, web ...) ...
    <module>
        <web>
            <web-uri>nameOfYourWarFile.war</web-uri>
            <context-root>/</context-root>
        </web>
    </module>
        ... other tags and other modules (ejb, web ...) ... 
</application>

... 其他标签和其他模块(ejb、web…)。。。
名称yourwarfile.war
/
... 其他标签和其他模块(ejb、web…)。。。

我正在使用eap6。这是我第一次使用jboss。我看不出我有$JBOSS_HOME/server。我看到$JBOSS_HOME/domain/server。我已经搜索了$JBOSS_HOME下的所有文件。我找不到任何WEB-INF和jboss WEB.xml,您使用的是哪个版本的jboss?我现在尝试过了,默认页面已消失,但出现404错误。我正在尝试部署EAR文件OK!我以为你只是想部署一个war文件。如果您有一个ear文件,您可以在META-INF/application.xml文件中更改其上下文根,定义webmodule:warFileName.war/…这是一个问题、一个答案还是一个内在想法?