Return-Path: Delivered-To: apmail-jakarta-commons-dev-archive@apache.org Received: (qmail 35385 invoked from network); 12 Feb 2002 15:37:06 -0000 Received: from unknown (HELO nagoya.betaversion.org) (192.18.49.131) by daedalus.apache.org with SMTP; 12 Feb 2002 15:37:06 -0000 Received: (qmail 3999 invoked by uid 97); 12 Feb 2002 15:37:02 -0000 Delivered-To: qmlist-jakarta-archive-commons-dev@jakarta.apache.org Received: (qmail 3989 invoked by uid 97); 12 Feb 2002 15:37:02 -0000 Mailing-List: contact commons-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Jakarta Commons Developers List" Reply-To: "Jakarta Commons Developers List" Delivered-To: mailing list commons-dev@jakarta.apache.org Received: (qmail 18641 invoked by uid 97); 12 Feb 2002 13:23:07 -0000 Date: 12 Feb 2002 13:22:50 -0000 Message-ID: <20020212132250.18065.qmail@icarus.apache.org> From: glenn@apache.org To: jakarta-commons-sandbox-cvs@apache.org Subject: cvs commit: jakarta-commons-sandbox/filters PROPOSAL.html X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N glenn 02/02/12 05:22:50 Added: filters PROPOSAL.html Log: Initial proposal Revision Changes Path 1.1 jakarta-commons-sandbox/filters/PROPOSAL.html Index: PROPOSAL.html =================================================================== Proposal for Jakarta-Filters

Proposal for Jakarta-Filters

(0) Rationale

The Servlet 2.3 specification added the ability to implement Servlet Filters for a web application. By their very nature, filters are small reusable components which can be plugged into a web application. Creating a top level Jakarta Project for development and distribution of Servlet Filters will encourage reuse and minimize duplication of effort.

The project will follow the pattern established by the Jakarta-Taglibs project to organize the Servlet Filters.

(1) Scope of the Package

(1.5) Interaction With Other Packages

Jakarta-Filters relies on:

  • Java Development Kit (Version 1.2 or later)
  • Servlet 2.3 API

(2) Initial Servlet Filter Contributions

The proposed package name for servlet filters is org.apache.servlet.filters, with subpackages for each filter.

UploadFilter - Handles HTTP POST mime multipart file uploads and wraps the current request with a ServletRequestWrapper which includes methods for accessing date for the files uploaded. (Rich Catlett)

WorkingFilter - displays "Upgrade in Process" message to anyone accessing a url from outside of a configured set of IP addresses. Not sure how widely useful this is, but this allows us to update our code and make configuration changes through admin apps without concern for users. The "allowed IPs" lets us operate on the site while it is unavailable to visitors. (Lance Lavandowska)

CacheFilter - uses Cache from commons-sandbox to cache response byte arrays. Configure which directories to *not* cache. Currently in rough state. (Lance Lavandowska)

PerformanceFilter - outputs generation time and lots of other information over whatever requests it filters. (Serge Knystautas)

JTidyFilter - uses JTidy to clean up the HTML output and dumps the error messages at the bottom of the page. (Serge Knystautas)

RequiresSecureFilter - if request is insecure, invalidates session and redirects to https. (Serge Knystautas)

SynchronizationFilter - ugggly hack... synchronizes everything so only 1 request is handled at a time by anything this filter covers. (Serge Knystautas)

ReferrerFilter - simple filter that emails you when someone has clicked-through to your site from somewhere outside the excludes list... could be extended to allow custom actions. (Serge Knystautas)

GZipFilter - fitler equivalent of mod_gzip (Serge Knystautas)

CompressionFilter - gzip compression filter from Tomcat 4.

ExampleFilter - example Servlet 2.3 filter from Tomcat 4.

SetCharacterEncodingFilter - set character encoding filter from Tomcat 4.

RequestDumperFilter - dumps request information to the context log from Tocmat 4.

(3) Required Jakarta Resources

  • CVS Repository - New CVS repository jakarta-filters.
  • Mailing List - Discussions will take place on a new mailing list named jakarta-filters@jakarta.apache.org.
  • Bugzilla - New product category "Servlet Filters" with components configured for each Filter.
  • Jyve FAQ - New category "jakarta-filters" (when available).

(4) Initial Committers

The initial committers for Jakarta-Filters shall be:

  • Glenn L. Nielsen
  • Rich Catlett
  • Craig R. McClanahan
  • Serge Knystautas
-- To unsubscribe, e-mail: For additional commands, e-mail: