The Apache Tomcat Servlet/JSP Container

Apache Tomcat 7

Version 7.0.2, Aug 4 2010
Apache Logo

Links

User Guide

Reference

Apache Tomcat Development

Changelog

Tomcat 7.0.2 (markt)
Catalina
fix Fix repgrssion that prevented running with a security manager enabled. (markt)
Web applications
fix Correct Javadoc errors. (markt)
add Provide Javadoc for Servlet 3.0 API, JSP 2.2 API and EL 2.2 API. (markt)
fix Remove second copy of RUNNING.txt from the full-docs distribution. Some unpacking utilities can't handle multiple copies of a file with the same name in a directory. (markt)
Other
add Extend Checkstyle validation checks to check for tabs in nearly all text files. (markt)
update Update Commons Daemon from 1.0.2 to 1.0.3.(markt)
update UPdate Eclipse JDT Core Batch Compiler (ecj.jar) from 3.5.1 to 3.6. (markt)
Tomcat 7.0.1 (markt)Not released
Catalina
fix GSOC 2010. Continue work to align MBean descriptors with reality. Patch provided by Chamith Buddhika. (markt)
fix When running under a security manager, enforce package access and package definition restrictions defined in the catalina.properties file. (markt)
fix When using a Loader configured with searchExternalFirst="true" failure to find the class in an external repository should not prevent searching of the local repositories. (markt)
add Add entryPoint support to the CSRF prevention filter. (markt)
fix 48297: Correctly initialise handler chain for web services resources. (markt)
add 48960: Add a new option to the SSI Servlet and SSI Filter to allow the disabling of the exec command. This is now disabled by default. Based on a patch by Yair Lenga. (markt)
add 48998, 49617: Add the ExpiresFilter, a port of the httpd mod_expires module. Patch provided by Cyrille Le Clerc. (markt)
fix 49030: When initializing/starting/stopping connectors and one of them fails, do not ignore the others. (markt/kkolinko)
fix 49128: Don't swallow exceptions unnecessarily in WebappClassLoader.start(). (markt)
fix 49182: Align comments in setclasspath.[sh|bat] with behaviour. Based on a patch provided by sebb. (markt)
fix 49230: Enhance JRE leak prevention listener with protection for the keep-alive thread started by sun.net.www.http.HttpClient. Based on a patch provided by Rob Kooper. (markt)
fix 49414: When reporting threads that may have triggered a memory leak on web application stop, attempt to differentiate between request processing threads and threads started by the application. (markt)
fix 49428: Add a work-around for the known namespace issues for some Microsoft WebDAV clients. Patch provided by Panagiotis Astithas. (markt)
add Add support for *.jar pattern in VirtualWebappLoader. (kkolinko)
add Use a LockOutRealm in the default configuration to prevent attempts to guess user passwords by brute-force. (markt)
add 49478: Add support for user specified character sets to the AddDefaultCharsetFilter. Based on a patch by Felix Schumacher. (markt)
fix 49503: Make sure connectors bind to their associated ports sufficiently early to allow jsvc and the org.apache.catalina.startup.EXIT_ON_INIT_FAILURE system property to operate correctly. (markt)
fix 49525: Ensure cookies for the ROOT context have a path of / rather than an empty string. (markt)
fix 49528, 49567: Ensure that AsyncContext.isAsyncStarted() returns the correct value after AsyncContext.start() and that if AsyncContext.complete() is called on a separate thread that it is handled correctly. (markt)
fix 49530: Contexts and Servlets not stopped when Tomcat is shut down. (markt)
fix 49536: If no ROOT context is deployed, ensure a 404 rather than a 200 is returned for requests that don't map to any other context. (markt)
add Additional debug logging in StandardContext to provide information on Manager selection. (markt)
fix 49550: Supress deprecation warning where deprecated code is required to be used. No functional change. Patch provided by Sebb. (markt)
fix 49551: Allow default context.xml location to be specified using an absolute path. (markt)
add Improve logging of unhandled exceptions in servlets by including the path of the context where the error occurred. (markt)
add Include session ID in error message logged when trying to set an attribute on an invalid session. (markt)
fix Improve the CSRF protection filter by using SecureRandom rather than Random to generate nonces. Also make the implementation class used user configurable. (markt)
fix Avoid NullPointerException, when copyXML=true and META-INF/context.xml does not exist. (kfujino)
fix 49598: When session is changed and the session cookie is replaced, ensure that the new Set-Cookie header overwrites the old Set-Cookie header. (markt)
fix Create a thread to trigger asynchronous timeouts when using the BIO connector, change the default timeout to 10s (was infinite) and make the default timeout configurable using the asyncTimeout attribute on the connector. (pero/markt)
fix 49600: Make exceptions returned by the ProxyDirContext consistent for resources that weren't found by checking the DirContext or the cache. Test case based on a patch provided by Marc Guillemot. (markt)
fix 49613: Improve performance when using SSL for applications that make multiple class to Request.getAttributeNames(). Patch provided by Sampo Savolainen. (markt)
fix Handle the edge cases where resources packaged in JARs have names that start with a single quote character or a double quote character. (markt)
fix Correct copy and paste typo in web.xml parsing rules that mixed up local-ejb-ref and resource-env-ref. (markt)
update Refactor session managers to remove unused code and to reduce code duplication. Also, all session managers used for session replication now extend org.apache.catalina.ha.session.ClusterManagerBase. (markt)
Jasper
update Remove references to Jikes since it does not support Java 6. (markt)
fix Correct over zealous type checking for EL in attributes that broke the use of JSF converters. (markt)
fix Correct algorithm used to identify correct method to use when a MethodExpressions is used in EL. (markt)
fix 49217: Ensure that identifiers used in EL meet the requirements of the Java Language Specification. (markt)
add Improve logging of JSP exceptions by including JSP snippet (if enabled) rather than just the root cause in the host log. (markt)
fix 49555: Correctly handled Tag Libraries where functions are defined in static inner classes. (markt)
Cluster
fix 49127: Don't swallow exceptions unnecessarily in SimpleTcpReplicationManager.startInternal(). (markt)
fix 49407: Change the BackupManager so it is consistent with DeltaManager and reports both primary and backup sessions when active sessions are requested. (markt)
fix 49445: When session ID is changed after authentication, ensure the DeltaManager replicates the change in ID to the other nodes in the cluster. (kfujino)
Web applications
fix 49112: Update the ROOT web application's index page. Patch provided by pid. (markt)
fix 49213: Add the permissions necessary to enable the Manager application to operate currently when running with a security manager. (markt)
fix 49436: Correct documented default for readonly attribute of the UserDatabase component. (markt)
fix 49475: Use new role name for manager application access on the ROOT web application's index page. (markt)
fix 49476: CSRF protection was preventing access to the session expiration features. Also switch the manager application to the generic CSRF protection filter. (markt)
fix Better handle failure to create directories required for new hosts in the Host Manager application. (markt)
fix Switch the Host Manager application to the generic CSRF protection for the HTML interface and prevent started hosts from being started and stopped hosts from being stopped. (markt)
fix 49518: Fix typo in extras documentation. (markt)
fix 49522: Fix regression due to change of name for MBeans for naming resources that broke the complete server status page in the manager application. Note these MBeans now have a new name. (markt)
fix 49570: When using the example compression filter, set the Vary header on compressed responses. (markt)
add Add redirects for the root of the manager and host-manager web applications that redirect users to the html interface rather than returning a 404. (markt)
add Provide the HTML Manager application with the ability to differentiate between primary, backup and proxy sessions. Note that proxy sessions are only shown if enabled in web.xml. (markt)
Other
fix 49130: Better describe the core package in the Windows installer, making it clear that the service will be installed. Patch provided by sebb. (markt)
add Re-factor unit tests to enable them to be run once with each of the HTTP connector implementations (BIO, NIO and APR/native). (markt)
add 49268: Add the necessary plumbing to include CheckStyle in the build process. Start with no checks. Additional checks will be added as they are agreed. (markt)
update Updated to Ant 1.8.1. The build now requires a minimum of Ant 1.8.x. (markt)
update Update the re-packaged version of commons-fileupload from 1.2.1 to 1.2.2. The layout of re-packaged version was also restored to the original commons-fileupload layout to make merging of future updates easier. (markt)
update Update the re-packaged version of Jakarta BCEL from trunk revision 880760 to trunk revision 978831. (markt)
Tomcat 7.0.0 (markt)beta, 2010-06-29
Catalina
update Update Servlet support to the Servlet 3.0 specification. (all)
update Improve and document VirtualWebappLoader. (rjung)
add 43642: Add prestartminSpareThreads attribute for Executor. (jfclere)
update Switch from AnnotationProcessor to InstanceManager. Patch provided by David Jecks with modifications by Remy. (remm/fhanik)
update r620845 and r669119. Make shutdown address configurable. (jfclere)
fix r651977 Add some missing control checks to ThreadWithAttributes. (markt)
add r677640 Add a startup class that does not require any configuration files. (costin)
fix r700532 Log if temporary file operations within the CGI servlet fail. Make sure header Reader is closed on failure. (markt)
fix r708541 Delete references to DefaultContext which was removed in 6.0.x. (markt)
add r709018 Initial implementation of an asynchronous file handler for JULI. (fhanik)
fix Give session thisAccessedTime and lastAccessedTime clear semantics. (rjung)
add Expose thisAccessedTime via Session interface. (rjung)
add Provide a log format for JULI that provides the same information as the default but on a single line. (markt)
add r723889 Provide the ability to configure the Executor job queue size and a timeout for adding jobs to the queue. (fhanik)
add Add support for aliases to StandardContext. This allows content from other directories and/or WAR files to be mapped to paths within the context. (markt)
update Provide clearer definition of Lifecycle interface, particularly start and stop, and align components that implement Lifecycle with this definition. (markt)
add 48662: Provide a new option to control the copying of context XML descriptors from web applications to the host's xmlBase. Copying of XMl descriptors is now disabled by default. (markt)
fix Move comet classes from the org.apache.catalina package to the org.apache.catalina.comet package to allow comet to work under a security manager. (markt)
Coyote
update Port SSLInsecureRenegotiation from mod_ssl. This requires to use tomcat-native 1.2.21 that have option to detect this support from OpenSSL library. (mturk)
update Allow bigger AJP packets also for request bodies and responses using the packetSize attribute of the Connector. (rjung)
updater703017 Make Java socket options consistent between NIO and JIO connector. Expose all the socket options available on java.net.Socket (fhanik)
fix 46051: The writer returned by getWriter() now conforms to the PrintWriter specification and uses platform dependent line endings rather than always using \r\n. (markt)
update Use tc-native 1.2.x which is based on APR 1.3.3+ (mturk)
update r724239 NIO connector now always uses an Executor. (fhanik)
update r724393 Implement keepAliveCount for NIO connector in a thread safe manner. (fhanik)
update r724849 Implement keep alive timeout for NIO connector. (fhanik)
Jasper
update Update JSP support to the JSP 2.2 specification. (markt)
update Update EL support to the EL 2.2 specification. (markt)
update r787978 Use "1.6" as the default value for compilerSourceVM and compilerTargetVM options of Jasper. (kkolinko)
add 48358: Add support for limiting the number of JSPs that are loaded at any one time. Based on a patch by Isabel Drost. (markt)
add 48689: Access TLD files through a new JarResource interface to make extending Jasper simpler, particularly in OSGi environments. Patch provided by Jarek Gawor. (markt)
High Availability
add Add support for UDP and secure communication to tribes. (fhanik)
add Add versioning to the tribes communication protocol to support future developments. (fhanik)
add Add a demo on how to use the payload. (fhanik)
add Started to add JMX support to the cluster implementation. (markt)
fix r609778 Minor fixes to the throughput interceptor and the NIO receiver. (fhanik)
fix r630234 Additional checks for the NIO receiver. (fhanik)
update r671650 Improve error message when multicast is not enabled. (fhanik)
Web applications
update r631321 Update changelog to support the <rev> element in the documentation. (fhanik)
add A number of additional roles were added to the Manager and Host Manager applications to separate out permissions for the HTML interface, the text interface and the JMX proxy. (markt)
add CSRF protection was added to the Manager and Host Manager applications. (markt)
add List array elements in the JMX proxy output of the Manager application. (rjung)
Extras
add A new JmxRemoteLifecycleListener that can be used to fix the ports used for remote JMX connections, eg when using JConsole. (markt)
Other
fix Numerous code clean-up changes including the use of generics and removing unused imports, fields, parameters and methods. (markt)
fix All deprecated internal code has been removed. Warning: If you have custom components for a previous Tomcat version that extend internal Tomcat classes and override deprecated methods it is highly likely that they will no longer work. (markt)
update Parameterize version number throughout build scripts and source. (rjung)

Copyright © 1999-2010, Apache Software Foundation