Web Archive (WAR) ファイル用の web.xml ファイルのカスタマイズ

ワークベンチがユーザーの Web サービスのために作成する WAR ファイルでワークベンチが使用する web.xml ファイルをカスタマイズできます。 これらのフィルターをサービスとともにデプロイする場合、ご使用の Web サービスに対する着信要求のためのフィルターをいくつか追加することによって、web.xml を変更できます。 また、追加のサーブレットまたはサーブレット・マッピング・タグを追加することもできます。

このタスクについて

web.xml ファイルがご使用の Web サービスのためのプロジェクトに存在するとしても、web.xml ファイルを直接編集することはしません。 代わりに、ワークベンチが WAR ファイルを再度生成する際にワークベンチが web.xml ファイルに含める変更を入れたテンプレートを作成します。

「作成とデプロイ (Build and Deploy)」ウィザードを使用して WAR ファイルを生成するとき、ワークベンチはプロジェクト内のすべてのファイルを削除して、それらを再作成します。 したがって、web.xml ファイルを直接編集すると、「作成とデプロイ (Build and Deploy)」ウィザードを使用するときに、行った変更を消失することになります。

web.xml ファイルに加える編集を含めたテンプレートを使用すると、ワークベンチはそのテンプレートの内容を、ワークベンチが作成する web.xml ファイルの内容とマージします。

手順

web.xml ファイルをカスタマイズするには、次のようにします。

  1. 「ナビゲーター」ビューがまだ開いていなければ、それを開きます。
    1. 「ウィンドウ」 > 「ビューの表示」 > 「その他」を選択します。
    2. 「ビューの表示」ウィンドウで、「一般」 > 「ナビゲーター」を選択します。
  2. プロジェクト用の .metadata フォルダーを右クリックして、「新規」 > 「その他」を選択します。 「新規」ウィザードで、「一般」を展開し、 「フォルダー (Folder)」を選択します。 「次へ」をクリックします。 「新規フォルダー (New Folder)」ページで、名前として templates と入力します。 「完了」をクリックします。
  3. テンプレート・フォルダーを右クリックして、「新規」> 「その他」を選択します。 「新規」ウィザードで、「一般」を展開し、 「フォルダー (Folder)」を選択します。 「次へ」をクリックします。 「新規フォルダー」ページで、名前として j2ee と入力します。 「完了」をクリックします。
  4. j2ee フォルダーを右クリックして、「新規」 > 「その他」を選択します。 「新規」ウィザードで、「一般」を展開し、 「ファイル (File)」を選択します。 「次へ」をクリックします。 「新規ファイル」ページで、名前として web_template.xml と入力します。 「完了」をクリックします。
  5. 新規ファイル用のエディターで、「ソース」タブを選択します。 以下のタグをエディターへコピー・アンド・ペーストします。
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
    version="2.5">
    
    </web-app>
  6. ご使用の Web サービス用の WAR ファイル用に生成する web.xml ファイルにワークベンチが取り込む内容を追加します。 Java Servlet 2.5 仕様のためのスキーマが定義する任意のタグ内に、内容を追加します。
    以下は、テンプレート例です。
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
    <filter>
        <filter-name>DebugFilter-In</filter-name>
        <description>Print XMl request, XML response and current timestamps</description>
        <filter-class>com.vzb.varwebservices.filter.DebugFilter</filter-class>
        <init-param>
           <param-name>input</param-name>
           <param-value>true</param-value>
        </init-param>
    </filter>
    
    <servlet>
        <servlet-name>testServlet1</servlet-name>
        <servlet-class>com.ibm.datatools.dsws.rt.testclient.testServlet1</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>testServlet1</servlet-name>
        <url-pattern>/TestClient/testServlet1</url-pattern>
    </servlet-mapping>
     
    <servlet>
        <servlet-name>testServlet2</servlet-name>
        <servlet-class>com.ibm.datatools.dsws.rt.testclient.testServlet2</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>testServlet2</servlet-name>
        <url-pattern>/TestClient/testServlet2</url-pattern>
    </servlet-mapping>
    </web-app>
  7. テンプレートを保存します。 次回プロジェクトを作成するとき、ワークベンチはテンプレート・ファイルの内容を、新規に生成される WAR ファイルに取り込まれる web.xml ファイルに挿入します。

フィードバック