【问题标题】:Not able to see home page after deploying war file in JBOSS 7在 JBOSS 7 中部署 war 文件后看不到主页
【发布时间】:2014-07-08 11:39:17
【问题描述】:

我有一个使用 Tomcat 在本地成功运行的 Struts2 应用程序。我需要在JBOSS 7中部署该应用程序的战争。这是我第一次尝试。

将war文件放入路径“E:\jboss-as-7.1.1.Final\standalone\deployments”后,可以在控制台看到消息Deployed "MyApplication.war"

但是,在点击 url http://localhost:9990/<MyApplication> 时,我收到 404 错误。 你能帮忙看看我哪里做错了吗?

  • 注意:

我在路径“E:\jboss-as-”中有 MyApplication.war.deployed 文件 7.1.1.Final\standalone\deployments”。

我在standalone.xml 文件中有以下配置:

<deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000" auto-deploy-zipped="true" auto-deploy-exploded="false"/>

【问题讨论】:

  • 在 JBoss 运行时部署你的 war 文件,看看它是否会在没有任何错误的情况下部署。有时,在部署文件夹中已经存在战争的情况下启动 Jboss 会显示已部署的战争。您可能错过了一些配置调整。
  • 我可以在 JBOSS 控制台中看到我的应用程序。在命令行中,我可以看到下面的行。 12:14:26,322 INFO [org.jboss.web] (ServerService 线程池 -- 101) JBAS018210:注册 web 上下文:/Matix 12:14:28,120 INFO [org.jboss.as.server] (HttpManagementService-threads - 17 ) JB AS018559:部署“Matix.war”(运行时名称:“Matix.war”)
  • 如果我点击localhost:9990/Matix,什么都不会发生。
  • 你在standalone.xml中配置了那个端口9990吗?在&lt;socket-binding-group&gt;element 下是您对http 的套接字绑定,例如&lt;socket-binding name="http" port="9990"/&gt;?如您所知,此元素是您配置 http/https 端口的地方。或者只是检查哪个端口在此绑定下并使用它。
  • 非常感谢!端口错了。应该是 8080。实际上,当我点击“localhost:8080/”时,JBOSS 主页来了,点击管理控制台链接,它被重定向到 9090 端口,我认为这是我需要点击的端口对于我的申请。但是,正如你所说,我检查了配置文件,发现 http 的端口是 8080,然后当我点击 url“localhost:8080/Matix/”时,我找到了我的应用程序的登录页面。非常感谢。

标签: jboss


【解决方案1】:

正如其他答案所述,在JBoss 7.x 中,默认情况下端口9990 用于management-http,端口8080 用于http

最重要的是检查http和http ssl连接的standalone.xml配置文件中的httphttpsbindings分别是什么端口。

您可以在standalone.xml 中的&lt;socket-binding-group&gt; 部分找到它,并且您可以根据自己的喜好修改端口,只要它们尚未使用,例如我将端口8088 用于http。

然后你可以使用声明的端口来调用你的应用程序,所以在你的情况下http://localhost:8080/&lt;MyApplication&gt;

<socket-binding-group name="standard-sockets" default-interface="public" port offset="${jboss.socket.binding.port-offset:0}">
   ...
    <socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>
    <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9443}"/>
    <socket-binding name="ajp" port="8009"/>
    <socket-binding name="http" port="8080"/>
    <socket-binding name="https" port="8443"/>
    ...
</socket-binding-group>

【讨论】:

    【解决方案2】:

    端口 9990 用于管理-http 不用于 http。

    在standalone.xml 中,http 的默认值为 8080。

    试试http://localhost:8080/&lt;MyApplication&gt;

    仔细检查standalone.xml fot http端口。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-18
      • 1970-01-01
      • 2014-07-25
      • 2015-08-17
      • 1970-01-01
      • 1970-01-01
      • 2011-07-03
      相关资源
      最近更新 更多