Features

Here is a list of features of the GNU-Paperclips Servlet Engine
 

General

Protocol Support

Additions to protocols

GNU-Paperclips offers some non-standard features. Are philosophy is to try and hide these behind other functionality as much as possible, when we cannot we offer the feature as a suggestion to the Servlet community. If the community finds a better way of doing it we adopt the new model and depreceate our own.
 

Attribute Objects

GNU-Paperclips provides a special Java Object to model an Attribute. The ServletContext Attribute system can then be used in quite complex ways to manage configuration data across the context.

Follow this link for more information.
 

Filters

the Filter system allows servlet administrators to specify that certain servlets have their requests filtered by specially written Filter Servlets. Filter Servlets can alter the way in which the destination Servlet sees the HTTP request.
 

Authentication Providers

A filter which performs authentication for many other servlets. You can administer the roles and users that are used by the authentication provider.
 

RequestDispatcher stack

the RequestDispatcher stack ensures that all internal calls to RequestDispatchers have the associated uri-paths pushed onto a stack, this means that all Servlets in the chain have access to all the paths that have been called above them. The Servlet API 2.2 defines an attribute based system for providing this information; we will be suggesting to Sun that they adopt are system as it is easier to develop and a more complete solution.
 

AdministrationSuggestion Servlets

AdministrationSuggestions are Servlets which can suggest to the GNU-Paperclips how they are loaded. They can specify the uri-path they should be mapped to, the initialisation parameters and the filter path. This gives total control of the environment a Servlet sees to the developer. The Servlet Engine administrator can choose to ignore the values however.

The Servlet API 2.2 has proposed a different method for doing this. We are examining the specification closely to see whether our method could bring anything to the specification (though in general the new spec's method looks to be a better option).
 

Buffered OutputStreams

When using HTTP/1.0 with Paperclips the engine can automatically buffer your output and set the Content-Length on your request appropriately. This is a useful feature and doesn't break API compatability at all. The Servlet API 2.2 has a proposed system for adding calls to the API to allow programmatic control of buffering and we will support these when (or possibly before) the API is agreed.

Note that with HTTP/1.1 all output is done through an HTTP Chunked-Encoding stream. It is possible to set the size of the chunk buffer used. We will be seeking clarification from Sun's Servlet team about what this means in the Servlet API 2.2.
 


Created: 1 July 1999 Last Updated:  Contact: webmaster Author: Nic Ferrier