Class CharacterEncodingFilter

  • All Implemented Interfaces:
    jakarta.servlet.Filter

    public class CharacterEncodingFilter
    extends AbstractHttpServletFilter
    Special servlet filter that applies a certain encoding to a request and a response. This must be a filter. Changing the request encoding does not work in a servlet!
    Author:
    Philip Helger
    • Field Detail

      • INITPARAM_ENCODING

        public static final String INITPARAM_ENCODING
        Name of the init parameter for the encoding
        See Also:
        Constant Field Values
      • INITPARAM_FORCE_REQUEST_ENCODING

        public static final String INITPARAM_FORCE_REQUEST_ENCODING
        Name of the init parameter to force setting the request encoding
        See Also:
        Constant Field Values
      • INITPARAM_FORCE_RESPONSE_ENCODING

        public static final String INITPARAM_FORCE_RESPONSE_ENCODING
        Name of the init parameter to force setting the response encoding
        See Also:
        Constant Field Values
      • INITPARAM_FORCE_ENCODING

        public static final String INITPARAM_FORCE_ENCODING
        Name of the init parameter to force setting the request and response encoding
        See Also:
        Constant Field Values
      • DEFAULT_ENCODING

        public static final String DEFAULT_ENCODING
        The default encoding is UTF-8
      • DEFAULT_FORCE_ENCODING

        public static final boolean DEFAULT_FORCE_ENCODING
        By default the encoding is not enforced.
        See Also:
        Constant Field Values
    • Constructor Detail

      • CharacterEncodingFilter

        public CharacterEncodingFilter()
    • Method Detail

      • getEncoding

        @Nonnull
        @Nonempty
        public final String getEncoding()
        Returns:
        The encoding to be used by this filter. Neither null nor empty.
      • setEncoding

        public final void setEncoding​(@Nonnull @Nonempty
                                      String sEncoding)
      • isForceRequestEncoding

        public final boolean isForceRequestEncoding()
      • setForceRequestEncoding

        public final void setForceRequestEncoding​(boolean bForce)
      • isForceResponseEncoding

        public final boolean isForceResponseEncoding()
      • setForceResponseEncoding

        public final void setForceResponseEncoding​(boolean bForce)
      • setForceEncoding

        public final void setForceEncoding​(boolean bForce)
      • init

        public void init()
                  throws jakarta.servlet.ServletException
        Description copied from class: AbstractServletFilter
        Init this filter
        Overrides:
        init in class AbstractServletFilter
        Throws:
        jakarta.servlet.ServletException - In case of an error
      • doHttpFilter

        public void doHttpFilter​(@Nonnull
                                 jakarta.servlet.http.HttpServletRequest aRequest,
                                 @Nonnull
                                 jakarta.servlet.http.HttpServletResponse aResponse,
                                 @Nonnull
                                 jakarta.servlet.FilterChain aChain)
                          throws IOException,
                                 jakarta.servlet.ServletException
        Description copied from class: AbstractHttpServletFilter
        Implement this main filtering method in subclasses.
        Specified by:
        doHttpFilter in class AbstractHttpServletFilter
        Parameters:
        aRequest - The HTTP request. Never null.
        aResponse - The HTTP response. Never null.
        aChain - The further filter chain.
        Throws:
        IOException - In case of an IO error
        jakarta.servlet.ServletException - For non IO errors