Interface ServletRegistration.Dynamic

All Superinterfaces:
Registration, Registration.Dynamic, ServletRegistration
Enclosing interface:
ServletRegistration

public static interface ServletRegistration.Dynamic extends ServletRegistration, Registration.Dynamic
Interface through which a Servlet registered via one of the addServlet methods on ServletContext may be further configured.
  • Method Details

    • setLoadOnStartup

      void setLoadOnStartup(int loadOnStartup)
      Sets the loadOnStartup priority on the Servlet represented by this dynamic ServletRegistration.

      A loadOnStartup value of greater than or equal to zero indicates to the container the initialization priority of the Servlet. In this case, the container must instantiate and initialize the Servlet during the initialization phase of the ServletContext, that is, after it has invoked all of the ServletContextListener objects configured for the ServletContext at their ServletContextListener.contextInitialized(jakarta.servlet.ServletContextEvent) method.

      If loadOnStartup is a negative integer, the container is free to instantiate and initialize the Servlet lazily.

      The default value for loadOnStartup is -1.

      A call to this method overrides any previous setting.

      Parameters:
      loadOnStartup - the initialization priority of the Servlet
      Throws:
      IllegalStateException - if the ServletContext from which this ServletRegistration was obtained has already been initialized
    • setServletSecurity

      Set<String> setServletSecurity(ServletSecurityElement constraint)
      Sets the ServletSecurityElement to be applied to the mappings defined for this ServletRegistration.

      This method applies to all mappings added to this ServletRegistration up until the point that the ServletContext from which it was obtained has been initialized.

      If a URL pattern of this ServletRegistration is an exact target of a security-constraint that was established via the portable deployment descriptor, then this method does not change the security-constraint for that pattern, and the pattern will be included in the return value.

      If a URL pattern of this ServletRegistration is an exact target of a security constraint that was established via the ServletSecurity annotation or a previous call to this method, then this method replaces the security constraint for that pattern.

      If a URL pattern of this ServletRegistration is neither the exact target of a security constraint that was established via the ServletSecurity annotation or a previous call to this method, nor the exact target of a security-constraint in the portable deployment descriptor, then this method establishes the security constraint for that pattern from the argument ServletSecurityElement.

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

      Parameters:
      constraint - the ServletSecurityElement to be applied to the patterns mapped to this ServletRegistration
      Returns:
      the (possibly empty) Set of URL patterns that were already the exact target of a security-constraint that was established via the portable deployment descriptor. This method has no effect on the patterns included in the returned set
      Throws:
      IllegalArgumentException - if constraint is null
      IllegalStateException - if the ServletContext from which this ServletRegistration was obtained has already been initialized
    • setMultipartConfig

      void setMultipartConfig(MultipartConfigElement multipartConfig)
      Sets the MultipartConfigElement to be applied to the mappings defined for this ServletRegistration. If this method is called multiple times, each successive call overrides the effects of the former.
      Parameters:
      multipartConfig - the MultipartConfigElement to be applied to the patterns mapped to the registration
      Throws:
      IllegalArgumentException - if multipartConfig is null
      IllegalStateException - if the ServletContext from which this ServletRegistration was obtained has already been initialized
    • setRunAsRole

      void setRunAsRole(String roleName)
      Sets the name of the runAs role for this ServletRegistration.
      Parameters:
      roleName - the name of the runAs role
      Throws:
      IllegalArgumentException - if roleName is null
      IllegalStateException - if the ServletContext from which this ServletRegistration was obtained has already been initialized