You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by re...@apache.org on 2002/06/21 12:41:19 UTC

cvs commit: jakarta-tomcat-4.0 PROPOSAL-5.0.txt

remm        2002/06/21 03:41:19

  Added:       .        PROPOSAL-5.0.txt
  Log:
  - Add TC 5 proposal draft.
  - Comments welcome / needed.
  
  Revision  Changes    Path
  1.1                  jakarta-tomcat-4.0/PROPOSAL-5.0.txt
  
  Index: PROPOSAL-5.0.txt
  ===================================================================
  
  
                      Proposal for Apache Tomcat 5.0
                      ==============================
  
  
  
  Introduction:
  ------------
  
  This document is a proposal for the next major release of Apache Tomcat, 
  Apache Tomcat 5.0.
  
  Apache Tomcat 5.0 will improve on the Apache Tomcat 3.3 and Apache
  Tomcat 4.1 architectures, by making them simpler, more flexible and more 
  modular, while at the same time adding support for the new Servlet API 2.4 and
  JSP 2.0 specifications, currently under development by the Java Community 
  Process.
  
  The major goals for Apache Tomcat 5.0 are to:
  - have simpler/cleaner code, so more people can get involved
  - merge of the various ideas in 3.x and 4.x
  - get the community togheter
  - provide maximum modularity and compliance to the standards
  - make it easy to continue to maintain the existing codebases
  
  This proposal also tries to take advantage of the lessons learned while 
  optimizing and maintaining Tomcat.
  
  Note: The development of Apache Tomcat 4.1.x will continue in parallel to the 
  implementation of this proposal.
  
  
  
  General architecture:
  --------------------
  
  
  An improved version of Coyote 1.0, called Coyote 2.0, will be used as 
  the Apache Tomcat 5.0 core.
  
  Coyote is currently considered a connector for Tomcat 3.3 and 4.x, and is under
  development in the jakarta-tomcat-connectors repository.
  
  Coyote 1.0 includes:
  - Protocol handlers for AJP 1.3, HTTP/1.1 and JNI
  - Adapter for Tomcat 3.3
  - Adapter for Tomcat 4.x
  
  Extensibility capabilities will be added to Coyote, as well as JMX management
  features, and if possible, addional protocol handlers (like WARP 1.0).
  
  The Servlet API 2.4 specification will be implemented in a new version of 
  Catalina, called Catalina 2.0. A new version of the Coyote adapter will be
  written for it if mandated by API changes. Components which duplicate 
  functionality provided by Coyote will be removed, including the old connectors.
  
  On the JSP side, Jasper 2 will be updated to support JSP 2.0, will be renamed 
  to Jasper 3, and is the proposed Jasper codebase. It provides many 
  improvements over Jasper 1 included in Tomcat 3.x and Tomcat 4.0.x, including 
  good tag library handling, and near zero overhead when compared to 
  an equivalent hand coded servlet. Jasper 2 will also undergo additional 
  optimizations.
  
  Apache Tomcat 5.0 will be made by default of the following components:
  - Coyote 2.0 - core
  - Catalina 2.0 - Servlet API 2.4 implementation
  - Jasper 3 - JSP 2.0 implementation
  
  Many other configurations are also possible, and it is expected that advanced
  users take advantage of it to make Tomcat better suit their needs. It is also
  possible that new special purpose components, like a bare bones Servlet API 
  implementation, be developed to address the embedded market.
  
  Due to the scope of this work, this initial Proposal only plans 
  the implementation and support of the default configuration described above.
  
  
  
  Resources needed:
  ----------------
  
  * New jakarta-servletapi-5 repository
  
  This new repository will hold the default implementation of the Servlet 
  API 2.4 and the JSP 2.0 specifications. Alternately, the new API can be put
  in the 'jakarta-servletapi' repository after a branch is created to hold the
  current version of the code.
  
  * New jakarta-tomcat-5.0 repository
  
  This repository will contain the version of Catalina which will be updated to
  support the Servlet API 2.4. Alternately, this code can be put in the 
  'jakarta-tomcat-4.0' or 'jakarta-tomcat' repository after a branch is created
  to hold the old code present.
  
  * New branch in jakarta-tomcat-jasper
  
  The implementation of JSP 2.0 will occur in the HEAD branch of the 
  jakarta-tomcat-jasper repository. A branch will be created to contain 
  the Jasper 2 code which is used in Tomcat 4.1.x.
  
  
  
  

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>