【问题标题】:Setting context root for EAR application (Resin)为 EAR 应用程序设置上下文根 (Resin)
【发布时间】:2011-02-28 09:20:44
【问题描述】:

我有一个具有以下结构的 EAR 应用程序:

app.ear
|-- app.war
`-- META-INF
    `-- application.xml

应用程序.xml

<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://java.sun.com/xml/ns/j2ee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
         http://java.sun.com/xml/ns/j2ee/application_1_4.xsd"
         version="1.4">

  <display-name>App</display-name>
  <description>Application</description>

  <module>
    <web>
      <web-uri>app.war</web-uri>
      <context-root>/path</context-root>
    </web>
  </module>

</application>

Resin 具有默认配置。我希望http://localhost:3333/path/service 应该是 app.war,但是每个请求都返回这个:

<html>
<head>
  <title>404 Not Found</title>
</head>
<body>
  <h1>404 Not Found</h1>
  /path/service was not found on this server.
  <p/>
  <hr/>
  <small>Resin/3.1.9</small>
</body>
</html>

如果我只将应用程序作为 WAR 文件,Resin 会加载它并在 /app/service 上运行。问题出在哪里?配置对我来说似乎是正确的。

编辑:Resin 的日志

[10:38:57.799] {main} WebApp[http://localhost:3333] active
[10:38:58.018] {main} WebApp[http://localhost:3333/resin-admin] active
[10:38:58.059] {main} WebApp[http://localhost:3333/app.ear] active
[10:39:00.323] {main} WebApp[http://localhost:3333/resin-doc] active

【问题讨论】:

  • 你不应该改变问题本身来匹配答案。现在答案没有意义了。

标签: java war ear resin


【解决方案1】:

application.xml 应该属于耳朵内的文件夹“META-INF”,而不是您的示例中的“WEB-INF”。

【讨论】:

  • 我把它改成了META-INF,服务器的响应和以前一样。树脂的日志说它被正确加载了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-07-08
  • 2017-05-25
  • 2017-04-26
  • 2015-04-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多