The Jakarta Project
      The Tomcat Servlet/JSP Container

The Tomcat 5 Servlet/JSP Container

Changelog

Tomcat 5.0.9 (remm)
Catalina
fix Fix bug where no sttic resource over 512 bytes would get cached by default (remm)
fix Ensure uniqueness of patterns across all servlets, so that it is possible to reliably override the servlets defined in the default configuration (remm)
fix Fix and improve static resource cache space allocation algorithm (remm)
Coyote
fix Revert a patch on CoyoteConnector causing a performance regression (remm)
fix When mapping to the default servlet, or mapping to a physical welcome file, String representation of the path is available, which saves some object creation (remm)
Jasper
fix Disable tag pooling when a JSP uses "extends", to avoid NPE when the pool was accessed (luehe)
Tomcat 5.0.8 (remm)
General
fix Update commons-daemon packaging for consistency and ease of use on Unix (remm)
update Servlet specification updates, submitted by Yutaka Yoshida (jfarcand)
update JSP specification updates, submitted by Mark Roth (kinman)
fix 22494: Removed logVerbosityLevel doc and init-param from JSP Servlet, as they're no longer used, submitted by Eric Carmichael (yoavs)
Catalina
fix Remove some stack trace dumping in Mapperlistener (remm)
fix Remove extra setLogger call in Embedded.createContext (remm)
update Add support for Tld validation, and fix bug 21917 where entities couldn't be resolved in a TLD (jfarcand)
fix Fixed logic so that iterator actually gets cloned when "clone" is set to true, and replace LinkedList with ArrayList (luehe)
fix Avoid NPE when ensuring that resource path start with '/' (luehe)
fix Avoid reformatting constant Expires header on every request (luehe)
fix Log client abort exceptions as debug information (remm)
fix Found a way to avoid the extra restart caused by the web.xml tracker, when the webapp was deployed by an outside source, such as the manager servlet (remm)
fix Improve CL stopped error message, so that it is more explanatory (remm)
fix When using the deployer, scema validation wasn't supported (remm)
fix Fix NPE when getMessage of an exception returns null in the DefaultServlet (jfarcand)
fix Fix behavior of HttpSession.setMaxInactiveInterval() (luehe)
fix Cleanup of the XML descriptors for the model MBeans, removing old connectors and old attributes (remm)
update Update the store and persistent manager code so that both will use the container provided background processing thread, rather than using one thread per component (as much as two threads per context) (remm)
add Add new managerChecksFrequency attribute to StandardContext, allowing to configure how often the manager session expiration and passivation checks will be called, similar to the intervals used in Tomcat 4.1.x (remm)
fix Disable schema validation for now, due to persistent issues with Xerces (remm)
Coyote
update Added support for specifying alias name for server keypair and cert chain, to be used by the server to authenticate itself to SSL clients (luehe)
update Added support for specifying comma-separated list of SSL protocol variants to be enabled, which may be useful to disable the less secure SSLv2 (luehe)
fix Fixed bug in CoyoteConnector getter methods for SSL related attributes, which would always return null if SSL properties were configured directly on the Connector element (instead of its nested and now deprecated Factory element) (luehe)
update Moving the new protocols logic to the 14 Factory (billbarker)
fix Clone request attribute names iterator (luehe)
fix Fix client abort logging, and throw a client abort when an IOException occurs when writing bytes (remm)
fix Avoid a NPE if requesting the remote address between requests or before processing any request (remm)
Jasper
update Allow a taglib to be defined more than once in taglib directives, even in statically included files, and remove need for keeping a Stack for prefix bookkeeping (kinman)
fix When including a JSP document (written in the XML syntax), in the resulting XML View of the translation unit the root element of the included segment must have the default namespace reset to "" (kinman)
fix Don't merge SMAP entries in the outptStartLines aren't consecutive, which fixes IllegalArgumentException when SMAPs are generated (remm)
fix Replaced JSPC error message with localizable error code (luehe)
update Added -classpath option to JspC (luehe)
fix Beautify the insertion of the XML fragment in JSPC (remm)
fix Restoring JVM 1.3.x compatibility to Jasper, with a new split String method (billbarker)
fix Add attibutes doctype-root-element, doctype-system and doctype-public to <jsp:output> for outputing a DOCTYPE declartion in xml documents, per latest spec change (kinman)
fix Fixed buffer realloc when writing single char (luehe)
fix Spec has been changed to allow for include-prelude and include-coda in jsp-config (kinman)
fix Restored JSP default for 1.2 based tag handlers (luehe)
fix Adjust Java lines mappings for codes that are generated in buffers (kinman)
Webapps
update Add two JMX related tasks, designed to use the jmxproxy servlet, submitted by Vivek Chopra (remm)
docs Document usage of commons-daemon with Tomcat on Unix (remm)
update Add new JSP XML test in the tester, and fix the one that was already there (remm)
fix The tester should handle i18ned manager reload messages (remm)
Tomcat 5.0.7 (remm)
General
code Tomcat 5.0.x release plan was voted (remm)
update Various JSP 2.0 API updates, submitted by Mark Roth (kinman)
update Update to commons-modeler 1.1, submitted by Yoav Shapira (remm)
update Simplify the use of the Ant script shipped in the embedded package (remm)
update Bundle Xerces 2.5.0 again, due to bugs in Crimson (remm)
Catalina
update Allow putting a /META-INF/context.xml inside any WAR file deployed by the HostConfig (remm)
fix Many bugfixes in JNDI realm: 18698, 11678, 19864, 20518, with help from David DeWolf and Jeff Tulley (funkman)
fix Fix for three related request dispatcher bugs, including 22013, 4690 (cross context sessions support), and port the fix for ServletContext.getContext(...) when using the root context (remm)
update Use PropertyUtils to obtain the rootCause. This way we can also drill into nested JspExceptions or another Throwable object which has a 'rootCause' property which returns a Throwable (funkman)
update Extract all non class resources from a JAR on access to a non class resource (remm)
fix 14817: JNDIRealm SHA digest implementation incorrect (funkman)
fix NPE when an invalid web.xml is deployed and the digester throws an exception (jfarcand)
fix 22236: addAttributeValues may return null. and this could trigger a NPE if debugging was turned up >=2 (funkman)
fix 22146: Use Class.forName instead of ClassLoader.loadClass (remm)
fix Split the applicationListeners array in two, for performance reasons (remm)
fix Fix bug where welcome files were not being processed in the embedded distribution (remm)
Coyote
fix 9351: parsing IPv6 hostnames (in IP form, obviously), submitted by Masashi Yamaguchi (remm)
fix Allow extending CoyoteConnector (jfarcand)
update 22192: the context mapping algorithm actually needs to be similar to the algorithm used for widcard wrapper mapping; optimize wildcard mapping: as the amount of nesting the mapping have is known, some mapping operations can be avoided (remm)
update Allow for customization of JSSE trust and key managers (luehe)
fix Added check for (keystoreType == null) before calling getKeyManagers/getTrustManagers (luehe)
fix Use less aggressive socket timout reduction when the server load increases (remm)
fix Fix calculation of a request processing time (it must not include the time waiting for data in keepalive mode, or the time waiting for data for an initial request on a connection) (remm)
fix Fixing CoyoteConnector getters for JMX; CoyoteConnector will now rely on the protocol handler for most of the values it returs (billbarker)
Jasper
fix 22090: Enable expression cache, submitted by Matthias Ernst (remm)
fix 22103: Release servlet writer after compilation, submitted by Gilles Scokart (remm)
fix 21206: Fix including a JSP, where Jasper would do weird things whenever the outer request had a non null pathInfo; it will now use the included servlet path correctly (remm)
fix Have 'isELIgnored' page directive attribute take precendence over JSP config el-ignored (luehe)
update Replaced JspServlet's "tagPoolSize" config param with the correct "tagpoolMaxSize" in web.xml, and removed getTagPoolSize() from Options, because tag pool size is no longer needed at compile time (luehe)
update Simplify the way the URLClassLoader used by JSPC gets initialized (luehe)
fix 22133: : workaround for a JDK 1.3 scoping bug, submitted by Matthias Ernst (remm)
docs Added javadocs for getExtends methods (luehe)
update Refactor some code in JspDocumentParser, since startPrefixMapping got called before startElement, turn on push/pop prefixes for taglibs in XML syntax, so that proper prefix can be located (kinman)
fix Make JspFragment.getJspContext abstract (kinman)
update JSPC will now display root cause for build errors; also fix a needed side effect in classpath generation when tag files must be compiled (remm)
fix In JspDocumentParser, pop is called in the same order as push, so the Stack should be replaced by a LinkedList (remm)
fix Replaced JSPC message with more meaningful warning (luehe)
fix 22266: keep template text together with mappedfile="true", submitted by Eric Carmichael (remm)
fix 22006: Invalid SMAP line entries when running with mappedfile=true, submitted by Eric Carmichael (remm)
fix Apply workaround for failure in optimizeLineSection() when there are entries with an outputStartLine of 0, Submitted by Eric Carmichael (remm)
fix The "out" in the Fragment helper functions is now JspWriter instead of java.io.Writer, so that it won't trigger errors when a fragment contains include actions (kinman)
Webapps
docs Update the documentation to reflect the fact that the Factory element is no longer required to setup a stand-alone SSL Connector (billbarker)
update The status servlet will now also display wrapper mappings (remm)
fix Allow passing a regular path instead of a URL for the WAR to upload to the DeployTask; also pass the right URL String so that the "update" flag is no longer ignored (remm)
fix Fixes to the manager servlet: cleanup URL handling, to be consistent with the HTML manager; don't send extra "OK" messages; fix update flag; make sure configFile is null if there's no context XML file (remm)
fix Fix webapp tagging and redeployment from a tag (remm)
fix Display byte sizes and times using sensible units (KB and MB, s and ms) in the status servlet (remm)
fix Display the remote host when in keepalive status, as well as the elapsed time (it corresponds mostly to the amount of time since the start of the previous request) (remm)
Tomcat 5.0.6 (remm)
General
update Synchornize the server.xml used by the Windows installer with the main default server.xml (remm)
update Update to Xerces 2.5.0 (remm)
update Add additional information in the welcome HTML for the release download (remm)
fix 21999: Typo fix, submitted by Liu Kang (remm)
Catalina
update Remove welcome file processing from the default servlet (funkman)
fix Search for TLDs in all subdirectories of WEB-INF, except classes and lib (luehe)
fix Fix possible file descriptor leaks in the code responsible for unpacking a WAR (remm)
fix 21908Fix Unix startup script bug (bad AS/400 condition), submitted by Jason Corley (funkman)
update Remove useless casts in AccessLogValve (remm)
fix The default socket factory class name is now the Coyote factory (remm)
add Add a new digester rule using the IntrospectionTools so that all attributes are passed to the connector, including those which have no explicit setters (in which case the setProperty method is called) (remm)
update Simplify the connector configuration in server.xml (remm, billbarker)
update Expose the ServletWrapper statistics through JMX (remm)
update The connectors default configuration are now similar to the HTTPd 2.0 default configuration, submitted by Henri Gomez (remm)
update Send JSR 77 spec required notifications for J2EE mbeans (amyroh)
update Put the CSS used by various Tomcat components in a separate class in the util package (remm)
fix Remove path normalization in the default servlet (remm)
fix Copy jk2.properties to conf folder (remm)
fix Remove some attributes from the default JK 2 configuration, which should instead be configured through jk2.properties (remm)
update Remove unneeded fields in the CoyoteConnector (remm)
fix Make the SingleSignOn methods protected so it is possible to extend that class and have a customized version (jfarcand)
add Add code allowing configuring the resource cache size for a context (remm)
update Refactor extension handling; available and required extensions are now consistently NULL if not present (luehe)
fix System resources were identified but then ignored when checking if an app's dependencies could be resolved (luehe)
add Add the sslProtocol property on the connector to define the protocol used in SSL (luehe)
update Synchronize the startup scripts based on the Tomcat 4.1 code (funkman)
fix Close JarInputStream after reading manifest (luehe)
update Use commons-logging and the existing StringManager in the extension validator (luehe)
fix 22032: missing security-policy in default configuration; precompiled JSPs running under the security manager always have to access org.apache.jasper.runtime.* classes (jfarcand)
update Remove old reload code, now replaced with a simpler stop/start sequence (remm)
fix Tomcat will now ignore a non existent classpath JAR (remm)
fix Some steps of start shouldn't be executed if the context startup has previously encountered errors (remm)
fix Temporary fix for running SSL without a SocketFactory (billbarker)
code Remove apparently useless wrapper classes (remm)
Coyote
fix Fix welcome file mapping, so that the order of the welcomes specified in web.xml is respected, whereas previously servlet mapped welcomes would hae a priority over physical welcome files (funkman)
fix When shutting down the endpoint's server socket, close the unlocking socket inside a finally block (remm)
fix Fix confiuration of the maxThreads attribute of the thread pool (remm)
update Add a new protocol attribute on the Coyote connector, which can be used rather than using the protocol handler classname; acceptable values are either "HTTP/1.1" or "AJP/1.3" (remm)
update Improve the thread names and numbering, based on the associated connector name and the number of existing threads, so that reading a thread dump is significantly easier (remm)
fix Fix a bug redirecting to a folder: the context path was lost (remm)
fix Fix incorrect URL normalization of the "///" sequence, due to a bad port of the String based algorithm to arrays (remm)
add The HTTP/1.1 connector will now automatically scale down the timeout and disable connection keepalive should the server starts getting low on processors (remm)
fix Make certain that we tell Apache that we have finished with the request; If the Adapter throws an exception before entering the Pipeline, we end up with both Apache and Tomcat trying to read the Channel and hence not serving requests (billbarker)
Jasper
fix 21823: Compiler uses invoking page's PageInfo for handling tag files, submitted by Eric Carmichael (luehe)
fix 21978: Certain tag file pathnames lead to compile errors, submitted by Eric Carmichael; also add check for Java keywords in package names (kinman)
fix Remove useless check if the security manager is not present (jfclere)
update Refactor getDerivedPackageName and eliminate some duplicate code (kinman)
fix 21168: Incorrect paths in generated SMAP file entries, submitted Eric Carmichael (luehe)
fix 20155: The strutsel-exercise-taglib application can not be compiled with jspc, because the correct class loader was not being set (kinman)
update Make JspProperty constructor public, to allow for user supplied JspConfig (kinman)
update Removed unused methods and instance variables in Collector and PageInfo (luehe)
fix 22084: Fix incorrect indentation of generated code, submitted by Eric Carmichael (remm)
Webapps
add Display contexts and servlets stats in the status servlet, so that the administrator can get a complete view of the server (remm)
update Beautify the status servlet, and integrate it with the HTML manager, through links (remm)
fix In the status servler scoreboard, add missing whitespace between method and URI (remm)
docs Update the connectors documentation (remm)
docs Manager, HTML manager and deployer docs update (remm)
docs Document the background processing feature, and the configuration of the resource cache (remm)
fix Add a legend for the status servlet scoreboard (remm)
fix Fix typo in the Struts definition of the default context forms, submitted by Jeff Tulley (remm)
docs Initialize filter so that the release notes of the docs look right (remm)
Tomcat 5.0.5 (remm)
General
add Update the tester web application for Tomcat 5, and make a tester run part of the release process (remm)
fix In the checkout target, only checkout modeler from commons instead of all of commons (funkman)
fix Add the catalina-optional JAR in the embed package (remm)
fix Fix obscure JAXP related CL problem in embedded mode, by preloading some descriptors (remm)
fix Release notes updates (funkman)
Catalina
update Added Embedded.createConnector() methods that take address of type String (luehe)
fix Don't set the no-caching headers for protected POSTed pages. This makes the "back" button in the browser works as expected. (billbarker)
fix 21341: Fix error page forwarding (remm)
fix In the extended log valve, if bytes are requested, then print bytes, not the date (funkman)
update Add a Container.getPipeline() to allow bypassing the (useless) invoke method (remm)
add Add code to allow printing partial stack traces for exceptions in HTML report pages, as well as add a note about the full stack trace of the root cause being available in the logs (remm)
update Logs will now contain the root cause of ServletExceptions (remm)
fix Fix a problem where the Strings weren't escaped in the same way for chars such as '. This caused problems for localization in French. (remm)
fix Add leading + to timezone offset in the access logs (funkman)
update Merge ErrorDispacherValve functionality back into StadardHostValve, and remove associated hacks from StandardServer and StandardHost (remm)
fix Like some of the other resources, application parameters must not be reset on a context stop, as they come from a Context element. Regular parameters read from web.xml should be fine. (remm)
fix Correctly update the mapper. The previous code was not compatible with the invoker servlet and its dynamically added wrappers. (remm)
fix Use the context logger for all webapp related error messages (remm)
update Remove RequestListenerValve and merge into StandardContextValve (remm)
fix Fix NPE exception when instances attribute is null (jfarcand)
fix 21822: Valves should only be registered and unregistered when: addValve or removeValve is called and the associated pipeline is started or on start and stop of the pipeline (remm)
update Update security constraints processing to be compliant with the new behavior specified in the Servlet 2.4 specification, where security constraints must now be combined. SecurityConstraint Realm.findSecurityConstraint is changed to SecurityConstraint[] findSecurityConstraints, and implemented in RealmBase. (billbarker)
fix Fix problems updating a WAR for a context which had a context file (it would be ignored) (remm)
fix Do not redeploy a context when a context file is added, and the context wasn't deployed with the auto deployer (remm)
fix The SetDocBaseRule will not throw a NPE, and will attempt to guess the context docbase if not set (remm)
Coyote
fix Slight re-factoring of the JSSE SSL implementation to allow it to work with non-Sun vendor's 1.4.x JVMs. (billbarker)
add Added support for X-Powered-By response header, as defined by the Servlet 2.4 and JSP 2.0 specs (luehe)
fix Fix context removal from the mapper when Tomcat is used as embedded (jfarcand)
fix As mandated by the specs, the mapper will always redirect for physical directories, and will always process physical welcome files mapping (billbarker)
Jasper
fix 21753: Fix comment generation, submitted by Eric Carmichael (billbarker)
update Hide all taglib and XML namespace management in PageInfo (luehe)
fix Forgive duplicate attribute values on static include (luehe)
fix Fixed typos and formatting of JspC help message (luehe)
fix Changed "jsp:usebean" to "jsp:useBean", submitted by Petr Jiricka (luehe)
update Preparation work for new 'static include' rules (luehe)
update Ignore default settings for "extends" and "language" when checking for multiple page directive attributes with conflicting values (luehe)
fix Do not unconditionally use "JSP" as the default body-content type, because it is illegal for SimpleTag handlers (luehe)
Webapps
fix Fix many tests (see bug 21731), partially submitted by Peter Rossbach (remm)
docs Added link to FAQ and Wiki on the introduction page of the docs (funkman)
docs Update docs for AccessLogValve (funkman)
docs Update docs index according to the menu changes (remm)
docs Add some Windows setup documentation (remm)
update Allow a WAR uploaded using the HTML manager to contain a META-INF/context.xml context file, for consistency with the Ant deploy task (remm)
fix Remove work directory when undeploying a web application using the manager (remm)
Tomcat 5.0.4 (remm)
General
code 19912, 19939, 19940, 19941: Many small typo fixes in resources, submitted by Chris Pepper (yoavs)
update Upgrade to commons-fileupload 1.0 (remm)
update Upgrade to Struts 1.1 (remm)
code Improve packaging to reduce total size of the Tomcat download (remm)
Catalina
code Cleanup Catalina and subcomponents Javadoc generation (remm)
fix Fix NPE in ApplicationHttpRequest when the object is created by a named dispatcher (jfarcand)
fix Escape '/' in the configFile name of a context, and strip out leading '/' (remm)
fix Initialize the context mapper after starting the context so that the welcome files are correctly set (remm)
fix 19607: Remove Context XML descriptor on undeploy (remm)
update 4829: Improve deployer so that the unpackWARs flag value is respected regardless of how the context is deployed (remm)
fix If a context XML file is added for an existing context, or if the context XML file is updated, the context will be redeployed (remm)
update Add logging on initialization of the URL stream handler (remm)
fix Add some Coyote inner classes to the preload list (jfarcand)
update Remove session recycling, which was previously disabled after security concerns were raised (remm)
update Implement proper handling of the context docBase when it is deployed from a context XML descriptor, using a new custom digester rule (remm)
fix 21419: Fix failure to start context when the Context element is included in server.xml, submitted by Torsten Fohrer (remm)
fix The pathinfo needs to be set in the ErrorDispatcherValve when sreq.getAttribute(Globals.EXCEPTION_ATTR) returns null and also non null (jfarcand)
fix 21045: Update the message keys of the manager servlet (remm)
fix In the manager servlet, use the configFile when undeploying, to properly remove the config file even if it does not match the context path (remm)
Coyote
fix Allow '*' as a valid URL (keith)
add Add support for enabling subset of supported SSL cipher suites (luehe)
add Add support for enabling subset of supported SSL cipher suites in JSSE implementation (luehe)
fix Wrap encodeURL method call inside a doPrivileged block (jfarcand)
update Add support for mapping host aliases (remm)
update 21219: Close the HTTP connection after certain error codes, or an unexpected exception, similar to HTTPd behavior (billbarker)
add Add support for enabling subset of supported SSL cipher suites in PureTLS implementation (billbarker)
Jasper
fix Improve web.xml insertion oode so that the order of element is respected (remm)
update 19622: Add encoding configuration to JspC (yoavs)
fix Remove comments generation when JspC is including meppings into web.xml, so that character coding issues are avoided (remm)
fix Support regenerating the web.xml with JspC without manually removing the generated servlet mappings (remm)
update Add detailed message about a likely Javac configuration problem whenever compilation fails and all messages and traces are empty (remm)
fix Allow the "value" attrbute of <jsp:param> action be non String types (kinman)
fix Improve rare error message when static including fails (remm)
fix 21067: EL expression that returns an array causes compilation error (kinman)
fix 21440: Partial fix for <jsp:include> whose target performs a 'forward' does not behave as expected (luehe)
Webapps
fix Remove parallel initialization of the admin webapp, which is not a best practice pattern (remm)
docs Add deployer documentation (remm)
docs Add some documentation on the JMXProxy servlet (funkman)
fix Fix broken Javadocs links (remm)
update Add a bugzilla query for all open TC 5 bugs, hoping people will help address them (remm)
docs Update Host documentation based on the new and updated flags (remm)
Tomcat 5.0.3 (remm)
General
update Upgrade to commons-el 1.0 (remm)
update Split main Catalina JAR, and move i18n related resource files to separate JARs (remm)
fix 19808: Add the sit MIME mapping (funkman)
fix 20263: Fix problems running Tomcat with procrun as a Windows service, submitted by Mladen Turk (remm)
update Package Unix source from commons-daemon in the Tomcat distribution, so that the Unix wrapper can easily be used if needed (remm)
update Upgrade to commons-fileupload 1.0 RC 1, submitted by Martin Cooper (billbarker)
code Fix the netbuild (remm)
update Specification schema changes, submitted by Mark Roth (kinman)
update Many tag handling specification clarifications, submitted by Mark Roth (kinman)
Catalina
fix Fix JMX registration order again during context startup: the object name is constructed before the pipeline initialization, but the JMX registration only occurs after the context is started (remm)
fix Properly close WARs after expanding them in the deployer (remm)
update Fix handling of invalid WARs during auto deploy, which will be logged as a simple WARN without a stack trace, and reattempt deployment later (remm)
fix Dig as deep as possible to display possible nesting of ServletExceptions (funkman)
fix Fix NPE exception in classloader when an invalid war file is deployed (jfarcand)
fix Container incorrectly processes invalid URL patterns in jsp-property-groups (jfarcand)
add Add optional XSL processing to the output of the default servlet, as well the ability to include a readme file, similar to Apache (funkman)
code Remove bundled support for Tyrex (remm)
fix Comment out invoker servlet declaration (remm)
update Move context descriptors to $CATALINA_BASE/conf/[engine name]/[host name] to make the feature more secure (remm)
update Update the host properties: liveDeploy becomes autoDeploy (dynamically deploy and update web applications), and autoDeploy becomes deployOnStartup (deploy webapps from appBase on startup) (remm)
fix Remove thread local caching in the default servlet, which was causing a memory leak (remm)
add Add a mechanism to allow the classloader to release JAR file handles periodically (remm)
fix 20758: Remove a number of leaked references to the context object, so it can be properly garbage collected when the application is removed (remm)
fix Do JMX registration of the context before starting the piepline (remm)
update Replace Catalina TLD-inside-JAR parsing code with a file based algorithm (remm)
update ServletContext.getResource for a JAR resource located inside /WEB-INF/lib will return a file based URL (remm)
update The special directories /WEB-INF/classes and /WEB-INF/lib are now considered to be non cacheable, in order to conserve cache space (remm)
fix Clear out constructs used for classloading, after a class has been successfully loaded (remm)
update Generalize WAR unpacking, based on the unpackWARs flag (remm)
update Track WARs for changes when WARs are unpacked: if the WAR is updated the web application will be redeployed (remm)
code Remove CertificatesValve, as it is useless with Coyote, and introduces a hard dependency on JSSE (billbarker)
update Add caching mechanism for invocation of methods using privileged actions (jfarcand)
fix 20380: AccessLogValve incorrectly calculates timezone, 16374: Date in file name configurable, 16400: Allow logging to be conditional (funkman)
add W3C Extended Log File Format support (funkman)
update Refactor FORM using a forward, based on the patch by Jeff Tulley (remm)
fix Properly set the wrapped request dispatcher state, submitted by Jan Luehe (remm)
update Have all contexts inherit Embedded's logger (luehe)
update Add logging of unexpected exceptions occuring during reference resolution (remm)
fix unbindClassLoader was thorwing NPE when newly added context was removed (amyroh)
fix Fix Gump failure by copying the Ant JAR manually (jfarcand)
update Update confidential HTTPS redirection without using an actual URL, which has a hard JSSE dependency (remm)
add Include updated clustering code (fhanik, remm)
update Remove useless typecasts in the main processing pipeline, and make critical methods final, to enforce the Catalina design pattern (remm)
update Request dispatcher optimizations, based on the belief that wrapping is only needed (if at all) for the special attributes (remm)
update Major filter mapping optimization, using simple String region matching, as well as synchronization removal (remm)
add Add new callback on the container interface to process any background task the container may have (backgroundProcess), as well as a new backgroundProcessor attribute (default value: 10s for the engine container, and -1 for all others, so that only the engine has an associated thread) (remm)
add Refactor application reloading, deployment handling and session expiration to be able to use a single thread per Catalina engine, opposed to one thread per feature per webapp or virtual host; this should save resources and make Tomcat suitable for large scale web hosting; individual containers can still "own" their own reloading thread if they need to (remm)
fix Fix a bug where the context is not registered again in JMX after a stop/start, which would break mapping (remm)
update Implement context reloading as stop, followed by start, in an attempt to avoid code duplication and clear user confusion on what a reload exactly does (remm)
update Pass the request URI as a parameter to the request dispatcher, as this avoids rebuilding it (remm)
fix Unify the way we shutdown the server, and fix a classloading problem when the digester file are under common/lib instead of server/lib (jfarcand)
fix Do not register a StandardContext instance when the context is stopped (undeployed) (remm)
code Remove the old Catalina mapper (remm)
update Swicth to the "new" mapper for request dispatcher mapping (remm)
fix 20018: ErrorPage directive doesn't work for http error codes (400,500,..) (remm)
update Remove synchronized block on the request dispatcher wrapper request, submitted by Remy Maucherat (jfarcand)
fix Allow the getAttribute() method access to the wrapped request object (like setAttribute/removeAttribute) (jfarcand)
update Add the rest of missing attributes for j2eeType=WebModule and Servlet (amyroh)
code Remove redundant commons-beanutils JAR (remm)
update Isolate the validating digester creation so that the code can be reused (remm)
fix Fix to unregister valves that are other than Lifecycle - RequestDumperValve (amyroh)
fix Service.removeConnector doesn't unregister connector mbeans; call connector.destroy to unregister (amyroh)
fix Return null for objectName when initialization fails (amyroh)
update Make objectName attribute visible for j2eeType=Servlet mbean (amyroh)
fix Register valve in JMX even if it's not an instance of Lifecycle (amyroh)
update Add support for OS/400 in the Catalina shell scripts, submitted by Robert Upshall (jfclere)
fix Improve logic for setWrapper call for privileged webapps (costin)
Coyote
fix Fix access to the remote address of a request object with JMX (remm)
fix Fix CLIENT-CERT authentication when using PureTLS (billbarker)
update Allow setting arbitrary attributes on the HTTP/1.1 protocol handler (billbarker)
update Improve support for JSSE 1.1.x, and refactor introspection code in the factory (billbarker)
fix RFC 2109 cookies with quoted values are not processed properly (luehe)
fix Check for the existence of the class before trying to load the JK adapter to avoid useless error logging (funkman)
fix Fix the request state to allow the use of the request dispatcher from outside the filter pipeline (remm)
fix Commit the response even if the buffer is empty when flushing (remm)
fix ServletResponse.getLocale returns en_US instead of container (luehe)
fix Filter out CRLF from the message text (remm)
update Pass through all connector parameters to the Coyote protocol handler, which will allow custom initialization parameters for SSL, for example (billbarker)
fix Remove duplicate request field in the response object (remm)
fix Correctly handle redirects sent by the mapper (remm)
fix In the mapper, initialize the Context when the object is created (remm)
update Add removeWrapper similar to addWrapper to the maper (remm)
update Refactor very slightly the mapping algorithm and the mapper so that it can do context level mapping (remm)
fix 19991: Make sure that the SSL-Cert Note gets recycled before processing the request (billbarker)
fix Changing to do lazy evaluation of the Servlet-Spec's SSL-attributes (billbarker)
fix 19958: IS.read() was actually accessing the char buffer, instead of using the readByte method which correctly uses the byte buffer (remm)
fix Get rid of the warning in the logs when no Client-Cert is available (jfarcand)
fix Fix the server user-agent String to be compliant with the HTTP standard (remm)
update Add new more explicit keep alive property based on the maxKeepAlive value (remm)
fix 19904: Don't search the query-string or anchor-tag for the protocol (billbarker)
fix Robustness: catch exceptions which can occur in prepareRequest (remm)
fix ServletResponse.getCharacterEncoding() doesn't return the value specified (luehe)
fix Incorrect handling of ServletResponse.setLocale (luehe)
add Add AOL Server support to JK 2, submitted by Alexander Leykekh (mturk)
code Fix javadoc generation for the connectors (costin)
Jasper
fix 20894: body-content value of "JSP" should be error if SimpleTag (kinman)
fix Swicth back to JSPC forking being false by default (remm)
fix Default Jasper to not using caches for opening JAR files, which prevents caching (and subsequent locking on Windows) at the JDK level (remm)
fix Don't generate a smap for <jsp:attribute> itself, though maps are still generated for its body (kinman)
fix In a template text, the char after '$' are not handled correctly (kinman)
update Only do the security init if there's a security manager (remm)
fix JSP caches tests Failed-jsp compilation error (luehe)
fix Close JARs after parsing their TLDs, regardless of whether the JAR contains any packaged tag files (luehe)
fix In JspUtil, path is slash, even on windows (kinman)
fix Expose root cause of ELExceptions when no error page is defined (luehe)
fix Include <jsp:param> when checking if a page is scriptless, submitted by Michael Walker (kinman)
fix Set correct class path for tag files, submitted by Michael Walker (kinman)
fix EL evaluation error no longer discloses root cause (luehe)
fix Exceptions not propagated to JSP error pages (luehe)
fix Make sure that the output directory exist, in case it was removed (kinman)
fix 'xmlns' attributes that do not represent tag libraries are subject to TLD check (luehe)
fix Jasper *always* passes initial response character encoding to ServletResponse (luehe)
fix 19713: Define "request" the out of line method when there is a <jsp:param> in the body of a custom tag (kinman)
Webapps
update Add placeholder code for a complete status display in the Status servlet, including webapps statistics (remm)
fix Fix WAR handling when deploying and undeploying webapps using the HTML manager (remm)
add Add documentation on the default servlet (funkman)
fix Update information of the proxy documentation page (funkman)
update Update the manager servlet to support versioning with the deploy method, in addition to other smaller refactorings (remm)
add Add changelog, status, and developers list (remm)
update Remove checkInterval attribute since it no longer exists (amyroh)
fix Use getSession(true) in the session example (remm)
update Update documentation index, to reflect the docs structure (remm)
fix Disallow more than one SingleSignOn valve per service (amyroh)
fix Unregister context and loader mbeans if it fails due to missing directory (amyroh)
fix Fix to return an error page instead of error stack trace when a user tries to create a context without creating a directory first (amyroh)
docs Update manager documentation according to the new behavior (remm)
fix Disable realm operations for engine until jaas realm is supported in admin (amyroh)
docs Use a book-like structure for the user related documentation (remm)
docs Add new deployer documentation (remm)
docs Fix MySQL JDBC connection example (glenn)
fix Add proper MIME types for the content the JSPX examples generate, submitted by Mark Roth (kinman)
Deployer
code Deprecate install and remove tasks (remm)
update Add new properties to the deploy task to allow for versioning and updating (remm)
add Generate minimal catalina-deployer JAR for use with the deployer (remm)
add New validator task, for use with the deployer (remm)
update Rename deploy.xml to build.xml for ease of use (remm)
Tomcat 4.1.7 Beta (remm)
code Tomcat 5.0.x branch point based on the Tomcat 4.1.7 codebase (remm)

Copyright © 1999-2003, Apache Software Foundation