You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by "Konstantin Kolinko (Confluence)" <no...@apache.org> on 2019/07/22 14:39:10 UTC

[CONF] Apache Tomcat > Specifications

There's **1 new edit** on this page  
---  
|  
---  
|  | [![page icon](cid:page-
icon)](https://cwiki.apache.org/confluence/display/TOMCAT/Specifications?src=mail&src.mail.product=confluence-
server&src.mail.timestamp=1563806350316&src.mail.notification=com.atlassian.confluence.plugins.confluence-
notifications-batch-plugin%3Abatching-
notification&src.mail.recipient=8aa9809569d423cd016a0413306f00db&src.mail.action=view
"page icon")  
---  
[Specifications](https://cwiki.apache.org/confluence/display/TOMCAT/Specifications?src=mail&src.mail.product=confluence-
server&src.mail.timestamp=1563806350316&src.mail.notification=com.atlassian.confluence.plugins.confluence-
notifications-batch-plugin%3Abatching-
notification&src.mail.recipient=8aa9809569d423cd016a0413306f00db&src.mail.action=view
"Specifications")  
|  |  |  |  | ![](cid:avatar_892fc5b633a433d86a56f192323474ea) |  | Konstantin
Kolinko edited this page  
---  
|  
|  | Here's the version comment  
---  
|  
---  
|  |  | ![](cid:avatar_892fc5b633a433d86a56f192323474ea) |  | Konstantin
Kolinko edited at [02:23
PM](https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=103100166)  
---  
|  |  |  Rename the "Specifications" page. It is not just about JSPs and
Servlets.  
---  
|  
|  | Here's what changed:  
---  
|

|
![](https://cwiki.apache.org/confluence/s/en_GB/8100/4410012ac87e845516b70bc69b6f7a893eabaa5a/_/images/icons/macrobrowser/dropdown/toc.png)
Table of Contents  
---  
  
  

This is a reference page that provides links to specifications, implemented by
Apache Tomcat.

#  Web Application Specifications

##  Overview

This section provides a list of API specifications which are implemented by
Apache Tomcat.

...

Different Tomcat versions implement **different** versions of the
specifications (see [main site](http://tomcat.apache.org/whichversion.html),
[wiki](/confluence/pages/viewpage.action?pageId=103100682)).

##  Java Servlet Specifications

Servlet 4.0 specification is JSR 369.

...

Servlet 2.5 is a maintenance release of Servlet 2.4. Both are JSR 154.

Spec versions:

|

Servlet 4.0  
  
---|---  
  
Main page:

|

[JSR369](http://www.jcp.org/en/jsr/detail?id=369)  
  
Java.net project:

|

[servlet-spec](https://javaee.github.io/servlet-spec/)  
Also see Java EE Platform Specification project, [javaee-
spec](https://javaee.github.io/javaee-spec/)  
  
Stable:

|

Final Release  
  
Date:

|

05 Sept, 2017  
  
Download Page:

|

[Overview](https://jcp.org/aboutJava/communityprocess/final/jsr369/index.html)  
[Direct Download](http://download.oracle.com/otndocs/jcp/servlet-4-final-eval-
spec/index.html)  
  
Online Javadoc:

|

[Java EE 8](https://javaee.github.io/javaee-spec/javadocs/) (A
javaee.github.io link. Not available at docs.oracle.com?)  
  
Minimum Tomcat version:

|

9.0.0  
  
  

Spec versions:

|

Servlet 3.1  
  
---|---  
  
Main page:

|

[JSR340](http://www.jcp.org/en/jsr/detail?id=340)  
  
Java.net project:

|

[servlet-spec ](http://java.net/projects/servlet-spec/)  
  
Stable:

|

Final Release  
  
Date:

|

28 May, 2013  
  
Download Page:

|

[Overview](http://jcp.org/aboutJava/communityprocess/final/jsr340/index.html)  
[Direct Download](http://download.oracle.com/otndocs/jcp/servlet-3_1-fr-eval-
spec/index.html)  
  
Online Javadoc:

|

[Java EE 7](http://docs.oracle.com/javaee/7/api/)  
  
Minimum Tomcat version:

|

8.0.0  
  
  

Spec versions:

|

Servlet 3.0  
  
---|---  
  
Main page:

|

[JSR315](http://www.jcp.org/en/jsr/summary?id=315)  
  
Stable:

|

Final Release

|

Maintenance Release (Version 3.0 Rev a)  
  
Date:

|

10 Dec, 2009

|

6 Feb, 2011  
  
Download Page:

|

[Overview](http://jcp.org/aboutJava/communityprocess/final/jsr315/index.html)  
[Direct Download](http://download.oracle.com/otndocs/jcp/servlet-3.0-fr-eval-
oth-JSpec/)

|

[Overview](http://jcp.org/aboutJava/communityprocess/mrel/jsr315/index.html)  
[Change
Log](http://jcp.org/aboutJava/communityprocess/maintenance/jsr315/315ChangeLog.html)  
[Direct Download -
PDF](http://download.oracle.com/otndocs/jcp/servlet-3.0-mrel-eval-oth-JSpec/)  
  
Online Javadoc:

|

[Java EE 6](http://docs.oracle.com/javaee/6/api/)  
  
Minimum Tomcat version:

|

7.0.0

|

7.0.25  
  
  

Spec versions:

|

Servlet 2.5  
  
---|---  
  
Main page:

|

[JSR154](http://www.jcp.org/en/jsr/summary?id=154)  
  
Stable:

|

Maintenance Release

|

Maintenance Release 2  
  
Date:

|

11 May, 2006

|

11 Sep, 2007  
  
Download Page:

|

[Overview](http://jcp.org/aboutJava/communityprocess/mrel/jsr154/index.html)  
[Direct Download - Javadoc,
classes](http://download.oracle.com/otndocs/jcp/servlet-2.5-mrel-eval-oth-
JSpec/)

|

[Overview](http://jcp.org/aboutJava/communityprocess/mrel/jsr154/index2.html)  
[Direct Download -
PDF](http://download.oracle.com/otndocs/jcp/servlet-2.5-mrel2-eval-oth-JSpec/)  
  
Online Javadoc:

|

[Java EE 5](http://docs.oracle.com/javaee/5/api/)  
  
Minimum Tomcat version:

|

6.0.0

|

6.0.44 ([bug 57703](https://bz.apache.org/bugzilla/show_bug.cgi?id=57703))  
  
  

Spec versions:

|

Servlet 2.4  
  
---|---  
  
Main page:

|

[JSR154](http://www.jcp.org/en/jsr/summary?id=154)  
  
Stable:

|

Final Release  
  
Date:

|

24 Nov, 2003  
  
Download Page:

|

[Overview](http://jcp.org/aboutJava/communityprocess/final/jsr154/index.html)  
[Direct Download](http://download.oracle.com/otndocs/jcp/servlet-2.4-fr-spec-
oth-JSpec/)  
  
Online Javadoc:

|

[Java EE 1.4](http://docs.oracle.com/javaee/1.4/api/)  
  
Minimum Tomcat version:

|

5.0.0  
  
##
[JavaServer](null/pages/createpage.action?spaceKey=TOMCAT&title=JavaServer&linkCreation=true&fromPageId=103100166)
Pages and Expression Language Specifications

JSP 2.3 is the second maintenance release of JSP 2.1 (JSR 245). Expression
Language 3.0 is JSR 341.

...

Expression Language was covered by JSP 2.0 and JSP 2.1 specifications, but
became a separate document starting with JSP 2.2.

Spec versions:

|

JSP 2.3

|

EL 3.0  
  
---|---|---  
  
Main page:

|

[JSR245](http://www.jcp.org/en/jsr/detail?id=245)

|

[JSR341](http://www.jcp.org/en/jsr/detail?id=341)  
  
Java.net project:

|

[jsp-spec-public ](http://java.net/projects/jsp-spec-public/) ?

|

[el-spec](http://java.net/projects/el-spec/)  
  
Stable:

|

Maintenance Release 2  
_The naming is according to JSR 245. The title page of the  
JSP specification document says "Maintenace Release 3"_

|

Final Release  
  
Date:

|

12 Jun, 2013

|

22 May, 2013  
  
Download Page:

|

[Overview](http://jcp.org/aboutJava/communityprocess/mrel/jsr245/index2.html)  
[Direct Download](http://download.oracle.com/otndocs/jcp/jsp-2_3-mrel2-eval-
spec/)

|

[Overview](http://jcp.org/aboutJava/communityprocess/final/jsr341/index.html)  
[Direct Download](http://download.oracle.com/otndocs/jcp/el-3_0-fr-eval-
spec/index.html)  
  
Online Javadoc:

|

[Java EE 7](http://docs.oracle.com/javaee/7/api/), [Java EE
8](https://javaee.github.io/javaee-spec/javadocs/)  
  
Minimum Tomcat version:

|

8.0.0  
  
  

Spec versions:

|

JSP 2.2, EL 2.2  
  
---|---  
  
Main page:

|

[JSR245](http://www.jcp.org/en/jsr/summary?id=245)  
  
Stable:

|

Maintenance Release  
_The naming is according to JSR 245. The title page of the  
JSP specification document says "Maintenace Release 2"_  
  
Date:

|

10 Dec, 2009  
  
Download Page:

|

[Overview](http://jcp.org/aboutJava/communityprocess/mrel/jsr245/index.html)  
[Direct Download - JSP
2.2](http://download.oracle.com/otndocs/jcp/jsp-2.2-mrel-eval-oth-JSpec/)  
[Direct Download - EL
2.2](http://download.oracle.com/otndocs/jcp/expression_language-2.2-mrel-eval-
oth-JSpec/)  
  
Online Javadoc:

|

[Java EE 6](http://docs.oracle.com/javaee/6/api/)  
  
Minimum Tomcat version:

|

7.0.0  
  
  

Spec versions:

|

JSP 2.1  
  
---|---  
  
Main page:

|

[JSR245](http://www.jcp.org/en/jsr/summary?id=245)  
  
Stable:

|

Final Release  
  
Date:

|

11 May, 2006  
  
Download Page:

|

[Overview](http://jcp.org/aboutJava/communityprocess/final/jsr245/index.html)  
[Direct Download](http://download.oracle.com/otndocs/jcp/jsp-2.1-fr-eval-spec-
oth-JSpec/)  
  
Online Javadoc:

|

[Java EE 5](http://docs.oracle.com/javaee/5/api/)  
  
Minimum Tomcat version:

|

6.0.0  
  
  

Spec versions:

|

JSP 2.0  
  
---|---  
  
Main page:

|

[JSR152](http://www.jcp.org/en/jsr/summary?id=152)  
  
Stable:

|

Final Release  
  
Date:

|

24 November, 2003  
  
Download Page:

|

[Overview](http://jcp.org/aboutJava/communityprocess/final/jsr152/index.html)  
[Direct Download](http://download.oracle.com/otndocs/jcp/jsp-2.0-fr-oth-
JSpec/)  
  
Online Javadoc:

|

[Java EE 1.4](http://docs.oracle.com/javaee/1.4/api/)  
  
Minimum Tomcat version:

|

5.0.0  
  
##  Java API for
[WebSocket](null/pages/createpage.action?spaceKey=TOMCAT&title=WebSocket&linkCreation=true&fromPageId=103100166)

Java API for WebSocket is JSR 356. An implementation is to be included in
Tomcat 8. See also [Bug
51181](https://issues.apache.org/bugzilla/show_bug.cgi?id=51181#c64).

Since Tomcat 7.0.47 this implementation is included with Tomcat 7, but it is
only available if Tomcat is run with Java 7 or later.

Spec versions:

|

Java API for WebSocket 1.0

|

Java API for WebSocket 1.1  
  
---|---|---  
  
Main page:

|

[JSR356](http://www.jcp.org/en/jsr/summary?id=356)

|

[JSR356](http://www.jcp.org/en/jsr/summary?id=356)  
  
Java.net project:

|

[websocket-spec ](http://java.net/projects/websocket-spec/)  
  
Stable:

|

Final Release

|

Maintenance Release  
  
Date:

|

22 May, 2013

|

5 August, 2014  
  
Download Page:

|

[Overview](http://jcp.org/aboutJava/communityprocess/final/jsr356/index.html)  
[Direct Download](http://download.oracle.com/otndocs/jcp/websocket-1_0-fr-
eval-spec/index.html)

|

[Overview](https://jcp.org/aboutJava/communityprocess/mrel/jsr356/index.html)  
[Direct Download](http://download.oracle.com/otndocs/jcp/websocket-1_1-mrel-
eval-spec/index.html)  
  
Online Javadoc:

|

[Java EE 7](http://docs.oracle.com/javaee/7/api/)

|

  
  
  
Minimum Tomcat version:

|

7.0.47, 8.0.0

|

7.0.56, 8.0.13  
  
##  Java Authentication Service Provider Interface for Containers
Specification

JASPIC 1.1 is the second maintenance release, Maintenance Release B, of JASPIC
1.0 (JSR 196).

Spec versions:

|

JASPIC 1.0

|

JASPIC 1.1  
  
---|---|---  
  
Main page:

|

[JSR196](http://www.jcp.org/en/jsr/summary?id=196)  
  
Java.net project:

|

[jaspic-spec ](http://java.net/projects/jaspic-spec/)  
  
Stable:

|

Final Release

|

Maintenance Release B  
  
Date:

|

10 Oct, 2007

|

12 Jun, 2013  
  
Download Page:

|

[Overview](http://jcp.org/aboutJava/communityprocess/final/jsr196/index.html)  
[Direct Download](http://download.oracle.com/otndocs/jcp/jaspic-1.0-fr-oth-
JSpec/index.html)

|

[Overview](https://jcp.org/aboutJava/communityprocess/mrel/jsr196/index.html)  
[Direct
Download](http://download.oracle.com/otndocs/jcp/jaspic-1_1-mrel2-eval-
spec/index.html)  
  
Online Javadoc:

|

[Java EE 7](http://docs.oracle.com/javaee/7/api/)  
  
Minimum Tomcat version:

|

8.5.0  
  
##  See Also

  * [Tomcat Versions](/confluence/pages/viewpage.action?pageId=103100682)
  * [Which Tomcat Version Do I Want](http://tomcat.apache.org/whichversion.html)   
  

#  Protocol Specifications

The following are specifications for the web protocols supported by Tomcat.

##  HTTP, HTTP/2

HTTP 0.9

|

[The Original HTTP as defined in
1991](http://www.w3.org/Protocols/HTTP/AsImplemented.html) at W3.org  
  
---|---  
  
HTTP/1.0

|

[RFC 1945](http://tools.ietf.org/html/rfc1945)  
  
HTTP/1.1

|

[RFC 2068](http://tools.ietf.org/html/rfc2068) (January 1997) - obsolete,
replaced by 2616  
[RFC 2616](http://tools.ietf.org/html/rfc2616) (June 1999) - obsolete,
replaced by 7230...7235  
  
[RFC 7230](http://tools.ietf.org/html/rfc7230) (June 2014) - Message Syntax
and Routing  
[RFC 7231](http://tools.ietf.org/html/rfc7231) (June 2014) - Semantics and
Content  
[RFC 7232](http://tools.ietf.org/html/rfc7232) (June 2014) - Conditional
Requests  
[RFC 7233](http://tools.ietf.org/html/rfc7233) (June 2014) - Range Requests  
[RFC 7234](http://tools.ietf.org/html/rfc7234) (June 2014) - Caching  
[RFC 7235](http://tools.ietf.org/html/rfc7235) (June 2014) - Authentication |

HTTP/2

|

[RFC 7540](http://tools.ietf.org/html/rfc7540) (May 2015) - Hypertext Transfer
Protocol Version 2 (HTTP/2)  
[RFC 7541](http://tools.ietf.org/html/rfc7541) (May 2015) - HPACK: Header
Compression for HTTP/2  
  
---|---  
  
[HTTP/2 home page, maintained by the IETF HTTPbis Working
Group](http://http2.github.io/) |

###  Related Specifications

[RFC 2617](http://tools.ietf.org/html/rfc2617)

|

"HTTP Authentication: Basic and Digest Access Authentication"  
It covers BASIC and DIGEST authentication methods  
  
---|---  
  
It was updated by [RFC 7235](http://tools.ietf.org/html/rfc7235). |

[RFC 6265](https://tools.ietf.org/html/rfc6265)

|

"HTTP State Management Mechanism"  
The specification about cookies. Implemented by
[org.apache.tomcat.util.http.Rfc6265CookieProcessor](http://tomcat.apache.org/tomcat-8.0-doc/config/cookie-
processor.html) that is available since Tomcat 8.0.15 and is default with
Tomcat 8.5.0 onwards. See also "Cookies" page in ["Development
Issues"](null/pages/createpage.action?spaceKey=TOMCAT&title=Development&linkCreation=true&fromPageId=103100166).  
  
---|---  
  
Obsolete specifications: [RFC2109](https://tools.ietf.org/html/rfc2109), [RFC
2965](https://tools.ietf.org/html/rfc2965). |

[RFC 6266](https://tools.ietf.org/html/rfc6266)

|

"Use of the Content-Disposition Header Field in the Hypertext Transfer
Protocol (HTTP)"  
Content-Disposition header is used by file uploads. See also [Bug
59115](https://bz.apache.org/bugzilla/show_bug.cgi?id=59115#c5)  
  
---|---  
  
##  AJP

The AJP protocol specification lives on the [Apache Tomcat
Connector](http://tomcat.apache.org/connectors-doc/) web site.

AJP/1.3

|

[AJP Protocol Reference - AJPv13](http://tomcat.apache.org/connectors-
doc/ajp/ajpv13a.html)  
  
---|---  
  
##
[WebSocket](null/pages/createpage.action?spaceKey=TOMCAT&title=WebSocket&linkCreation=true&fromPageId=103100166)

WebSocket protocol is specified by [RFC
6455](http://tools.ietf.org/html/rfc6455).

...

[CategoryFAQ](null/pages/createpage.action?spaceKey=TOMCAT&title=CategoryFAQ&linkCreation=true&fromPageId=103100166)  
  
|  |  | [Go to page
history](https://cwiki.apache.org/confluence/pages/viewpreviousversions.action?pageId=103100166&src=mail&src.mail.product=confluence-
server&src.mail.timestamp=1563806350316&src.mail.notification=com.atlassian.confluence.plugins.confluence-
notifications-batch-plugin%3Abatching-
notification&src.mail.recipient=8aa9809569d423cd016a0413306f00db "Go to page
history")  
---  
---  
| [View
page](https://cwiki.apache.org/confluence/display/TOMCAT/Specifications?src=mail&src.mail.product=confluence-
server&src.mail.timestamp=1563806350316&src.mail.notification=com.atlassian.confluence.plugins.confluence-
notifications-batch-plugin%3Abatching-
notification&src.mail.recipient=8aa9809569d423cd016a0413306f00db&src.mail.action=view)  
---  
  
|  | [Stop watching
space](https://cwiki.apache.org/confluence/users/removespacenotification.action?spaceKey=TOMCAT&src=mail&src.mail.product=confluence-
server&src.mail.timestamp=1563806350316&src.mail.notification=com.atlassian.confluence.plugins.confluence-
notifications-batch-plugin%3Abatching-
notification&src.mail.recipient=8aa9809569d423cd016a0413306f00db&src.mail.action=stop-
watching&jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ4c3JmOjhhYTk4MDk1NjlkNDIzY2QwMTZhMDQxMzMwNmYwMGRiIiwicXNoIjoiYTNiZWJjYjJhNjJkYzhiMTVlOTMyYWI2NDIxNTQ2Nzg1N2IzNTQzNTJiZTA4YjU2ODUxNDE4Nzc0ZDM4NjUwMiIsImlzcyI6ImNvbmZsdWVuY2Vfbm90aWZpY2F0aW9uc0FSRUgtWFVEMS1QT1FHLUNTQU8iLCJleHAiOjE1NjQ0MTExNTAsImlhdCI6MTU2MzgwNjM1MH0.GsZQQmC8_YkwtQJgJFazELYcnpLHq0W9CJ0qYIGj-
Zw) | •  
---|---  
[Manage
notifications](https://cwiki.apache.org/confluence/users/editmyemailsettings.action?src=mail&src.mail.product=confluence-
server&src.mail.timestamp=1563806350316&src.mail.notification=com.atlassian.confluence.plugins.confluence-
notifications-batch-plugin%3Abatching-
notification&src.mail.recipient=8aa9809569d423cd016a0413306f00db&src.mail.action=manage)  
---  
| ![Confluence logo big](cid:footer-desktop-logo)  
---  
This message was sent by Atlassian Confluence 6.15.2  
![](cid:footer-mobile-logo)  
---