Clientkonfigurationen für Servlet PageList erstellen
Die Konfigurationsdaten von PageListServlet können in der Datei für IBM Web Extensions definiert werden. Die Datei für IBM Web Extensions wird von einem Assembliertool in der WAR-Datei (Web Applications Archive) erstellt und gespeichert.
Informationen zu diesem Vorgang
Achtung: Die angepasste Erweiterung für das Servlet "PageList" ist seit
WebSphere Application Server
Version 9.0 als veraltet gekennzeichnet und wird in einem der künftigen Releases entfernt.
Gestalten Sie Ihre traditionellen Anwendungen neu, so dass sie an Stelle der com.ibm.servlet-Klassen javax.servlet.filter-Klassen verwenden.
Ab der Spezifikation Servlet 2.3 können Sie mit den Klassen von javax.servlet.filter
Anforderungen abfangen und Antworten überprüfen.
Außerdem unterstützen diese Klassen das Verketten, Erweitern und Verkürzen von Antworten.
Gehen Sie wie folgt vor, um Seitenlisten zu konfigurieren und zu implementieren:
Vorgehensweise
PageListServlet erweitern
Das folgende Beispiel veranschaulicht, wie ein Servlet die Klasse PageListServlet erweitert und den Typ der vom Client geforderten Markup-Sprache bestimmt. Das Servlet verwendet dann die Methode callPage, um eine entsprechende JSP-Datei (JavaServer Pages) aufzurufen. In diesem Beispiel hat die JSP-Datei, die die richtige Markup-Sprache für die Antwort enthält, den Namen Hello.page.
public class HelloPervasiveServlet extends PageListServlet implements Serializable
{
/*
* doGet -- Eingehende HTTP-GET-Anforderungen verarbeiten
*/
public void doGet (HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
// Der Name der aufzurufenden Seite:
String pageName = "Hello.page";
// Zuerst prüfen, ob das Servlet mit einer Abfragezeichenfolge
// aufgerufen wurde, die einen Wert für die Markup-Sprache enthält.
// Wenn das Servlet mit
// http://localhost/servlets/HeloPervasive?mlname=VXML
// aufgerufen wurde, folgende Methode verwenden:
String mlname= getMLNameFromRequest(request);
// Wenn in der Abfragezeichenfolge kein Typ für die Markup-Sprache
// angegeben ist, versuchen, den Clienttyp aus der Anforderung zu ermitteln.
// Den Namen der in der Datei client_types.xml konfigurierten
// Markup-Sprache verwenden. if (mlName == null)
{
mlName = getMLTypeFromRequest(request);
}
try
{
// Die angeforderte Seite bereitstellen.
callPage(mlName, pageName, request, response);
}
catch (Exception e)
{
handleError(mlName, request, response, e);
}
}
}