Implementación de las configuraciones del cliente del servlet de listas de páginas

La información de configuración de PageListServlet puede definirse en el archivo de ampliaciones Web de IBM® (IBM Web Extensions). El archivo de ampliaciones Web de IBM se crea y almacena en el archivo WAR (archivo de aplicaciones web) mediante una herramienta de ensamblaje.

Acerca de esta tarea

Atención: La extensión personalizada de PageList Servlet está en desuso en WebSphere Application Server Versión 9.0 y se eliminará en futuros releases. Vuelva a diseñar la arquitectura de las aplicaciones heredadas para utilizar clases javax.servlet.filter en lugar de clases com.ibm.servlet. A partir de la especificación de Servlet 2.3, las clases javax.servlet.filter le permiten interceptar solicitudes y examinar respuestas. Asimismo, puede utilizar las clases javax.servlet.filter para conseguir funciones de encadenamiento, así como dar formato o truncar respuestas.

Para configurar e implementar listas de páginas:

Procedimiento

  1. Para configurar la información de listas de páginas, utilice el diálogo Añadir entrada de lenguaje de códigos de una herramienta de ensamblaje. En el separador Servlets de un editor de descriptor de despliegue, seleccione un servlet y pulse Añadir bajo WebSphere Extensions.
  2. Añada el método callPage() a su servlet para invocar un archivo de página de servidor Java (JavaServer Page - JSP) en respuesta a una solicitud de cliente.

    PageListServlet tiene un método callPage() que invoca un archivo JSP en respuesta a la solicitud HTTP de una página en una lista de páginas. El método callPage() se puede invocar de alguna de estas maneras:

    • callPage(String pageName, HttpServletRequest request, HttpServletResponse response)

      donde los argumentos del método son:

      pageName
      Nombre de página definido en la configuración de PageListServlet
      request
      Objeto HttpServletRequest
      response
      Objeto HttpServletResponse
    • callPage(String mlName, String pageName, HttpServletRequest request, HttpServletResponse response)

      donde los argumentos del método son:

      mlName
      Tipo de lenguaje de marcación
      pageName
      Nombre de página definido en la configuración de PageListServlet
      request
      Objeto HttpServletRequest
      response
      Objeto HttpServletResponse
  3. Utilice el soporte de detección de tipo de cliente de Servlet PageList para determinar el tipo de lenguaje de símbolos necesario para la respuesta a un cliente que realiza una llamada.

Ampliación de PageListServlet

El siguiente ejemplo muestra cómo un servlet amplía la clase PageListServlet y determina el tipo de lenguaje de marcación necesario para el cliente. A continuación, el servlet utiliza el método callPage para llamar a un archivo JSP (JavaServer Pages) adecuado. En este ejemplo, el archivo JSP que proporciona el lenguaje de marcación correcto para la respuesta es Hello.page.

public class HelloPervasiveServlet extends PageListServlet implements Serializable
{
     /*
     * doGet -- Procesa solicitudes HTTP GET entrantes
     */
    public  void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException
    {
       // Este es el nombre de la página que se va a llamar:
       String pageName = "Hello.page";
 
       // Comprobar primero si el servlet se ha invocado con una queryString que contenga 
		  // un valor de lenguaje de etiquetas.
       // Por ejemplo, si es así cómo se invoca el servlet:
       //  http://localhost/servlets/HeloPervasive?mlname=VXML
       //  utilice el siguiente método:
       String mlname= getMLNameFromRequest(request);

        // Si no se proporciona ningún tipo de lenguaje de marcación en la queryString, 
        // intente determinar el tipo de
        //  cliente a partir de la solicitud y utilice el nombre del lenguaje de marcación configurado 
        // en el archivo client_types.xml.         if (mlName == null)
        {
          mlName = getMLTypeFromRequest(request);
         }
         try
         {
           // Ofrecer la página de solicitud.
           callPage(mlName, pageName, request, response);
          }
          catch (Exception e)
          { 
            handleError(mlName, request, response, e);
           }
       }
}

Icon that indicates the type of topic Task topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tweb_ssplx
File name: tweb_ssplx.html