RedirectorServlet.java. Servlet that simply redirects users to the
Web application home page. Registered with the
default servlet URL to prevent clients from
using http://host/webAppPrefix/servlet/ServletName
to bypass filters or security settings that
are associated with custom URLs.

LogFilter.java. Filter that prints a report in the log file
whenever the associated servlets or JSP pages
are accessed.

BannedAccessFilter.java. Filter that refuses access to anyone connecting directly
from or following a link from a banned site.

linker.html. A very simple page that contains little but a link to the daily special
servlet. When that page is hosted on a normal site, the link results in
the expected output. But, when the page that contains the link is hosted
on a banned site, the link results only in a warning
page--access to the real servlet is blocked.

CharArrayWrapper.java. A response wrapper that takes everything the client
would normally output and saves it in one big
character array.

ReplaceFilter.java. Filter that replaces all occurrences of a given
string with a replacement. This is an abstract class:
you must override the getTargetString and
getReplacementString methods in a subclass. The
first of these methods specifies the string in
the response that should be replaced. The second
of these specifies the string that should replace
each occurrence of the target string.

FilterUtils.java. Small utility to assist with response wrappers that
return strings.