You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by cr...@locus.apache.org on 2000/04/14 01:09:18 UTC
cvs commit: jakarta-tomcat/proposals/catalina STATUS.html
craigmcc 00/04/13 16:09:18
Added: proposals/catalina STATUS.html
Log:
Initial version of the TODO list for Catalina. Feel free to suggest
additions, deletions, and modifications.
Andy, this doesn't have any of the specifics that you might want for non
HTTP support, other than completion of the basic refactoring.
Revision Changes Path
1.1 jakarta-tomcat/proposals/catalina/STATUS.html
Index: STATUS.html
===================================================================
<html>
<head>
<title>Action Items List for Catalina</title>
</head>
<body bgcolor="white">
<div align="center"><h1>Action Items List for Catalina</h1></div>
<p>This document is a living list of the action items related to the
current development of the Catalina architecture for the
Tomcat servlet container. Catalina is being designed and built to serve
as a replacement for the core servlet execution environment currently present
in Tomcat 3.x, and is targeted to become functional in time for a Tomcat 4.0
release. All of the source code for the Catalina architecture is currently
in a subdirectory named <code>proposals/catalina</code> in the
<code>jakarta-tomcat</code> subproject.
<p>The columns in this report contain the following information:
<ul>
<li><b>Priority</b> - A sense of how important the Tomcat development
community feels it is to address this issue in the short term.</li>
<li><b>Action Item</b> - Concise description of the action item
to be completed. Where relevant, Java package names of the
primary classes involved are listed in [square brackets]</li>
<li><b>Volunteers</b> - Names and EMAIL addresses of those developers who
have volunteered to assist in the design, implementation, testing, and
documentation of this action item's changes to Tomcat.</li>
</ul>
<p>Additions to, subtractions from, and changes to the action items listed
here should be discussed and approved on the TOMCAT-DEV mailing list, as
described on the
<a href="http://jakarta.apache.org/guidelines/decisions.html">Decision
Making</a> page on the Jakarta Project web site. Developers can nominate
themselves to work on particular action items by asking a Committer to add
their name and EMAIL address to those items. The developers working on each
item should discuss and agree upon the approach to be used for implementing
the item's changes to the project source code and documentation, prior to
completing those changes. Such discussions should take place on the
TOMCAT-DEV mailing list so that everyone can stay apprised of what is going
on, or chime in if they want to contribute ideas and suggestions.
<p>For convenience, the action items have been organized into general
categories, which are presented in alphabetical order. The following
categories of actions are currently identified:
<ul>
<li><a href="#Architecture">Architecture</a> of the overall server
<li><a href="#Connectors">Connectors</a> to web servers and HTTP clients
<li><a href="#Core">Core</a> servlet engine functionality
<li><a href="#Server">Server Administration</a> functionality
<li><a href="#Servlet">Servlet</a> provided functionality
<li><a href="#Session">Session Management</a> functionality
<li><a href="#Utility">Utility</a> component functionality
<li><a href="#Valve">Valve</a> provided functionality
</ul>
<br><br>
<div align="center"><hr width="75%"</div>
<br>
<a name="Architecture"></a>
<div align="center"><h1>Architecture</h1></div>
<table border="1" width="100%">
<tr>
<th width="10%">Priority</th>
<th width="60%">Action Item</th>
<th width="30%">Volunteers</th>
</tr>
<tr>
<td align="center">High</td>
<td>Finish factoring the HTTP versus non-HTTP assumptions for the
Request, Response, and Session interfaces. [org.apache.tomcat]</td>
<td><a href="mailto:Craig.McClanahan@eng.sun.com">Craig McClanahan</a></td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Define extensions (if necessary) to the Catalina architecture to
support distributed, load-balanced, servlet containers.</td>
<td><a href="mailto:Craig.McClanahan@eng.sun.com">Craig McClanahan</a></td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Define and provide default implementations for logging of server
related events and messages, as opposed to the application-level
logging provided by <code>Logger</code> implementations.
[org.apache.tomcat.syslog?]</td>
<td>---</td>
</tr>
</table>
<a name="Connectors"></a>
<div align="center"><h1>Connectors</h1></div>
<table border="1" width="100%">
<tr>
<th width="10%">Priority</th>
<th width="60%">Action Item</th>
<th width="30%">Volunteers</th>
</tr>
<tr>
<td align="center">High</td>
<td>Revise the RequestBase and ResponseBase classes (as well as other
associated classes) to reflect the HTTP versus non-HTTP refactoring
of the underlying interfaces. [org.apache.tomcat.connector]</td>
<td><a href="mailto:Craig.McClanahan@eng.sun.com">Craig McClanahan</a></td>
</tr>
<tr>
<td align="center">High</td>
<td>Design and implement reusable components and base classes
that are commonly required in Connector implementations.
[org.apache.tomcat.connector]</td>
<td>---</td>
</tr>
<tr>
<td align="center">High</td>
<td>Design and implement a high-performance Connector implementation
that fully supports HTTP/1.1 for use in stand-alone applications.
[org.apache.tomcat.connector.http</td>
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement an extended version of the HTTP/1.1 connector
that supports communication over secure sockets using SSL/TLS,
the <code>https:</code> URL scheme, SSL-based request attributes,
and SSL-based sessions. [org.apache.tomcat.connector.ssl]</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement a high-performance Connector implementation
that supports two-way integration with Apache in both in-process
(Apache 2.0 only) and out-of-process (Apache 1.3 and Apache 2.0)
environments. [org.apache.tomcat.connector.apache]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement a high-performance Connector implementation
that supports two-way integration with Microsoft Information Server
(IIS) in both in-process and out-of-process environments.
[org.apache.tomcat.connector.iis]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement a high-performance Connector implementation
that supports two-way integration with Netscape Enterprise Server
(NES) in both in-process and out-of-process environments.
[org.apache.tomcat.connector.nes]</td>
<td>---</td>
</tr>
</table>
<a name="Core"></a>
<div align="center"><h1>Core Servlet Engine Functionality</h1></div>
<table border="1" width="100%">
<tr>
<th width="10%">Priority</th>
<th width="60%">Action Item</th>
<th width="30%">Volunteers</th>
</tr>
<tr>
<td align="center">High</td>
<td>In <code>ContainerBase</code>, correctly deal with the Lifecycle
issues when Valves are added or removed from Containers.
[org.apache.tomcat.core]</td>
<td><a href="mailto:Craig.McClanahan@eng.sun.com">Craig McClanahan</a></td>
</tr>
<tr>
<td align="center">High</td>
<td>In <code>StandardContext</code>, implement mapping of request URIs to
the corresponding Wrapper containers. [org.apache.tomcat.core]</td>
<td><a href="mailto:Craig.McClanahan@eng.sun.com">Craig McClanahan</a></td>
</tr>
<tr>
<td align="center">High</td>
<td>Finish initial implementation of <code>StandardWrapper</code> and
<code>StandardWrapperValve</code>, including support for non-HTTP
servlets. [org.apache.tomcat.core]</td>
<td><a href="mailto:Craig.McClanahan@eng.sun.com">Craig McClanahan</a></td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement support for request dispatchers that conforms
to the Servlet API Specification. [org.apache.tomcat.core]
<td>---</td>
</tr>
<tr>
<td align="center">Low</td>
<td>Design and implement a specialized <code>ServletContext</code> class
for use when <code>ServletContext.getContext("/")</code> is called.
[org.apache.tomcat.core]</td>
<td>---</td>
</tr>
<tr>
<td>Low</td>
<td>Implement the optional <i>web application environment</i> support
described in Section 9.9 of the Servlet API Specification Version 2.2,
and Chapter 5 of the Java2 Platform Enterprise Edition Version 1.2
Specification.</td>
<td>---</td>
</tr>
</table>
<a name="Server"></a>
<div align="center"><h1>Server Administration Functionality</h1></div>
<table border="1" width="100%">
<tr>
<th width="10%">Priority</th>
<th width="60%">Action Item</th>
<th width="30%">Volunteers</th>
</tr>
<tr>
<td align="center">High</td>
<td>Finish design and implementation of startup and shutdown support
for Catalina, similar to that provided by Tomcat 3.x.
[org.apache.tomcat.startup]
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement a web application providing server
management support for a running Catalina installation.
[org.apache.tomcat.admin]
<td>---</td>
</tr>
<tr>
<td align="center">Low</td>
<td>Add out-of-the-box functionality to install Tomcat as a "service"
under Microsoft NT. [org.apache.tomcat.startup]</td>
<td>---</td>
</tr>
</table>
<a name="Servlet"></a>
<div align="center"><h1>Servlet Provided Functionality</h1></div>
<table border="1" width="100%">
<tr>
<th width="10%">Priority</th>
<th width="60%">Action Item</th>
<th width="30%">Volunteers</th>
</tr>
<tr>
<td align="center">High</td>
<td>Design and implement a default file-serving servlet for
Catalina. [org.apache.tomcat.servlets]</td>
<td>---</td>
</tr>
<tr>
<td align="center">High</td>
<td>Design and implement a "servlet invoker" servlet for
Catalina. [org.apache.tomcat.servlets]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement a servlet that supports full WebDAV
functionality. [org.apache.tomcat.webdav]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Low</td>
<td>Design and implement a servlet that supports interpretation of
web-server-like "server side include" directives, typically
found in <code>*.shtml</code> files. [org.apache.tomcat.servlets]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Low</td>
<td>Design and implement a servlet that supports interpretation of
<code><servlet></code> directives, typically
found in <code>*.jhtml</code> files. [org.apache.tomcat.servlets]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Low</td>
<td>Design and implement a CGI emulation servlet for
Catalina. [org.apache.tomcat.servlets]</td>
<td>---</td>
</tr>
</table>
<a name="Session"></a>
<div align="center"><h1>Session Management Functionality</h1></div>
<table border="1" width="100%">
<tr>
<th width="10%">Priority</th>
<th width="60%">Action Item</th>
<th width="30%">Volunteers</th>
</tr>
<tr>
<td align="center">High</td>
<td>Revise the ManagerBase, StandardManager, and StandardSession classes
to reflect the HTTP versus non-HTTP refactoring of the underlying
interfaces. [org.apache.tomcat.session]</td>
<td><a href="mailto:Craig.McClanahan@eng.sun.com">Craig McClanahan</a></td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement a <code>Manager</code> implementation that
supports swapping of active, but idle, sessions to persistent
storage via a suitably configured <code>Store</code> implementation.
[org.apache.tomcat.session]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Finish design and implementation of a filesystem-based
<code>Store</code> implementation. [org.apache.tomcat.session]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement a JDBC-based <code>Store</code> implementation.
[org.apache.tomcat.session]</td>
<td>---</td>
</tr>
</table>
<a name="Utility"></a>
<div align="center"><h1>Utility Component Functionality</h1></div>
<table border="1" width="100%">
<tr>
<th width="10%">Priority</th>
<th width="60%">Action Item</th>
<th width="30%">Volunteers</th>
</tr>
<tr>
<td align="center">High</td>
<td>Design and implement a standard <code>Loader</code> implementation,
possibly wrapping AdaptiveClassLoader. [org.apache.tomcat.loader]</td>
<td>---</td>
</tr>
<tr>
<td align="center">High</td>
<td>Design and implement a <code>Realm</code> implementation that uses an
XML-based database of users, compatible with the Tomcat 3.x version
that uses the <code>conf/tomcat-users.xml</code> file.
[org.apache.tomcat.realm]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement a <code>Realm</code> implementation that accesses
authentication and role information from a JDBC-accessed database.
[org.apache.tomcat.realm]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement a <code>Realm</code> implementation that accesses
authentication and role information from a JNDI-accessed directory
server. [org.apache.tomcat.realm]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement a <code>Resources</code> implementation that
interacts with a web server Connector (such as the one for Apache)
to access web server resources through the connection protocol,
rather than as disk files.</td>
<td>---</td>
</tr>
<tr>
<td align="center">Low</td>
<td>In <code>LoggerBase</code>, add support for optional "decoration"
of logged messages with XML elements. [org.apache.tomcat.logger]</td>
<td>---</td>
</tr>
</table>
<a name="Valve"></a>
<div align="center"><h1>Valve Provided Functionality</h1></div>
<table border="1" width="100%">
<tr>
<th width="10%">Priority</th>
<th width="60%">Action Item</th>
<th width="30%">Volunteers</th>
</tr>
<tr>
<td align="center">High</td>
<td>Finish design and implementation of HTTP BASIC authentication.
[org.apache.tomcat.security]</td>
<td>---</td>
</tr>
<tr>
<td align="center">High</td>
<td>Design and implement form-based authentication.
[org.apache.tomcat.security]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Design and implement support for SSL/TLS based authentication.
[org.apache.tomcat.security]</td>
<td>---</td>
</tr>
<tr>
<td align="center">Medium</td>
<td>Extend the authentication implementations to operate
at the <code>Engine</code> or <code>Host</code> level of the
<code>Container</code> hierarchy, not just the <code>Context</code>
level, to provide "single sign on" support.</td>
<td>---</td>
</tr>
<tr>
<td align="center">Low</td>
<td>In <code>AccessLogValve</code>, implement parsing and pattern matching
for more complete emulation of Apache's custom log generation
capabilities.</td>
<td>---</td>
</tr>
<tr>
<td align="center">Low</td>
<td>Design and implement HTTP DIGEST authentication.
[org.apache.tomcat.security]</td>
<td>---</td>
</tr>
</table>
<br>
<div align="center"><hr width="75%"><font size="2">
$Id: STATUS.html,v 1.1 2000/04/13 23:09:18 craigmcc Exp $
</font></div>
</body>
</html>