1
by tony mancill
Import upstream version 7.0.14 |
1 |
================================================================================
|
2 |
Licensed to the Apache Software Foundation (ASF) under one or more |
|
3 |
contributor license agreements. See the NOTICE file distributed with |
|
4 |
this work for additional information regarding copyright ownership. |
|
5 |
The ASF licenses this file to You under the Apache License, Version 2.0 |
|
6 |
(the "License"); you may not use this file except in compliance with |
|
7 |
the License. You may obtain a copy of the License at |
|
8 |
||
9 |
http://www.apache.org/licenses/LICENSE-2.0 |
|
10 |
||
11 |
Unless required by applicable law or agreed to in writing, software |
|
12 |
distributed under the License is distributed on an "AS IS" BASIS, |
|
13 |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
14 |
See the License for the specific language governing permissions and |
|
15 |
limitations under the License. |
|
16 |
================================================================================
|
|
17 |
||
18 |
$Id: RELEASE-NOTES 1084951 2011-03-24 13:27:39Z markt $ |
|
19 |
||
20 |
||
21 |
Apache Tomcat Version @VERSION@ |
|
22 |
Release Notes |
|
23 |
||
24 |
||
25 |
=========
|
|
26 |
CONTENTS: |
|
27 |
=========
|
|
28 |
||
29 |
* Dependency Changes |
|
30 |
* API Stability |
|
31 |
* JNI Based Applications |
|
32 |
* Bundled APIs |
|
33 |
* Web application reloading and static fields in shared libraries |
|
34 |
* Tomcat on Linux |
|
35 |
* Enabling SSI and CGI Support |
|
36 |
* Security manager URLs |
|
37 |
* Symlinking static resources |
|
38 |
* Viewing the Tomcat Change Log |
|
39 |
* Cryptographic software notice |
|
40 |
* When all else fails |
|
41 |
||
42 |
||
43 |
===================
|
|
44 |
Dependency Changes: |
|
45 |
===================
|
|
46 |
Tomcat @VERSION_MAJOR_MINOR@ is designed to run on Java SE 6 and later. |
|
47 |
||
48 |
In addition, Tomcat @VERSION_MAJOR_MINOR@ uses the Eclipse JDT Java compiler for |
|
49 |
compiling JSP pages. This means you no longer need to have the complete |
|
50 |
Java Development Kit (JDK) to run Tomcat, but a Java Runtime Environment |
|
51 |
(JRE) is sufficient. The Eclipse JDT Java compiler is bundled with the |
|
52 |
binary Tomcat distributions. Tomcat can also be configured to use the |
|
53 |
compiler from the JDK to compile JSPs, or any other Java compiler supported |
|
54 |
by Apache Ant. |
|
55 |
||
56 |
||
57 |
==============
|
|
58 |
API Stability: |
|
59 |
==============
|
|
60 |
The public interfaces for the following classes are fixed and will not be |
|
61 |
changed at all during the remaining lifetime of the 7.x series: |
|
62 |
- javax/**/* |
|
63 |
||
64 |
The public interfaces for the following classes may be added to in order to |
|
65 |
resolve bugs and/or add new features. No existing interface will be removed or |
|
66 |
changed although it may be deprecated. |
|
67 |
- org/apache/catalina/* |
|
68 |
||
69 |
Note: As Tomcat 7 matures, the above list will be added to. The list is not
|
|
70 |
considered complete at this time.
|
|
71 |
||
72 |
The remaining classes are considered part of the Tomcat internals and may change
|
|
73 |
without notice between point releases.
|
|
74 |
||
75 |
||
76 |
=======================
|
|
77 |
JNI Based Applications:
|
|
78 |
=======================
|
|
79 |
Applications that require native libraries must ensure that the libraries have
|
|
80 |
been loaded prior to use. Typically, this is done with a call like:
|
|
81 |
||
82 |
static {
|
|
83 |
System.loadLibrary("path-to-library-file");
|
|
84 |
}
|
|
85 |
||
86 |
in some class. However, the application must also ensure that the library is
|
|
87 |
not loaded more than once. If the above code were placed in a class inside
|
|
88 |
the web application (i.e. under /WEB-INF/classes or /WEB-INF/lib), and the
|
|
89 |
application were reloaded, the loadLibrary() call would be attempted a second
|
|
90 |
time.
|
|
91 |
||
92 |
To avoid this problem, place classes that load native libraries outside of the
|
|
93 |
web application, and ensure that the loadLibrary() call is executed only once
|
|
94 |
during the lifetime of a particular JVM.
|
|
95 |
||
96 |
||
97 |
=============
|
|
98 |
Bundled APIs:
|
|
99 |
=============
|
|
100 |
A standard installation of Tomcat @VERSION_MAJOR_MINOR@ makes all of the following APIs available
|
|
101 |
for use by web applications (by placing them in "lib"):
|
|
102 |
* annotations-api.jar (Annotations package)
|
|
103 |
* catalina.jar (Tomcat Catalina implementation)
|
|
104 |
* catalina-ant.jar (Tomcat Catalina Ant tasks)
|
|
105 |
* catalina-ha.jar (High availability package)
|
|
106 |
* catalina-tribes.jar (Group communication)
|
|
107 |
* el-api.jar (EL 2.2 API)
|
|
108 |
* jasper.jar (Jasper 2 Compiler and Runtime)
|
|
109 |
* jasper-el.jar (Jasper 2 EL implementation)
|
|
110 |
* ecj-@JDT_VERSION@.jar (Eclipse JDT Java compiler)
|
|
111 |
* jsp-api.jar (JSP 2.2 API)
|
|
112 |
* servlet-api.jar (Servlet 3.0 API)
|
|
113 |
* tomcat-api.jar (Interfaces shared by Catalina and Jasper)
|
|
114 |
* tomcat-coyote.jar (Tomcat connectors and utility classes)
|
|
115 |
* tomcat-dbcp.jar (package renamed database connection pool based on Commons DBCP)
|
|
116 |
||
117 |
You can make additional APIs available to all of your web applications by
|
|
118 |
putting unpacked classes into a "classes" directory (not created by default),
|
|
119 |
or by placing them in JAR files in the "lib" directory.
|
|
120 |
||
121 |
To override the XML parser implementation or interfaces, use the endorsed
|
|
122 |
mechanism of the JVM. The default configuration defines JARs located in
|
|
123 |
"endorsed" as endorsed.
|
|
124 |
||
125 |
||
126 |
================================================================
|
|
127 |
Web application reloading and static fields in shared libraries:
|
|
128 |
================================================================
|
|
129 |
Some shared libraries (many are part of the JDK) keep references to objects
|
|
130 |
instantiated by the web application. To avoid class loading related problems
|
|
131 |
(ClassCastExceptions, messages indicating that the classloader
|
|
132 |
is stopped, etc.), the shared libraries state should be reinitialized.
|
|
133 |
||
134 |
Something which might help is to avoid putting classes which would be
|
|
135 |
referenced by a shared static field in the web application classloader,
|
|
136 |
and putting them in the shared classloader instead (JARs should be put in the
|
|
137 |
"lib" folder, and classes should be put in the "classes" folder).
|
|
138 |
||
139 |
||
140 |
================
|
|
141 |
Tomcat on Linux:
|
|
142 |
================
|
|
143 |
GLIBC 2.2 / Linux 2.4 users should define an environment variable:
|
|
144 |
export LD_ASSUME_KERNEL=2.2.5
|
|
145 |
||
146 |
Redhat Linux 9.0 users should use the following setting to avoid
|
|
147 |
stability problems:
|
|
148 |
export LD_ASSUME_KERNEL=2.4.1
|
|
149 |
||
150 |
There are some Linux bugs reported against the NIO sendfile behavior, make sure you
|
|
151 |
have a JDK that is up to date, or disable sendfile behavior in the Connector.<br/>
|
|
152 |
6427312: (fc) FileChannel.transferTo() throws IOException "system call interrupted"<br/>
|
|
153 |
5103988: (fc) FileChannel.transferTo should return -1 for EAGAIN instead throws IOException<br/>
|
|
154 |
6253145: (fc) FileChannel.transferTo on Linux fails when going beyond 2GB boundary<br/>
|
|
155 |
6470086: (fc) FileChannel.transferTo(2147483647, 1, channel) cause "Value too large" exception<br/>
|
|
156 |
||
157 |
||
158 |
=============================
|
|
159 |
Enabling SSI and CGI Support:
|
|
160 |
=============================
|
|
161 |
Because of the security risks associated with CGI and SSI available
|
|
162 |
to web applications, these features are disabled by default.
|
|
163 |
||
164 |
To enable and configure CGI support, please see the cgi-howto.html page.
|
|
165 |
||
166 |
To enable and configue SSI support, please see the ssi-howto.html page.
|
|
167 |
||
168 |
||
169 |
======================
|
|
170 |
Security manager URLs:
|
|
171 |
======================
|
|
172 |
In order to grant security permissions to JARs located inside the
|
|
173 |
web application repository, use URLs of of the following format
|
|
174 |
in your policy file:
|
|
175 |
||
176 |
file:${catalina.home}/webapps/examples/WEB-INF/lib/driver.jar
|
|
177 |
||
178 |
||
179 |
============================
|
|
180 |
Symlinking static resources:
|
|
181 |
============================
|
|
182 |
By default, Unix symlinks will not work when used in a web application to link
|
|
183 |
resources located outside the web application root directory.
|
|
184 |
||
185 |
This behavior is optional, and the "allowLinking" flag may be used to disable
|
|
186 |
the check.
|
|
187 |
||
188 |
||
189 |
==============================
|
|
190 |
Viewing the Tomcat Change Log:
|
|
191 |
==============================
|
|
192 |
See changelog.html in this directory.
|
|
193 |
||
194 |
||
195 |
=============================
|
|
196 |
Cryptographic software notice
|
|
197 |
=============================
|
|
198 |
This distribution includes cryptographic software. The country in
|
|
199 |
which you currently reside may have restrictions on the import,
|
|
200 |
possession, use, and/or re-export to another country, of
|
|
201 |
encryption software. BEFORE using any encryption software, please
|
|
202 |
check your country's laws, regulations and policies concerning the
|
|
203 |
import, possession, or use, and re-export of encryption software, to
|
|
204 |
see if this is permitted. See <http://www.wassenaar.org/> for more
|
|
205 |
information.
|
|
206 |
||
207 |
The U.S. Government Department of Commerce, Bureau of Industry and
|
|
208 |
Security (BIS), has classified this software as Export Commodity
|
|
209 |
Control Number (ECCN) 5D002.C.1, which includes information security
|
|
210 |
software using or performing cryptographic functions with asymmetric
|
|
211 |
algorithms. The form and manner of this Apache Software Foundation
|
|
212 |
distribution makes it eligible for export under the License Exception
|
|
213 |
ENC Technology Software Unrestricted (TSU) exception (see the BIS
|
|
214 |
Export Administration Regulations, Section 740.13) for both object
|
|
215 |
code and source code.
|
|
216 |
||
217 |
The following provides more details on the included cryptographic
|
|
218 |
software:
|
|
219 |
- Tomcat includes code designed to work with JSSE
|
|
220 |
- Tomcat includes code designed to work with OpenSSL
|
|
221 |
||
222 |
||
223 |
====================
|
|
224 |
When all else fails:
|
|
225 |
====================
|
|
226 |
See the FAQ
|
|
227 |
http://tomcat.apache.org/faq/
|