Tomcat バージョン7.0.6が2011年1月11日にリリースされ、投票により安定版と決まった。これはTomcat 7ブランチの最初の安定版リリースであり、2007年2月に導入されたバージョン6に取って代わるものとなる。
Apacheは当面Tomcatに完全なJava EE 6 Webプロファイルのサポートを追加しないことを決めている。したがって、バージョン7はJavaServer Pages 2.2とEL 2.2をServlet 3.0 - Java EE 6で導入された - のサポートを追加したのみである。
しかしながら、Servlet 3.0は大きなアップデートであり、かなりの数の仕様改良が追加されている。以下のものが鍵となるものとして含まれる。
- 標準化された非同期のHTTPリクエストおよびレスポンスに対するサポートの導入。Tomcat 6でも非標準のAPIを通して非同期サポートは利用可能であったが、標準化によってServlet 3バージョンがコンテナ間で移植可能であることになる。
- 動的コンフィギュレーション:ライブラリがその設定を提供するために使われるWeb Fragmentがサポートされ、開発者がライブラリ特有の設定をアプリケーションのweb.xmlファイルに追加する必要がなくなる。
- フィルター、リスナー、サーブレットを設定するためのアノテーションが利用でき、さらにXML開発者が記述量を減らすことが出来る。
同時に、Servlet 3.0はジェネリクスを利用することが出来るよう総点検され、セッション追跡も改善されて、新しいファイルアップロード機能をふくんでいる。
Tomcat 7の改善のすべてがServlet 3.0 APIに関わるものではない。Tomcatは多くの重要なセキュリティの改善も行っている。スクリプトベース、Webベース、JMXプロキシ、ステータスページアクセスに対するロールが別々になり、より詳細なアクセス制御ができるようになっている。クロスサイトリクエストフォージェリ(CSRF)を防ぐため、すべての冪等でないリクエスト(複数回実行された場合に同じ結果を生成しない操作のこと)に対してはランダムに生成されたノンスが必要となる。セッション固定攻撃に対する予防策もとられている。セッション固定攻撃はクライアントのセッションIDを明示的な既知の値に強制するように作られているものである。
開発チームはコンテナのメモリリークに関するよく知られた問題にも取り組み続け、ロギングシステムを改善し、コンテナのスタートアップ時間を改善している。
最後に、Tomcat 7は開発者がコンテナをたった数行のコードで組み込むことの出来る軽量APIを提供している。
完全なJava EE 6 Webプロファイルを利用することを望んでいる開発者は自身のプロジェクトに独自にそのAPIを含めることはできる。しかし、コミュニティ主導プロジェクトSimple Web Profile Application Serverがそのギャップを埋めるために誕生している。さらに、Tomcatがサーブレットコンテナを提供しているApache Geronimoは完全なJava EE 6プロファイルとともにWebプロファイルもサポートしようとしている