* Download a Java Development Kit (JDK) release (version 1.6.x or later) from:
- http://java.sun.com/j2se/
+ http://www.oracle.com/technetwork/java/javase/downloads/index.html
* Install the JDK according to the instructions included with the release.
(4) Rebuilds
For a quick rebuild of only modified code you can use:
-
+
cd ${tomcat.source}
ant
Running The Apache Tomcat @VERSION_MAJOR_MINOR@ Servlet/JSP Container
===================================================
-Apache Tomcat @VERSION_MAJOR_MINOR@ requires the Java 2 Standard Edition Runtime
+Apache Tomcat @VERSION_MAJOR_MINOR@ requires the Java Standard Edition Runtime
Environment (JRE) version 6.0 or later.
=============================
Running With JRE 6.0 Or Later
=============================
-(1) Download and Install the J2SE Runtime Environment (JRE)
+(1) Download and Install the Java SE Runtime Environment (JRE)
-(1.1) Download the Java 2 Standard Edition Runtime Environment (JRE),
- release version 6.0 or later, from http://java.sun.com/j2se.
+(1.1) Download the Java SE Runtime Environment (JRE),
+ release version 6.0 or later, from
+ http://www.oracle.com/technetwork/java/javase/downloads/index.html
(1.2) Install the JRE according to the instructions included with the
release.
+
(1.3) Set an environment variable named JRE_HOME to the pathname of
the directory into which you installed the JRE, e.g. c:\jre6.0
or /usr/local/java/jre6.0.
NOTE: You may also use the full JDK rather than just the JRE. In this
case set your JAVA_HOME environment variable to the pathname of
- the directory into which you installed the JDK, e.g. c:\j2sdk6.0
- or /usr/local/java/j2sdk6.0.
+ the directory into which you installed the JDK, e.g. c:\jdk6.0
+ or /usr/local/java/jdk6.0.
(2) Download and Install the Tomcat Binary Distribution
<link href="../servletapi"/>
<link href="../jspapi"/>
<link href="../elapi"/>
- <link href="http://java.sun.com/j2se/1.6.0/docs/api/"/>
+ <link href="http://download.oracle.com/javase/6/docs/api/"/>
<link href="http://commons.apache.org/io/api-release/"/>
<link href="http://download-llnw.oracle.com/javaee/6/api/"/>
</javadoc>
}
/* original content/structure of this section taken from
- * http://developer.java.sun.com/developer/
- * bugParade/bugs/4216884.html
+ * http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4216884
* with major modifications by Martin Dengler
*/
Runtime rt = null;
/* we want to wait for the process to exit, Process.waitFor()
* is useless in our situation; see
- * http://developer.java.sun.com/developer/
- * bugParade/bugs/4223650.html
+ * http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4223650
*/
boolean isRunning = true;
* are met. This class builds a master list of extensions available to an
* application and then validates those extensions.
*
- * See http://java.sun.com/j2se/1.4/docs/guide/extensions/spec.html for
- * a detailed explanation of the extension mechanism in Java.
+ * See http://download.oracle.com/javase/1.4.2/docs/guide/extensions/spec.html
+ * for a detailed explanation of the extension mechanism in Java.
*
* @author Greg Murray
* @author Justyna Horwat
/**
* Performance preferences according to
- * http://java.sun.com/j2se/1.5.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)
+ * http://download.oracle.com/javase/1.5.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)
* All three performance attributes must be set or the JVM defaults will be
* used.
*/
/**
* Performance preferences according to
- * http://java.sun.com/j2se/1.5.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)
+ * http://download.oracle.com/javase/1.5.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)
* All three performance attributes must be set or the JVM defaults will be
* used.
*/
/**
* Performance preferences according to
- * http://java.sun.com/j2se/1.5.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)
+ * http://download.oracle.com/javase/1.5.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)
* All three performance attributes must be set or the JVM defaults will be
* used.
*/
[Field 1]
Type=Label
-Text=Please select the path of a J2SE 6.0 or later JRE installed on your system. Note that if you have a 64-bit operating system, you must specify a 64-bit JRE:
+Text=Please select the path of a Java SE 6.0 or later JRE installed on your system. Note that if you have a 64-bit operating system, you must specify a 64-bit JRE:
left=0
right=300
top=5
<p>Compatible JDKs for many platforms (or links to where they can be found)
are available at
-<a href="http://java.sun.com/j2se/">http://java.sun.com/j2se/</a>.</p>
+<a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">http://www.oracle.com/technetwork/java/javase/downloads/index.html/</a>.</p>
</subsection>
information, documentation, and software that is useful in developing
web applications with Tomcat.</p>
<ul>
-<li><a href="http://java.sun.com/products/jsp/download.html">http://java.sun.com/products/jsp/download.html</a> -
+<li><a href="http://java.sun.com/products/jsp/">http://java.sun.com/products/jsp/</a> -
<i>JavaServer Pages (JSP) Specification, Version 2.0</i>. Describes
the programming environment provided by standard implementations
of the JavaServer Pages (JSP) technology. In conjunction with
API Documentation is included in the specification, and with the
Tomcat download.<br/><br/></li>
<li><a href="http://java.sun.com/products/servlet/download.html">http://java.sun.com/products/servlet/download.html</a> -
- <i>Servlet API Specification, Version 2.4</i>. Describes the
+ <i>Servlet API Specification, Version 3.0</i>. Describes the
programming environment that must be provided by all servlet
containers conforming to this specification. In particular, you
will need this document to understand the web application
<section name="Download a Java Development Kit (JDK) release (version 1.6.x or later)">
<p>
-The Sun JDK can be downloaded <a href="http://java.sun.com/j2se/">here</a>.
+The Sun JDK can be downloaded
+<a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">here</a>.
</p>
<p>
Mechanism" to allow replacement of APIs created outside of the JCP (i.e.
DOM and SAX from W3C). It can also be used to update the XML parser
implementation. For more information, see:
-<a href="http://java.sun.com/j2se/1.5/docs/guide/standards/index.html">
-http://java.sun.com/j2se/1.5/docs/guide/standards/index.html</a>.</p>
+<a href="http://download.oracle.com/javase/1.5.0/docs/guide/standards/index.html">
+http://download.oracle.com/javase/1.5.0/docs/guide/standards/index.html</a>.</p>
<p>Tomcat utilizes this mechanism by including the system property setting
<code>-Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS</code> in the
</attribute>
<attribute name="socket.performanceConnectionTime" required="false">
<p>(int)The first value for the performance settings. See
- <a href="http://java.sun.com/j2se/1.6.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
+ <a href="http://download.oracle.com/javase/6/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
All three performance attributes must be set else the JVM defaults will
be used for all three.</p>
</attribute>
<attribute name="socket.performanceLatency" required="false">
<p>(int)The second value for the performance settings. See
- <a href="http://java.sun.com/j2se/1.6.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
+ <a href="http://download.oracle.com/javase/6/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
All three performance attributes must be set else the JVM defaults will
be used for all three.</p>
</attribute>
<attribute name="socket.performanceBandwidth" required="false">
<p>(int)The third value for the performance settings. See
- <a href="http://java.sun.com/j2se/1.6.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
+ <a href="http://download.oracle.com/javase/6/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
All three performance attributes must be set else the JVM defaults will
be used for all three.</p>
</attribute>
</attribute>
<attribute name="soTrafficClass" required="false">
Sets the traffic class level for the socket, the value is between 0 and 255.
- Different values are defined in <a href="http://java.sun.com/j2se/1.6.0/docs/api/java/net/Socket.html#setTrafficClass(int)">
+ Different values are defined in <a href="http://download.oracle.com/javase/6/docs/api/java/net/Socket.html#setTrafficClass(int)">
java.net.Socket#setTrafficClass(int)</a>.
</attribute>
<attribute name="tcpNoDelay" required="false">
<attribute name="soTrafficClass" required="false">
Sets the traffic class level for the socket, the value is between 0 and 255.
Default value is <code>int soTrafficClass = 0x04 | 0x08 | 0x010;</code>
- Different values are defined in <a href="http://java.sun.com/j2se/1.6.0/docs/api/java/net/Socket.html#setTrafficClass(int)">
+ Different values are defined in <a href="http://download.oracle.com/javase/6/docs/api/java/net/Socket.html#setTrafficClass(int)">
java.net.Socket#setTrafficClass(int)</a>.
</attribute>
<attribute name="tcpNoDelay" required="false">
</attribute>
<attribute name="socket.performanceConnectionTime" required="false">
<p>(int)The first value for the performance settings. See
- <a href="http://java.sun.com/j2se/1.6.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
+ <a href="http://download.oracle.com/javase/6/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
All three performance attributes must be set else the JVM defaults will
be used for all three.</p>
</attribute>
<attribute name="socket.performanceLatency" required="false">
<p>(int)The second value for the performance settings. See
- <a href="http://java.sun.com/j2se/1.6.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
+ <a href="http://download.oracle.com/javase/6/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
All three performance attributes must be set else the JVM defaults will
be used for all three.</p>
</attribute>
<attribute name="socket.performanceBandwidth" required="false">
<p>(int)The third value for the performance settings. See
- <a href="http://java.sun.com/j2se/1.6.0/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
+ <a href="http://download.oracle.com/javase/6/docs/api/java/net/Socket.html#setPerformancePreferences(int,%20int,%20int)">Socket Performance Options</a>
All three performance attributes must be set else the JVM defaults will
be used for all three.</p>
</attribute>
<attribute name="appName" required="true">
<p>The name of the application as configured in your login configuration
file
- (<a href="http://java.sun.com/j2se/1.4.1/docs/guide/security/jaas/tutorials/LoginConfigFile.html">JAAS LoginConfig</a>).</p>
+ (<a href="http://download.oracle.com/javase/1.4.2/docs/guide/security/jaas/tutorials/LoginConfigFile.html">JAAS LoginConfig</a>).</p>
</attribute>
<attribute name="userClassNames" required="true">
<p>Tomcat provides a JNDI <strong>InitialContext</strong> implementation
instance for each web application running under it, in a manner that is
compatible with those provided by a
-<a href="http://java.sun.com/j2ee">Java2 Enterprise Edition</a> application
-server. The J2EE standard provides a standard set of elements in the
+<a href="http://java.sun.com/j2ee">Java Enterprise Edition</a> application
+server. The Java EE standard provides a standard set of elements in the
<code>/WEB-INF/web.xml</code> file to reference/define resources.</p>
<p>See the following Specifications for more information about programming APIs
-for JNDI, and for the features supported by Java2 Enterprise Edition (J2EE)
+for JNDI, and for the features supported by Java Enterprise Edition (Java EE)
servers, which Tomcat emulates for the services that it provides:</p>
<ul>
<li><a href="http://java.sun.com/products/jndi">Java Naming and Directory
Interface</a> (included in JDK 1.4 onwards)</li>
-<li><a href="http://java.sun.com/j2ee/download.html">J2EE Platform
+<li><a href="http://java.sun.com/j2ee/download.html">Java EE Platform
Specification</a> (in particular, see Chapter 5 on <em>Naming</em>)</li>
</ul>
<p><em>NOTE</em> - Of the standard resource factories, only the
"JDBC Data Source" and "User Transaction" factories are mandated to
be available on other platforms, and then they are required only if
- the platform implements the Java2 Enterprise Edition (J2EE) specs.
+ the platform implements the Java Enterprise Edition (Java EE) specs.
All other standard resource factories, plus custom resource factories
that you write yourself, are specific to Tomcat and cannot be assumed
to be available on other containers.</p>
<h3>0. Introduction</h3>
<p>Many web applications need to access a database via a JDBC driver,
- to support the functionality required by that application. The J2EE
- Platform Specification requires J2EE Application Servers to make
+ to support the functionality required by that application. The Java EE
+ Platform Specification requires Java EE Application Servers to make
available a <em>DataSource</em> implementation (that is, a connection
pool for JDBC connections) for this purpose. Tomcat offers exactly
the same support, so that database-based applications you develop on
- Tomcat using this service will run unchanged on any J2EE server.</p>
+ Tomcat using this service will run unchanged on any Java EE server.</p>
<p>For information about JDBC, you should consult the following:</p>
<ul>
<code>javax.sql.DataSource</code> API). This package is now known
as the "JDBC Optional Package".</li>
<li><a href="http://java.sun.com/j2ee/download.html">http://java.sun.com/j2ee/download.html</a> -
- The J2EE Platform Specification (covers the JDBC facilities that
- all J2EE platforms must provide to applications).</li>
+ The Java EE Platform Specification (covers the JDBC facilities that
+ all Java EE platforms must provide to applications).</li>
</ul>
<p><strong>NOTE</strong> - The default data source support in Tomcat
<section name="Enabling JMX Remote">
<p>The Sun website includes the list of options and how to configure JMX Remote on Java 5:
- <a href="http://java.sun.com/j2se/1.6.0/docs/guide/management/agent.html">
- http://java.sun.com/j2se/1.6.0/docs/guide/management/agent.html</a>.
+ <a href="http://download.oracle.com/javase/6/docs/technotes/guides/management/agent.html">
+ http://download.oracle.com/javase/6/docs/technotes/guides/management/agent.html</a>.
</p>
<p>The following is a quick configuration guide for Java 6:</p>
<p>Add the following parameters to your Tomcat startup script:
<p><strong>JAASRealm</strong> is an implementation of the Tomcat
6 <code>Realm</code> interface that authenticates users through the Java
Authentication & Authorization Service (JAAS) framework which is now
-provided as part of the standard J2SE API.</p>
+provided as part of the standard Java SE API.</p>
<p>Using JAASRealm gives the developer the ability to combine
practically any conceivable security realm with Tomcat's CMA. </p>
<p>JAASRealm is prototype for Tomcat of the JAAS-based
<ol>
<li>Write your own LoginModule, User and Role classes based
on JAAS (see
-<a href="http://java.sun.com/j2se/1.4.1/docs/guide/security/jaas/tutorials/GeneralAcnOnly.html">the
+<a href="http://download.oracle.com/javase/1.4.2/docs/guide/security/jaas/tutorials/GeneralAcnOnly.html">the
JAAS Authentication Tutorial</a> and
-<a href="http://java.sun.com/j2se/1.4.1/docs/guide/security/jaas/JAASLMDevGuide.html">the JAAS Login Module
+<a href="http://download.oracle.com/javase/1.4.2/docs/guide/security/jaas/JAASLMDevGuide.html">the JAAS Login Module
Developer's Guide</a>) to be managed by the JAAS Login
Context (<code>javax.security.auth.login.LoginContext</code>)
When developing your LoginModule, note that JAASRealm's built-in <code>CallbackHandler</code>
<li>Place the compiled classes on Tomcat's classpath
</li>
<li>Set up a login.config file for Java (see <a
- href="http://java.sun.com/j2se/1.4.1/docs/guide/security/jaas/tutorials/LoginConfigFile.html">JAAS
+ href="http://download.oracle.com/javase/1.4.2/docs/guide/security/jaas/tutorials/LoginConfigFile.html">JAAS
LoginConfig file</a>) and tell Tomcat where to find it by specifying
its location to the JVM, for instance by setting the environment
variable: <code>JAVA_OPTS=$JAVA_OPTS -Djava.security.auth.login.config==$CATALINA_BASE/conf/jaas.config</code></li>
This file completely replaces the <code>java.policy</code> file present
in your JDK system directories. The <code>catalina.policy</code> file
can be edited by hand, or you can use the
- <a href="http://java.sun.com/products/jdk/1.2/docs/tooldocs/solaris/policytool.html">policytool</a>
+ <a href="http://download.oracle.com/javase/6/docs/technotes/guides/security/PolicyGuide.html">policytool</a>
application that comes with Java 1.2 or later.</p>
<p>Entries in the <code>catalina.policy</code> file use the standard
administration tool and its documentation).</li>
<li><strong>Java location</strong>: The installer will use the registry
or the JAVA_HOME environment variable to determine the base path
- of a J2SE 6 JRE.
+ of a Java SE 6 JRE.
</li>
<li><strong>Tray icon</strong>: When Tomcat is run as a service, there
will not be any tray icon present when Tomcat is running. Note that