code: @Override
      public void doFilter(final ServletRequest _request,
                           final ServletResponse _response,
                           final FilterChain _chain)
          throws IOException, ServletException
      {
  
          if (_request instanceof HttpServletRequest
                          && _response instanceof HttpServletResponse) {
  
              doFilter((HttpServletRequest) _request, (HttpServletResponse) _response, _chain);
          } else {
              throw new ServletException("request not allowed");
          }
      }
docs: First the filtes tests, if the http(s) protokoll is used. If the request
  is not implementing the {@link HttpServletRequest} and the response is
  not implementing the {@link HttpServletResponse} interface, a
  {@link ServletException} is thrown.<br/>
  
  @param _request  ServletRequest
  @param _response ServletResponse
  @param _chain    FilterChain
  @throws ServletException if the request and response does not use the
  http(s) protokoll
  @see HttpServletRequest
  @see HttpServletResponse
  @see #checkLogin
  @throws IOException on error