El asistente de escuchas le ayuda a crear escuchas de ciclo de vida de la aplicación guiándole a través del proceso de creación y proporcionándole los archivos de salida que puede utilizar o que puede modificar para utilizarlos con la aplicación Web. Los escuchas pueden ejecutarse en servidores Web compatibles con Java EE.
Para crear un escucha, siga estos pasos:
- Desde la perspectiva Java EE, amplíe el proyecto dinámico en la vista Explorador de proyectos.
- Pulse con el botón derecho del ratón en el icono Escucha y seleccione en el menú emergente. Aparecerá el asistente Crear escucha.
- Siga las instrucciones del asistente del proyecto.
- Escuchas de ciclo de vida de la aplicación
- La Especificación de Sun Microsystems Java™ Servlet 2.3 define las siguientes interfaces que representan los escuchas del ciclo de vida de aplicaciones. Debe seleccionar una de las interfaces como mínimo.
- javax.servlet.ServletContextListener: esta interfaz la proporciona el paquete javax.servlet y puede
utilizarse para escuchar los eventos de ciclo de vida de ServletContext. Esta interfaz tiene dos métodos:
contextInitialized y contextDestroyed. El método contextInitialized se llama cuando la aplicación web
está lista para dar servicio a las peticiones y el método contextDestroyed se invoca cuando el contexto
de servlet está a punto de concluir.
- javax.servlet.ServletContextAttributeListener: esta interfaz la proporciona el paquete javax.servlet. Puede
utilizarse para notificar cuando se añade cualquier atributo a ServletContext o si cualquiera de los atributos de
ServletContext se cambia o se elimina. Esta interfaz tiene tres métodos: attributeAdded, attributeRemoved
y attributeReplaced.
- javax.servlet.ServletRequestListener: esta interfaz la proporciona el paquete javax.servlet. Puede
utilizarse para notificar cuando una petición entra o sale de ámbito en un componente Web. Esta interfaz tiene dos
métodos: requestInitialized y requestDestroyed. El método requestInitialized se llama cuando está a punto
de entrar el primer servlet o filtro en cada aplicación Web. El método requestDestroyed se llama cuando
sale del último servlet o del primer filtro de la cadena.
- javax.servlet.ServletRequestAttributeListener: esta interfaz la proporciona el paquete javax.servlet y puede
utilizarse para notificar cuando se cambia cualquier atributo de petición. Esta interfaz tiene tres métodos:
attributeAdded, attributeRemoved y attributeReplaced. El método attributteAdded se llama cuando se ha
añadido un atributo nuevo a una petición de servlet. El método attributeRemoved se llama cuando se ha
eliminado un atributo existente de la solicitud de servlet. El método attributeReplaced se llama cuando se
ha sustituido un atributo en la solicitud de servlet.
- javax.servlet.http.HttpSessionListener: esta interfaz la proporciona el paquete javax.servlet.http y puede
utilizarse para escuchar los eventos de ciclo de vida de una sesión. Esta interfaz tiene dos métodos: sessionCreated y
sessionDestroyed. El método sessionCreated se llama cuando se crea un objeto HttpSession. El método
sessionDestroyed se llama siempre que un objeto HttpSession queda invalidado.
- javax.servlet.http.HttpSessionActivationListener: esta interfaz la proporciona el paquete
javax.servlet.http. Puede utilizarse para escuchar eventos de contenedor notificando que las sesiones se pondrán en
modalidad pasiva o activa. Esta interfaz tiene dos métodos: sessionDidActivate y sessionWillPasivate. El método
sessionDidActivate se llama cuando la sesión se acaba de poner en modalidad activa y el método
sessionWillPasivate se llama cuando la sesión se va a poner en modalidad pasiva.
- javax.servlet.http.HttpSessionAttributeListener: esta interfaz la proporciona el paquete javax.servlet.http
y puede utilizarse para escuchar eventos relacionados con atributos de sesión. Esta interfaz tiene tres métodos:
attributeAdded, attributeRemoved y attributeReplaced. El método attributeAdded se llama cuando se añade
un atributo a un objeto HttpSession. Los métodos attributeRemoved y attributeReplaced se
llaman cuando se elimina o se sustituye un atributo HttpSession, respectivamente.
- javax.servlet.http.HttpSessionBindingListener: esta interfaz la proporciona el paquete javax.servlet.http y
puede utilizarse para recibir notificación cuando se enlaza o desenlaza un objeto de una sesión. Esta interfaz tiene
dos métodos: valueBound y valueUnbound. El método valueBound se llama cuando el objeto se enlaza a una
sesión e identifica la sesión. El método valueUnbound se llama cuando el objeto se está desenlazando de
una sesión e identifica la sesión.
- Modificadores
- La Especificación de Sun Microsystems Java Servlet 2.3 afirma que una clase de escucha debe ser public y no abstract. Por lo tanto, no puede cambiar estos modificadores. El único que puede cambiar es el modificador final.
- Interfaces
- Los interfaces seleccionados en la página anterior del asistente se proporcionan como valores predeterminados en el campo Interfaces. Para añadir interfaces adicionales, pulse el botón Añadir junto a este campo.
- Diálogo de selección de interfaces
- Este diálogo aparece si selecciona añadir una interfaz al servlet. Cuando escribe el nombre de la interfaz que está añadiendo, la lista de interfaces disponibles incluidas en el recuadro
de lista Elementos coincidentes se actualiza dinámicamente para mostrar sólo las interfaces que coincidan con el
patrón. Elija una interfaz para ver el calificador y pulse Aceptar cuando haya terminado.