31

Java Web アプリケーションには、web.xmlというファイルがあり、バージョン管理されています。

これは正確には何ですか?それは何のために使用されますか?

これは、 web.xmlの SO wiki です。しかし、それは私をあまり説明しません。

サーブレット、フィルター、リスナーなど、Web アプリケーションでサーブレット API ベースの実装を定義、宣言、および構成できます。

web.xml のバージョン管理の例:

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
         version="3.0">

誰かがこれを簡単な例で説明できますか?

4

3 に答える 3

36

Web.xmlは、Web アプリケーションの構成を定義する中心的な場所です。たとえば、次のように指定できます。

また、Servlet 3.0 仕様を調査することもお勧めします。ここでは、これらのパラメーターの多くをアノテーションで設定できます。

バージョニング

web.xmlバージョニングとは、ファイルの構文が従わなければならないXML スキーマのバージョンを指します。さらに重要なことに、アプリケーションが実装するサーブレット仕様のバージョンも示します。サーブレット 3.0 準拠の開始方法の例web.xml:

<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">

ほとんどの IDE は、 のその部分を自動的に生成しweb.xmlます。何らかの理由で手動で変更する場合は、web-app と xsd のバージョンを一致させるように注意してください。

の具体的な例についてはweb.xml、次を参照してください。

于 2013-04-13T08:38:06.467 に答える
2

一部のweb.xml espから私が理解しているのweb-app version="3.0"は、サーブレットのバージョンです。したがって、回答をサーブレットのバージョンと、それがなぜそれほど重要なのかに制限します。ご存知かもしれませんが、Java EE でプログラミングする場合、サーブレットのバージョンが他のほとんどの標準を制御します。

例えば、

JSF 2.0 では、JAVA EE5 に付属する SERVLET 2.5 と WEBLOGIC 10.3.X がこれらすべてのテクノロジーをサポートする必要があります。他のコンテナーについては、リリース ノートを確認してください。次に、JSF 2.1 には、JAVA EE6 に付属する SERVLET 3.0 が必要であり、WEBLOGIC 12c はこれらすべてのテクノロジーをサポートしています。もちろん、下位互換性は確保されていますが、ほとんどの場合、何らかの問題が発生する可能性があります。

weblogic 12c のリリース ノートを確認すると、サポートされている最も重要なテクノロジとサーブレットのバージョンに星印を付けました。これがMiljen Mikicの素晴らしい答えであなたにも役立つことを願っています.

Standard    Version
Contexts and Dependency Injection for Java EE   1.0
Dependency Injection for Java EE    1.0
Expression Language (EL)    2.2, 2.1, 2.0
Only JSP 2.0 and greater supports Expression Language 2.x.
JAAS    1.0 Full
JASPIC  1.0
Java API for XML-Based Web Services (JAX-WS)    2.2, 2.1, 2.0
Java API for RESTful Web Services (JAX-RS)  1.1
Java Authorization Contract for Containers (JACC)   1.4
**Java EE   6.0**
Java EE Application Deployment  1.2
Java EE Bean Validation 1.1
Jave EE Common Annotations  1.0
Java EE Connector Architecture  1.6
Java EE EJB 3.1
Java EE Enterprise Web Services 1.3, 1.2, 1.1
Jave EE Interceptors    1.1
**Java EE JDBC  4.0, 3.0**
Java EE JMS 1.1, 1.0.2b
Java EE JNDI    1.2
**Java EE JSF   2.1, 2.0, 1.2, 1.1**
Java EE JSP 2.2, 2.1, 2.0, 1.2, and 1.1
JSP 1.2. and 1.1 include Expression Language (EL), but do not support EL 2.x or greater.
Java EE Managed Beans   1.0
**Java EE Servlet   3.0, 2.5, 2.4, 2.3, and 2.2**
Java RMI    1.0
JavaMail    1.4
JAX-B   2.2, 2.1, 2.0
JAX-P   1.3, 1.2, 1.1
JAX-R   1.0
JAX-RPC 1.1
JCE 1.4
**JDKs  6.0 (aka 1.6), 5.0 (aka 1.5, clients only)**
JMX 1.2, 1.0
JPA 2.0, 1.0
JSR 77: Java EE Management  1.1
JSTL    1.2
Managed Beans   1.0
OTS/JTA OTS 1.2 and JTA 1.1
RMI/IIOP    1.0
SOAP Attachments for Java (SAAJ)    1.3, 1.2
Streaming API for XML (StAX)    1.0
Web Services Metadata for the Java Platform 2.0, 1.1
于 2013-04-13T11:17:38.050 に答える