Programmgesteuerte Konfiguration der Listener, Filter und Servlets
Dieser Abschnitt enthält Informationen zu den Konfigurationsmethoden "addListener", "addFilter" und "addServlet", die in der Servlet-3.0-Spezifikation bereitgestellt werden. Sie können diese Methoden, die Teil der Schnittstelle "ServletContext" sind, über den "ServletContainerInitializer" oder den "ServletContextListener" aufrufen.
Die Konfigurationsmethoden "addListener", "addFilter" und "addServlet" werden nachfolgend detailliert beschrieben. Die programmgesteuerte Konfiguration von Servlets, Filtern oder Listenern durch den "ServletContextListener" ist unzulässig, wenn dieser nicht in der Datei web.xml oder in der Datei web-fragment.xml file deklariert bzw. mit @WebListener annotiert wurde. Daher wird bei jedem Versuch, mit "ServletContext" eine solche programmgesteuerte Konfiguration durchzuführen, eine Ausnahme des Typs "UnsupportedOperationException" zurückgegeben.
addListener
- Verwenden Sie die folgende Methode, um einen Listener zu diesem Servlet-Kontext hinzuzufügen:
void addListener(java.lang.String className)
- Verwenden Sie die folgende Methode, um einen Listener zu diesem Servlet-Kontext hinzuzufügen:
<T extends java.util.EventListener> void addListener(T t)
- Verwenden Sie die folgende Methode, um einen Listener zu diesem Servlet-Kontext hinzuzufügen:
void addListener(java.lang.Class<? extends java.util.EventListener> listenerClass)
- ServletContextAttributeListener
- ServletRequestListener
- ServletRequestAttributeListener
- HttpSessionListener
- HttpSessionAttributeListener
- javax.servlet.http.HttpSessionIdListener
- javax.servlet.ServletContextListener Anmerkung: Ein "javax.servlet.ServletContextListener" kann nur mit der Methode "onStartUp" eines "javax.servlet.ServletContainerInitializer" hinzugefügt werden.
addFilter
- Verwenden Sie die folgende Methode, um einen Filter zu diesem Servlet-Kontext hinzuzufügen:
addFilter(java.lang.String filterName, java.lang.Class<? extends Filter> filterClass)
- Verwenden Sie die folgende Methode, um einen Filter zu diesem Servlet-Kontext hinzuzufügen:
addFilter(java.lang.String filterName, Filter filter)
- Verwenden Sie die folgende Methode, um einen Filter zu diesem Servlet-Kontext hinzuzufügen:
addFilter(java.lang.String filterName, java.lang.String className)
addServlet
Die Methode addServlet fügt Methoden dynamisch zu einem servletContext hinzu. Diese Methoden fügen das Servlet mit den angegebenen Parametern zum Kontext der Webanwendung hinzu. Das registrierte Servlet kann mit dem zurückgegebenen ServletRegistration-Objekt weiter konfiguriert werden.
- Verwenden Sie die folgende Methode, um ein Servlet zu diesem Servlet-Kontext hinzuzufügen:
addServlet(java.lang.String servletName, java.lang.Class<? extends Servlet> servletClass)
- Verwenden Sie die folgende Methode, um ein Servlet zu diesem Servlet-Kontext hinzuzufügen:
addServlet(java.lang.String servletName, Servlet servlet)
- Verwenden Sie die folgende Methode, um ein Servlet zu diesem Servlet-Kontext hinzuzufügen:
addServlet(java.lang.String servletName, java.lang.String className)
ServletContainerInitializer
Wenn Sie eine JAR-Datei für eine gemeinsam genutzte Bibliothek konfigurieren und in der JAR-Datei ein ServletContainerInitializer ermittelt wird, wird der ServletContainerInitializer für jede Anwendung, der die gemeinsam genutzte Bibliothek zugeordnet ist, aufgerufen.
Veraltete Klassen in Servlet 3.0
- public void addDynamicServlet(String servletName, String servletClass, String mappingURI, Properties initParameters) throws ServletException, java.lang.SecurityException;
- public void removeDynamicServlet(String servletName) throws java.lang.SecurityException