ZAWWW-2st1.2-w11.tresc-1.0-Slajd7

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

Intercepting Filter

Intercepting Filter


Wzorzec Intercepting Filter rozwiązuje problem przechwytywania i modyfikowania żądań przychodzących od klientów, oraz modyfikacji odpowiedzi zwracanych do klientów. Przykłady możliwych zastosowań to sprawdzenie poprawności sesji klienta, sprawdzenie parametrów klienta HTTP, zarządzanie kodowaniem danych, kompresja/dekompresja danych. Podstawowe zalety stosowania wzorca Intercepting Filter polegają na scentralizowaniu przetwarzania żądań, uniknięciu duplikacji kodu, uniezależnieniu głównego modułu przetwarzania żądań od zadań przetwarzania wstępnego i końcowego, oraz dostarczeniu niezależnych komponentów przetwarzania wstępnego, które mogą być dowolnie konfigurowane, włączane lub wyłączane. Istotne jest, że Intercepting Filter nie zajmuje się przetwarzaniem żądań pod kątem logiki aplikacji. Najczęstszą strategią implementacji jest wykorzystanie mechanizmu filtrów serwletów i implementacja interfejsu javax.servlet.Filter. Konfiguracja dla takiej strategii mieści się w deskryptorze wdrożenia web.xml. Wzorzec Intercepting Filter może też znaleźć zastosowanie poza warstwą prezentacji, np. do obsługi komunikacji z usługami sieciowymi w warstwie integracji i wstępnym przetwarzaniu komunikatów SOAP. Konsekwencje użycia wzorca Intercepting Filter obejmują możliwość wielokrotnego użycia tego samego filtru w różnych miejscach aplikacji i poprawę elastyczności poprzez możliwość deklaratywnego zarządzania filtrami i łańcuchami filtrów przez deskryptor wdrożenia web.xml. Wzorzec Intercepting Filter wiąże się jednak także z dodatkowym narzutem związanym z koniecznością obsługi komunikacji między poszczególnymi filtrami.


<< Poprzedni slajd | Spis treści | Następny slajd >>