0

次の構造の 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>

レジンにはデフォルト設定があります。それはhttp://localhost:3333/path/serviceapp.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ます。問題はどこだ?構成は私には正しいようです。

編集: レジンのログ

[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
4

1 に答える 1

0

application.xml は、例のように「WEB-INF」ではなく、耳の中の「META-INF」フォルダーに属している必要があります。

于 2011-02-28T09:29:28.727 に答える