Class BlacklistUrlFilter

  • All Implemented Interfaces:
    javax.servlet.Filter

    public final class BlacklistUrlFilter
    extends Object
    implements javax.servlet.Filter
    BlacklistUrlFilter is a configurable Servlet Filter that can prevent access to specific URLs. The filter can either deny access or ignore access. Denials result in a HTTP 403 response whereas an ignore results in a HTTP 404 response. The filter may be used when specific files or directories should not be accessible. In the case of executable WARs, use of this filter is highly recommended since executable WARs must meet the requirements of both JAR and WAR files, thus placing compiled classes and their package structure inside the document webroot. Sample usage:
     <filter>
       <filter-name>BlacklistUrlFilter</filter-name>
       <filter-class>alpine.filters.BlacklistUrlFilter</filter-class>
       <init-param>
         <param-name>denyUrls</param-name>
         <param-value>/secretfolder</param-value>
       </init-param>
       <init-param>
         <param-name>ignoreUrls</param-name>
         <param-value>/org,/com,/us,/javax</param-value>
       </init-param>
     </filter>
    
     <filter-mapping>
       <filter-name>BlacklistUrlFilter</filter-name>
       <url-pattern>/*</url-pattern>
     </filter-mapping>
    
     
    Since:
    1.0.0
    Author:
    Steve Springett
    • Constructor Detail

      • BlacklistUrlFilter

        public BlacklistUrlFilter()
    • Method Detail

      • init

        public void init​(javax.servlet.FilterConfig filterConfig)
        Initialize "deny" parameter from web.xml.
        Specified by:
        init in interface javax.servlet.Filter
        Parameters:
        filterConfig - A filter configuration object used by a servlet container to pass information to a filter during initialization.
      • doFilter

        public void doFilter​(javax.servlet.ServletRequest request,
                             javax.servlet.ServletResponse response,
                             javax.servlet.FilterChain chain)
                      throws IOException,
                             javax.servlet.ServletException
        Check for denied or ignored URLs being requested.
        Specified by:
        doFilter in interface javax.servlet.Filter
        Parameters:
        request - The request object.
        response - The response object.
        chain - Refers to the FilterChain object to pass control to the next Filter.
        Throws:
        IOException - a IOException
        javax.servlet.ServletException - a ServletException
      • destroy

        public void destroy()
        Specified by:
        destroy in interface javax.servlet.Filter