Interface Registration

All Known Subinterfaces:
FilterRegistration, FilterRegistration.Dynamic, Registration.Dynamic, ServletRegistration, ServletRegistration.Dynamic

public interface Registration
Interface through which a Servlet or Filter may be further configured.

A Registration object whose getClassName() method returns null is considered preliminary. Servlets and Filters whose implementation class is container implementation specific may be declared without any servlet-class or filter-class elements, respectively, and will be represented as preliminary Registration objects. Preliminary registrations must be completed by calling one of the addServlet or addFilter methods on ServletContext, and passing in the Servlet or Filter name (obtained via getName()) along with the supporting Servlet or Filter implementation class name, Class object, or instance, respectively. In most cases, preliminary registrations will be completed by an appropriate, container-provided ServletContainerInitializer.

Since:
Servlet 3.0
  • Nested Class Summary

    Nested Classes 
    Modifier and Type Interface Description
    static interface  Registration.Dynamic
    Interface through which a Servlet or Filter registered via one of the addServlet or addFilter methods, respectively, on ServletContext may be further configured.
  • Method Summary

    Modifier and Type Method Description
    String getClassName()
    Gets the fully qualified class name of the Servlet or Filter that is represented by this Registration.
    String getInitParameter​(String name)
    Gets the value of the initialization parameter with the given name that will be used to initialize the Servlet or Filter represented by this Registration object.
    Map<String,​String> getInitParameters()
    Gets an immutable (and possibly empty) Map containing the currently available initialization parameters that will be used to initialize the Servlet or Filter represented by this Registration object.
    String getName()
    Gets the name of the Servlet or Filter that is represented by this Registration.
    boolean setInitParameter​(String name, String value)
    Sets the initialization parameter with the given name and value on the Servlet or Filter that is represented by this Registration.
    Set<String> setInitParameters​(Map<String,​String> initParameters)
    Sets the given initialization parameters on the Servlet or Filter that is represented by this Registration.
  • Method Details

    • getName

      String getName()
      Gets the name of the Servlet or Filter that is represented by this Registration.
      Returns:
      the name of the Servlet or Filter that is represented by this Registration
    • getClassName

      String getClassName()
      Gets the fully qualified class name of the Servlet or Filter that is represented by this Registration.
      Returns:
      the fully qualified class name of the Servlet or Filter that is represented by this Registration, or null if this Registration is preliminary
    • setInitParameter

      boolean setInitParameter​(String name, String value)
      Sets the initialization parameter with the given name and value on the Servlet or Filter that is represented by this Registration.
      Parameters:
      name - the initialization parameter name
      value - the initialization parameter value
      Returns:
      true if the update was successful, i.e., an initialization parameter with the given name did not already exist for the Servlet or Filter represented by this Registration, and false otherwise
      Throws:
      IllegalStateException - if the ServletContext from which this Registration was obtained has already been initialized
      IllegalArgumentException - if the given name or value is null
    • getInitParameter

      String getInitParameter​(String name)
      Gets the value of the initialization parameter with the given name that will be used to initialize the Servlet or Filter represented by this Registration object.
      Parameters:
      name - the name of the initialization parameter whose value is requested
      Returns:
      the value of the initialization parameter with the given name, or null if no initialization parameter with the given name exists
    • setInitParameters

      Set<String> setInitParameters​(Map<String,​String> initParameters)
      Sets the given initialization parameters on the Servlet or Filter that is represented by this Registration.

      The given map of initialization parameters is processed by-value, i.e., for each initialization parameter contained in the map, this method calls setInitParameter(String,String). If that method would return false for any of the initialization parameters in the given map, no updates will be performed, and false will be returned. Likewise, if the map contains an initialization parameter with a null name or value, no updates will be performed, and an IllegalArgumentException will be thrown.

      The returned set is not backed by the Registration object, so changes in the returned set are not reflected in the Registration object, and vice-versa.

      Parameters:
      initParameters - the initialization parameters
      Returns:
      the (possibly empty) Set of initialization parameter names that are in conflict
      Throws:
      IllegalStateException - if the ServletContext from which this Registration was obtained has already been initialized
      IllegalArgumentException - if the given map contains an initialization parameter with a null name or value
    • getInitParameters

      Map<String,​String> getInitParameters()
      Gets an immutable (and possibly empty) Map containing the currently available initialization parameters that will be used to initialize the Servlet or Filter represented by this Registration object.
      Returns:
      Map containing the currently available initialization parameters that will be used to initialize the Servlet or Filter represented by this Registration object