| Apache Tomcat 6 differs from Tomcat 5.5 in | | | | slightly smaller memory footprint. There are |
| several ways. Besides supporting the Java Server | | | | substantive enhancements to Tomcat Security. |
| Pages 2.1 (JSP 2.1) Specification and Java Servlet | | | | There are small changes to the directory |
| 2.5 Specification in the Tomcat servlet container, it | | | | structures, start-up scripts, and Tomcat logging |
| also has full support for the Unified Expression | | | | mechanisms. For example, Tomcat 6 now |
| Language 2.1 (UEL 2.1) specification. UEL was | | | | supports logging of all response header values at |
| made into its own standalone package in the JSP | | | | ExtendedAccessLogValve. It also supports logging |
| 2.1 specification. In terms of execution, this means | | | | of current thread name at AccessLogValve, |
| that you can use EL outside of the Tomcat | | | | which is useful when comparing access logging |
| container. The other major difference is that | | | | entry later with a stacktraces. Tomcat 6 has also |
| Tomcat 6 is the first Tomcat server to support | | | | substantially improved memory leak protection by |
| the Java Faces 1.2 specification. | | | | safely stopping threads started via java.util.Timer |
| Besides these big changes, there are also some | | | | that an application starts but fails to stop and by |
| further subtle differences between Apache | | | | clearing references retained due to the use of |
| Tomcat 5.5 and Apache Tomcat 6. It tends to | | | | java.util.ResourceBundle. |
| boot up and shut down faster. It also has a | | | | |