code: @Override
      public void doFilter(ServletRequest request, ServletResponse response,
              FilterChain chain)
              throws IOException, ServletException {
  
          // Conditionally select and set the character encoding to be used
          if (ignore || (request.getCharacterEncoding() == null)) {
              String tempEncoding = selectEncoding(request);
              if (tempEncoding != null) {
                  request.setCharacterEncoding(tempEncoding);
              }
          }
  
          // Pass control on to the next filter
          chain.doFilter(request, response);
      }
docs: Select and set (if specified) the character encoding to be used to
  interpret request parameters for this request.
  
  @param request The servlet request we are processing
  @param response The servlet response we are creating
  @param chain The filter chain we are processing
  
  @exception IOException if an input/output error occurs
  @exception ServletException if a servlet error occurs