web-dev-qa-db-ja.com

Java web app-サーブレットAPIのバージョンを決定するものは何ですか?web.xmlで指定されていますか?

私はEclipse EE Junoを使用しており、現在のWebアプリケーションはDynamic web modules 2.4。バージョンを3.0まで上げようとしていますが、なんらかの理由でできません。プロジェクトファセットのバージョンを変更しようとすると、Cannot change version of project facet Dynamic Web Module to 3.0。これを決定する私のweb.xmlファイルにいくつかの二段行がある可能性はありますか? Eclipseプロジェクトのファセット設定のみからでない場合、動的Webモジュールのバージョンを変更するにはどうすればよいですか?

24
stackoverflow

web.xmlのサーブレット2.4:

<web-app version="2.4"
  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/web-app_2_4.xsd">

web.xmlのサーブレット3.0:

<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=構成です。サーブレット3.0を使用するには、CLASSPATHに3.0 JARが必要です。これにより、新しい注釈や他のクラスが利用可能になります。ただし、WARにサーブレットJARを含めないでください。実装はサーブレットコンテナから行う必要があります。

40