Apache Tomcat 7成为最新稳定版本

2011年1月11日发布的Tomcat 7.0.6已经成为稳定版本,这是Tomcat 7分支的第一个稳定版本,用来取代2007年2月发布的Tomcat 6。

Apache决定不在Tomcat中添加对Java EE 6 Web Profile的完整支持,至少在眼下是这样的。因此Tomcat 7中只是简单地增加了Servlet 3.0(Java EE 6中引入的)的支持以及JavaServer Pages 2.2和EL 2.2的支持。新版本要求使用Java SE 6或更高版本。

Sevlet 3.0是一个重大更新,对规范做了很多细化,重点包括:

  1. 引入了对异步HTTP请求和响应的标准化支持。虽然异步支持在Tomcat 6里就有了,但那是通过一个非标准的API实现的,标准化意味着Servlet 3版本可移植到不同容器中。
  2. 动态配置:支持Web Fragment,库程序可以用它来提供配置,不再需要开发者在应用程序的web.xml文件中增加特定于库的配置。
  3. 配置过滤器、监听器和Servlet时使用注解,进一步减少了开发者所要编写的XML数量。

Servlet 3.0还大量使用了泛型,改善了会话追踪,引入了新的文件上传功能。

Tomcat 7中的改进也不是全都针对Servlet 3.0 API的,其中还有不少重要的安全性改进。现在针对基于脚本的访问、基于Web的访问、JMX代理访问和状态页访问有了独立的角色,允许做更具体的访问控制。为了避免跨站请求伪造(CSRF)攻击,所有的非幂等性请求(即多次执行不会产生相同结果的操作)都要求生成一个随机数。Tomcat 7还针对会话固定攻击(session fixation attack)采取了一些防御措施。会话固定攻击就是将客户端的会话ID强制设置为一个明确的已知值。

开发团队还将继续致力于解决一些容器内存泄露的常见问题,改善日志系统,改善容器启动时间。

最终Tomcat 7会提供一个轻量级API,允许开发者通过简单的几行代码嵌入容器。

想要使用完整Java EE 6 Web Profile的开发者可以在自己的项目里包含API。然而,Simple Web Profile Application Server(一个由社区主导的项目)正不断发展来弥补这一缺陷。此外 Apache Geronimo(Tomcat为其提供Servlet容器)将支持Web Profile和完整的Java EE 6 Profile。

查看英文原文: Apache Tomcat 7 Becomes Latest Stable Release

你可能感兴趣的:(Apache Tomcat 7成为最新稳定版本)