web.xml-Dateien für WAR-Dateien anpassen

Sie können die Datei web.xml anpassen, die die Workbench in der WAR-Datei (WAR - Web Archive) verwendet, die die Workbench für Ihren Web-Service erstellt. Sie können die Datei web.xml beispielsweise ändern, indem Sie einige Filter für Anforderungen hinzufügen, die in Ihrem Web-Service eingehen, wenn diese Filter zusammen mit dem Service implementiert werden sollen. Darüber hinaus können Sie beispielsweise zusätzliche Servlets oder Tags für die Servletzuordnung hinzufügen.

Informationen zu diesem Vorgang

Obwohl eine Datei web.xml in dem Projekt für Ihren Web-Service vorhanden ist, bearbeiten Sie die Datei web.xml nicht direkt. Stattdessen erstellen Sie eine Schablone, die die von Ihnen gewünschten Änderungen enthält, die die Workbench in die Datei web.xml aufnehmen soll, wenn sie die WAR -Datei erneut generiert.

Wenn Sie den Assistenten zum Erstellen und Implementieren zum Generieren einer WAR-Datei verwenden, löscht die Workbench alle Dateien in Ihrem Projekt und erstellt sie erneut. Wenn Sie die Datei web.xml direkt bearbeiten, verlieren Sie daher Ihre Änderungen, wenn Sie den Assistenten zum Erstellen und Implementieren verwenden.

Wenn Sie eine Schablone verwenden, die die Änderungen enthält, die Sie an der Datei web.xml vornehmen wollen, fasst die Workbench den Inhalt dieser Schablone mit dem Inhalt der Datei web.xml zusammen, die sie erstellt.

Vorgehensweise

Gehen Sie wie folgt vor, um eine Datei web.xml anzupassen:

  1. Öffnen Sie die Navigatorsicht, falls sie noch nicht geöffnet ist.
    1. Wählen Sie Fenster > Sicht anzeigen > Andere aus.
    2. Wählen Sie Allgemein > Navigator im Fenster Sicht anzeigen.
  2. Klicken Sie mit der rechten Maustaste auf den Ordner .metadata für Ihr Projekt und wählen Sie Neu > Andere. Erweitern Sie Allgemein im Assistenten Neu und wählen Sie Ordner aus. Klicken Sie auf Weiter. Geben Sie auf der Seite Neuer Ordner Schablonen als Name an. Klicken Sie auf Fertig stellen.
  3. Klicken Sie mit der rechten Maustaste auf den Schablonenordner und wählen Sie Neu > Andere aus. Erweitern Sie Allgemein im Assistenten Neu und wählen Sie Ordner aus. Klicken Sie auf Weiter. Geben Sie j2ee als Namen auf der Seite Neuer Ordner ein. Klicken Sie auf Fertig stellen.
  4. Klicken Sie mit der rechten Maustaste auf den Ordner j2ee und wählen Sie Neu > Andere. Erweitern Sie Allgemein im Assistenten Neu und wählen Sie Datei aus. Klicken Sie auf Weiter. Geben Sie web_template.xml als Namen auf der Seite Neue Datei ein. Klicken Sie auf Fertig stellen.
  5. Wählen Sie im Editor für die neue Datei die Registerkarte Quelle aus. Kopieren Sie die folgenden Tags und fügen Sie sie im Editor ein:
    <?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. Fügen Sie den Inhalt hinzu, den die Workbench in die Datei web.xml einfügen soll, die sie für die WAR-Datei für Ihren Web-Service generiert. Sie können jedem der Tags Inhalt hinzufügen, die das Schema für die Java Servlet 2.5-Spezifikation definiert.
    Es folgt eine Beispielschablone:
    <?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. Speichern Sie Ihre Schablone. Wenn Sie Ihr Projekt das nächste Mal erstellen, fügt die Workbench den Inhalt der Schablonendatei in die Datei web.xml ein, die in die neu generierte WAR-Datei eingefügt wird.

Feedback