Kreator obiektów nasłuchiwania ułatwia utworzenie obiektów
nasłuchiwania cyklu życia aplikacji, przeprowadzając użytkownika przez proces
tworzenia i udostępniając pliki wyjściowe, których można później użyć
bezpośrednio w aplikacji WWW lub zmodyfikować. Obiekty nasłuchiwania mogą być
uruchamiane na serwerach WWW zgodnych z Java EE.
Aby utworzyć obiekt nasłuchiwania, wykonaj następujące
czynności:
- W perspektywie Java EE rozwiń swój
projekt dynamiczny w widoku Eksplorator
projektów.
- Kliknij prawym przyciskiem myszy ikonę
Obiekt nasłuchiwania, a następnie wybierz z menu podręcznego
opcje . Zostanie
wyświetlony kreator Utwórz obiekt nasłuchiwania.
- Wykonuj polecenia kreatora projektu.
- Obiekty nasłuchiwania cyklu życia aplikacji
- Specyfikacja Sun Microsystems Java™ Servlet 2.3
Specification definiuje następujące interfejsy reprezentujące obiekty
nasłuchiwania cyklu życia aplikacji. Należy wybrać przynajmniej jeden z tych
interfejsów.
- javax.servlet.ServletContextListener: Ten interfejs jest
dostarczany z pakietem javax.servlet i służy do nasłuchiwania zdarzeń cyklu
życia kontekstu ServletContext. Składa się z dwóch metod:
contextInitialized i contextDestroyed. Metoda
contextInitialized jest wywoływana, gdy aplikacja WWW
jest gotowa do obsługi żądań, a metoda
contextDestroyed jest wywoływana podczas wyłączania
kontekstu serwletu.
- javax.servlet.ServletContextAttributeListener: Ten interfejs jest
dostarczany z pakietem javax.servlet. Służy do odbierania powiadomień o dodaniu dowolnego atrybutu do kontekstu
ServletContext lub zmianie bądź usunięciu dowolnego z atrybutów tego kontekstu. Składa
się z trzech metod: attributeAdded, attributeRemoved
i attributeReplaced.
- javax.servlet.ServletRequestListener: Ten interfejs jest
dostarczany z pakietem javax.servlet. Służy do odbierania powiadomień o
nadchodzących żądaniach z zasięgu lub spoza zasięgu komponentu WWW. Składa się z dwóch metod: requestInitialized i requestDestroyed. Metoda
requestInitialized jest wywoływana podczas
wprowadzania pierwszego serwletu lub filtru w każdej aplikacji WWW. Metoda
requestDestroyed jest wywoływana podczas wychodzenia
z ostatniego serwletu lub z pierwszego filtru w łańcuchu.
- javax.servlet.ServletRequestAttributeListener: Ten interfejs jest
dostarczany z pakietem javax.servlet i służy do odbierania powiadomień o
zmianie atrybutów żądania. Składa się z trzech metod: attributeAdded,
attributeRemoved i attributeReplaced. Metoda
attributteAdded jest wywoływana podczas dodawania
nowego
atrybutu do żądania serwletu. Metoda
attributeRemoved
jest wywoływana po usunięciu istniejącego atrybutu z żądania serwletu. Metoda
attributeReplaced jest wywoływana po zastąpieniu
atrybutu w żądaniu serwletu.
- javax.servlet.http.HttpSessionListener: Ten interfejs jest
dostarczany z pakietem javax.servlet.http i służy do nasłuchiwania zdarzeń
cyklu życia sesji. Składa się z dwóch metod:
sessionCreated i sessionDestroyed. Metoda
sessionCreated jest wywoływana podczas tworzenia
obiektu HttpSession. Metoda sessionDestroyed jest
wywoływana, gdy obiekt HttpSession utraci ważność.
- javax.servlet.http.HttpSessionActivationListener: Ten interfejs jest
dostarczany z pakietem javax.servlet.http. Służy do nasłuchiwania zdarzeń
kontenera powiadamiających, że sesja stanie się pasywna lub aktywna. Składa się
z dwóch metod: sessionDidActivate i sessionWillPasivate. Metoda
sessionDidActivate jest wywoływana po aktywowaniu
sesji, a metoda sessionWillPasivate - podczas
przechodzenia sesji w stan pasywny.
- javax.servlet.http.HttpSessionAttributeListener: Ten interfejs jest
dostarczany z pakietem javax.servlet.http i służy do nasłuchiwania zdarzeń
powiązanych z atrybutami sesji. Składa się z trzech metod: attributeAdded,
attributeRemoved i attributeReplaced. Metoda
attributeAdded jest wywoływana po dodaniu atrybutu do
obiektu HttpSession. Metody attributeRemoved i
attributeReplaced są wywoływane odpowiednio po
usunięciu lub zastąpieniu atrybutu.
- javax.servlet.http.HttpSessionBindingListener: Ten interfejs jest
dostarczany z pakietem javax.servlet.http i służy do odbierania powiadomień
powiązaniu lub usunięciu powiązania obiektu z sesją. Składa się z dwóch metod:
valueBound i valueUnbound. Metoda valueBound jest
wywoływana podczas powiązywania obiektu z sesją i identyfikuje sesję. Metoda
valueUnbound jest wywoływana podczas
usuwania powiązania
obiektu z sesją i identyfikuje sesję.
- Modyfikatory
- Specyfikacja Sun Microsystems Java Servlet 2.3 Specification
określa, że klasa Listener musi mieć modyfikator public i nie
może mieć modyfikatora abstract. Dlatego nie można zmieniać
tych modyfikatorów. Jedynym dostępnym do modyfikacji modyfikatorem jest final.
- Interfejsy
- Interfejsy wybrane na poprzedniej stronie kreatora są umieszczane w polu
Interfejsy jako wartości domyślne. Aby dodać kolejne
interfejsy, należy kliknąć przycisk Dodaj znajdujący się obok
tego pola.
- Okno dialogowe wyboru interfejsu
- To okno jest wyświetlane, jeśli chcesz dodać interfejs do serwletu. Podczas
wpisywania nazwy dodawanego interfejsu lista dostępnych interfejsów w polu
listy Zgodne elementy jest na bieżąco aktualizowana, tak aby
były wyświetlane tylko interfejsy zgodne z wprowadzonym wzorcem. Aby zobaczyć
kwalifikator, należy wybrać interfejs, a po zakończeniu kliknąć przycisk
OK.