You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2019/09/06 15:21:52 UTC

[tomcat] branch master updated: Fix Javadoc issues preventing release builds with newer Java versions

This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/master by this push:
     new a801409  Fix Javadoc issues preventing release builds with newer Java versions
a801409 is described below

commit a801409b37294c3f3dd5590453fb9580d7e33af2
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Fri Sep 6 16:21:18 2019 +0100

    Fix Javadoc issues preventing release builds with newer Java versions
    
    Enable release builds to be built with Java 10 onwards.
---
 build.xml                                          | 23 ++++---
 java/javax/servlet/http/HttpServletRequest.java    |  5 +-
 java/javax/servlet/jsp/JspWriter.java              |  4 +-
 .../javax/servlet/jsp/tagext/SimpleTagSupport.java |  4 +-
 java/javax/servlet/jsp/tagext/TagExtraInfo.java    |  2 +-
 java/javax/servlet/jsp/tagext/VariableInfo.java    | 56 +++++++--------
 java/org/apache/catalina/Executor.java             |  2 +-
 java/org/apache/catalina/core/ContainerBase.java   | 24 +++----
 .../org/apache/catalina/filters/ExpiresFilter.java | 30 ++++----
 java/org/apache/catalina/tribes/package.html       |  4 +-
 java/org/apache/jasper/compiler/JspUtil.java       |  9 +--
 java/org/apache/jasper/compiler/PageDataImpl.java  |  2 +-
 java/org/apache/jasper/compiler/SmapStratum.java   | 14 ++--
 .../org/apache/jasper/runtime/BodyContentImpl.java |  4 +-
 java/org/apache/jasper/runtime/JspWriterImpl.java  |  4 +-
 java/org/apache/jasper/tagplugins/jstl/Util.java   |  8 +--
 java/org/apache/juli/FileHandler.java              |  2 +-
 java/org/apache/juli/logging/package.html          |  2 +-
 .../dbcp/dbcp2/cpdsadapter/DriverAdapterCPDS.java  |  6 +-
 java/org/apache/tomcat/util/buf/package.html       |  2 +-
 java/org/apache/tomcat/util/digester/package.html  | 79 +++++++++-------------
 java/org/apache/tomcat/util/modeler/package.html   |  8 +--
 java/org/apache/tomcat/util/net/Nio2Channel.java   |  2 +-
 java/org/apache/tomcat/util/net/NioChannel.java    |  6 +-
 .../apache/tomcat/util/net/SecureNio2Channel.java  |  2 +-
 .../apache/tomcat/util/net/SecureNioChannel.java   |  4 +-
 .../tomcat/util/threads/ThreadPoolExecutor.java    |  2 +-
 webapps/docs/changelog.xml                         |  5 ++
 28 files changed, 157 insertions(+), 158 deletions(-)

diff --git a/build.xml b/build.xml
index 6690daa..295c8b5 100644
--- a/build.xml
+++ b/build.xml
@@ -196,9 +196,9 @@
 
   <!-- Java 9 -->
   <available classname="java.lang.reflect.InaccessibleObjectException"
-             property="java9.add.modules"
-             value="--add-modules java.xml.ws"/>
-  <property name="java9.add.modules" value=""/>
+             property="java9.javadoc.options"
+             value="-html5"/>
+  <property name="java9.javadoc.options" value=""/>
 
   <!-- Classpaths -->
   <path id="compile.classpath">
@@ -1853,7 +1853,8 @@ Apache Tomcat ${version} native binaries for Win64 AMD64/EMT64 platform.
       encoding="UTF-8"
       docencoding="UTF-8"
       charset="UTF-8"
-      additionalparam="-breakiterator -notimestamp"
+      additionalparam="-breakiterator -notimestamp ${java9.javadoc.options}"
+      source="${compile.source}"
       maxmemory="512m"
       failonerror="true"
       failonwarning="true">
@@ -1873,7 +1874,8 @@ Apache Tomcat ${version} native binaries for Win64 AMD64/EMT64 platform.
       encoding="UTF-8"
       docencoding="UTF-8"
       charset="UTF-8"
-      additionalparam="-breakiterator -notimestamp"
+      additionalparam="-breakiterator -notimestamp ${java9.javadoc.options}"
+      source="${compile.source}"
       maxmemory="512m"
       failonerror="true"
       failonwarning="true">
@@ -1893,7 +1895,8 @@ Apache Tomcat ${version} native binaries for Win64 AMD64/EMT64 platform.
       encoding="UTF-8"
       docencoding="UTF-8"
       charset="UTF-8"
-      additionalparam="-breakiterator -notimestamp"
+      additionalparam="-breakiterator -notimestamp ${java9.javadoc.options}"
+      source="${compile.source}"
       maxmemory="512m"
       failonerror="true"
       failonwarning="true">
@@ -1913,7 +1916,8 @@ Apache Tomcat ${version} native binaries for Win64 AMD64/EMT64 platform.
       encoding="UTF-8"
       docencoding="UTF-8"
       charset="UTF-8"
-      additionalparam="-breakiterator -notimestamp"
+      additionalparam="-breakiterator -notimestamp ${java9.javadoc.options}"
+      source="${compile.source}"
       maxmemory="512m"
       failonerror="true"
       failonwarning="true">
@@ -1932,7 +1936,8 @@ Apache Tomcat ${version} native binaries for Win64 AMD64/EMT64 platform.
       encoding="UTF-8"
       docencoding="UTF-8"
       charset="UTF-8"
-      additionalparam="-breakiterator -notimestamp ${java9.add.modules}"
+      additionalparam="-breakiterator -notimestamp ${java9.javadoc.options}"
+      source="${compile.source}"
       maxmemory="512m"
       failonerror="true"
       failonwarning="true">
@@ -1944,7 +1949,7 @@ Apache Tomcat ${version} native binaries for Win64 AMD64/EMT64 platform.
       <link href="../jspapi"/>
       <link href="../elapi"/>
       <link href="../websocketapi"/>
-      <link href="http://docs.oracle.com/javase/8/docs/api/"/>
+      <link href="https://docs.oracle.com/javase/8/docs/api/"/>
       <link href="https://commons.apache.org/proper/commons-io/javadocs/api-release/"/>
       <link href="https://javaee.github.io/javaee-spec/javadocs/"/>
       <packageset dir="${tomcat.dist}/src/java/">
diff --git a/java/javax/servlet/http/HttpServletRequest.java b/java/javax/servlet/http/HttpServletRequest.java
index 3c12fa4..6cc782e 100644
--- a/java/javax/servlet/http/HttpServletRequest.java
+++ b/java/javax/servlet/http/HttpServletRequest.java
@@ -334,8 +334,9 @@ public interface HttpServletRequest extends ServletRequest {
      * Returns the part of this request's URL from the protocol name up to the
      * query string in the first line of the HTTP request. The web container
      * does not decode this String. For example:
-     * <table summary="Examples of Returned Values">
-     * <tr align=left>
+     * <table>
+     * <caption>Examples of Returned Values</caption>
+     * <tr>
      * <th>First line of HTTP request</th>
      * <th>Returned Value</th>
      * <tr>
diff --git a/java/javax/servlet/jsp/JspWriter.java b/java/javax/servlet/jsp/JspWriter.java
index 691f354..9d0be8b 100644
--- a/java/javax/servlet/jsp/JspWriter.java
+++ b/java/javax/servlet/jsp/JspWriter.java
@@ -111,8 +111,8 @@ public abstract class JspWriter extends java.io.Writer {
 
     /**
      * Write a line separator. The line separator string is defined by the
-     * system property <tt>line.separator</tt>, and is not necessarily a single
-     * newline ('\n') character.
+     * system property <code>line.separator</code>, and is not necessarily a
+     * single newline ('\n') character.
      *
      * @exception IOException
      *                If an I/O error occurs
diff --git a/java/javax/servlet/jsp/tagext/SimpleTagSupport.java b/java/javax/servlet/jsp/tagext/SimpleTagSupport.java
index 496ba95..9d9c88f 100644
--- a/java/javax/servlet/jsp/tagext/SimpleTagSupport.java
+++ b/java/javax/servlet/jsp/tagext/SimpleTagSupport.java
@@ -149,8 +149,8 @@ public class SimpleTagSupport implements SimpleTag {
      *
      * <p> For every instance of TagAdapter
      * encountered while traversing the ancestors, the tag handler returned by
-     * <tt>TagAdapter.getAdaptee()</tt> - instead of the TagAdapter itself -
-     * is compared to <tt>klass</tt>. If the tag handler matches, it - and
+     * <code>TagAdapter.getAdaptee()</code> - instead of the TagAdapter itself -
+     * is compared to <code>klass</code>. If the tag handler matches, it - and
      * not its TagAdapter - is returned.
      *
      * <p>
diff --git a/java/javax/servlet/jsp/tagext/TagExtraInfo.java b/java/javax/servlet/jsp/tagext/TagExtraInfo.java
index 027e7c2..1fff9f2 100644
--- a/java/javax/servlet/jsp/tagext/TagExtraInfo.java
+++ b/java/javax/servlet/jsp/tagext/TagExtraInfo.java
@@ -46,7 +46,7 @@ package javax.servlet.jsp.tagext;
  * getVariableInfo().
  *
  * <p>
- * <tt>NOTE:</tt> It is a (translation time) error for a tag definition
+ * <b>NOTE:</b> It is a (translation time) error for a tag definition
  * in a TLD with one or more variable subelements to have an associated
  * TagExtraInfo implementation that returns a VariableInfo array with
  * one or more elements from a call to getVariableInfo().
diff --git a/java/javax/servlet/jsp/tagext/VariableInfo.java b/java/javax/servlet/jsp/tagext/VariableInfo.java
index b7972f5..2d0cdcd 100644
--- a/java/javax/servlet/jsp/tagext/VariableInfo.java
+++ b/java/javax/servlet/jsp/tagext/VariableInfo.java
@@ -81,78 +81,78 @@ package javax.servlet.jsp.tagext;
  * thus where synchronization is needed as illustrated by the table below.
  * <b>Note:</b> the synchronization of the variable(s) will occur <em>after</em>
  * the respective method has been called. <blockquote>
- * <table cellpadding="2" cellspacing="2" border="0" width="55%"
- *        style="background-color:#999999" summary="Variable Synchronization Points">
+ * <table style="background-color:#999999">
+ * <caption>Variable Synchronization Points</caption>
  * <tbody>
- * <tr align="center">
+ * <tr>
  * <td valign="top" colspan="6" style="background-color:#999999">
  *   <u><b>Variable Synchronization Points</b></u><br>
  * </td>
  * </tr>
  * <tr>
  * <th valign="top" style="background-color:#c0c0c0">&nbsp;</th>
- * <th valign="top" style="background-color:#c0c0c0" align="center">doStartTag()</th>
- * <th valign="top" style="background-color:#c0c0c0" align="center">doInitBody()</th>
- * <th valign="top" style="background-color:#c0c0c0" align="center">doAfterBody()</th>
- * <th valign="top" style="background-color:#c0c0c0" align="center">doEndTag()</th>
- * <th valign="top" style="background-color:#c0c0c0" align="center">doTag()</th>
+ * <th valign="top" style="background-color:#c0c0c0">doStartTag()</th>
+ * <th valign="top" style="background-color:#c0c0c0">doInitBody()</th>
+ * <th valign="top" style="background-color:#c0c0c0">doAfterBody()</th>
+ * <th valign="top" style="background-color:#c0c0c0">doEndTag()</th>
+ * <th valign="top" style="background-color:#c0c0c0">doTag()</th>
  * </tr>
  * <tr>
  * <td valign="top" style="background-color:#c0c0c0"><b>Tag<br>
  * </b></td>
- * <td valign="top" align="center" style="background-color:#ffffff">AT_BEGIN, NESTED<br>
+ * <td valign="top" style="background-color:#ffffff">AT_BEGIN, NESTED<br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff"><br>
+ * <td valign="top" style="background-color:#ffffff"><br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff"><br>
+ * <td valign="top" style="background-color:#ffffff"><br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff">AT_BEGIN, AT_END<br>
+ * <td valign="top" style="background-color:#ffffff">AT_BEGIN, AT_END<br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff"><br>
+ * <td valign="top" style="background-color:#ffffff"><br>
  * </td>
  * </tr>
  * <tr>
  * <td valign="top" style="background-color:#c0c0c0"><b>IterationTag<br>
  * </b></td>
- * <td valign="top" align="center" style="background-color:#ffffff">AT_BEGIN, NESTED<br>
+ * <td valign="top" style="background-color:#ffffff">AT_BEGIN, NESTED<br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff"><br>
+ * <td valign="top" style="background-color:#ffffff"><br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff">AT_BEGIN, NESTED<br>
+ * <td valign="top" style="background-color:#ffffff">AT_BEGIN, NESTED<br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff">AT_BEGIN, AT_END<br>
+ * <td valign="top" style="background-color:#ffffff">AT_BEGIN, AT_END<br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff"><br>
+ * <td valign="top" style="background-color:#ffffff"><br>
  * </td>
  * </tr>
  * <tr>
  * <td valign="top" style="background-color:#c0c0c0"><b>BodyTag<br>
  * </b></td>
- * <td valign="top" align="center" style="background-color:#ffffff">AT_BEGIN,
+ * <td valign="top" style="background-color:#ffffff">AT_BEGIN,
  * NESTED<sup>1</sup><br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff">AT_BEGIN,
+ * <td valign="top" style="background-color:#ffffff">AT_BEGIN,
  * NESTED<sup>1</sup><br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff">AT_BEGIN, NESTED<br>
+ * <td valign="top" style="background-color:#ffffff">AT_BEGIN, NESTED<br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff">AT_BEGIN, AT_END<br>
+ * <td valign="top" style="background-color:#ffffff">AT_BEGIN, AT_END<br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff"><br>
+ * <td valign="top" style="background-color:#ffffff"><br>
  * </td>
  * </tr>
  * <tr>
  * <td valign="top" style="background-color:#c0c0c0"><b>SimpleTag<br>
  * </b></td>
- * <td valign="top" align="center" style="background-color:#ffffff"><br>
+ * <td valign="top" style="background-color:#ffffff"><br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff"><br>
+ * <td valign="top" style="background-color:#ffffff"><br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff"><br>
+ * <td valign="top" style="background-color:#ffffff"><br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff"><br>
+ * <td valign="top" style="background-color:#ffffff"><br>
  * </td>
- * <td valign="top" align="center" style="background-color:#ffffff">AT_BEGIN, AT_END<br>
+ * <td valign="top" style="background-color:#ffffff">AT_BEGIN, AT_END<br>
  * </td>
  * </tr>
  * </tbody>
diff --git a/java/org/apache/catalina/Executor.java b/java/org/apache/catalina/Executor.java
index 16b3bbb..ba2ef49 100644
--- a/java/org/apache/catalina/Executor.java
+++ b/java/org/apache/catalina/Executor.java
@@ -25,7 +25,7 @@ public interface Executor extends java.util.concurrent.Executor, Lifecycle {
     /**
      * Executes the given command at some time in the future.  The command
      * may execute in a new thread, in a pooled thread, or in the calling
-     * thread, at the discretion of the <tt>Executor</tt> implementation.
+     * thread, at the discretion of the <code>Executor</code> implementation.
      * If no threads are available, it will be added to the work queue.
      * If the work queue is full, the system will wait for the specified
      * time until it throws a RejectedExecutionException
diff --git a/java/org/apache/catalina/core/ContainerBase.java b/java/org/apache/catalina/core/ContainerBase.java
index ad99bf3..a0a799b4 100644
--- a/java/org/apache/catalina/core/ContainerBase.java
+++ b/java/org/apache/catalina/core/ContainerBase.java
@@ -91,33 +91,33 @@ import org.apache.tomcat.util.threads.InlineExecutorService;
  *     <th>Description</th>
  *   </tr>
  *   <tr>
- *     <td align=center><code>addChild</code></td>
- *     <td align=center><code>Container</code></td>
+ *     <td><code>addChild</code></td>
+ *     <td><code>Container</code></td>
  *     <td>Child container added to this Container.</td>
  *   </tr>
  *   <tr>
- *     <td align=center><code>{@link #getPipeline() pipeline}.addValve</code></td>
- *     <td align=center><code>Valve</code></td>
+ *     <td><code>{@link #getPipeline() pipeline}.addValve</code></td>
+ *     <td><code>Valve</code></td>
  *     <td>Valve added to this Container.</td>
  *   </tr>
  *   <tr>
- *     <td align=center><code>removeChild</code></td>
- *     <td align=center><code>Container</code></td>
+ *     <td><code>removeChild</code></td>
+ *     <td><code>Container</code></td>
  *     <td>Child container removed from this Container.</td>
  *   </tr>
  *   <tr>
- *     <td align=center><code>{@link #getPipeline() pipeline}.removeValve</code></td>
- *     <td align=center><code>Valve</code></td>
+ *     <td><code>{@link #getPipeline() pipeline}.removeValve</code></td>
+ *     <td><code>Valve</code></td>
  *     <td>Valve removed from this Container.</td>
  *   </tr>
  *   <tr>
- *     <td align=center><code>start</code></td>
- *     <td align=center><code>null</code></td>
+ *     <td><code>start</code></td>
+ *     <td><code>null</code></td>
  *     <td>Container was started.</td>
  *   </tr>
  *   <tr>
- *     <td align=center><code>stop</code></td>
- *     <td align=center><code>null</code></td>
+ *     <td><code>stop</code></td>
+ *     <td><code>null</code></td>
  *     <td>Container was stopped.</td>
  *   </tr>
  * </table>
diff --git a/java/org/apache/catalina/filters/ExpiresFilter.java b/java/org/apache/catalina/filters/ExpiresFilter.java
index 0801b09..6351c5e 100644
--- a/java/org/apache/catalina/filters/ExpiresFilter.java
+++ b/java/org/apache/catalina/filters/ExpiresFilter.java
@@ -57,7 +57,7 @@ import org.apache.juli.logging.LogFactory;
  * Following documentation is inspired by <a
  * href="https://httpd.apache.org/docs/2.2/mod/mod_expires.html">mod_expires</a>
  * </p>
- * <h1>Summary</h1>
+ * <h2>Summary</h2>
  * <p>
  * This filter controls the setting of the {@code Expires} HTTP header and the
  * {@code max-age} directive of the {@code Cache-Control} HTTP header in
@@ -78,9 +78,9 @@ import org.apache.juli.logging.LogFactory;
  * href="https://httpd.apache.org/docs/2.2/mod/mod_headers.html" >Apache Httpd
  * mod_headers</a> module.
  * </p>
- * <h1>Filter Configuration</h1><h2>Basic configuration to add
+ * <h2>Filter Configuration</h2><h3>Basic configuration to add
  * '{@code Expires}' and '{@code Cache-Control: max-age=}'
- * headers to images, css and javascript</h2>
+ * headers to images, css and javascript</h3>
  *
  * <pre>
  * {@code
@@ -113,9 +113,9 @@ import org.apache.juli.logging.LogFactory;
  * }
  * </pre>
  *
- * <h2>Configuration Parameters</h2>
+ * <h3>Configuration Parameters</h3>
  *
- * <h3>{@code ExpiresByType <content-type>}</h3>
+ * <h4>{@code ExpiresByType <content-type>}</h4>
  * <p>
  * This directive defines the value of the {@code Expires} header and the
  * {@code max-age} directive of the {@code Cache-Control} header generated for
@@ -172,8 +172,8 @@ import org.apache.juli.logging.LogFactory;
  * You can also specify the expiration time calculation using an alternate
  * syntax, described earlier in this document.
  * </p>
- * <h3>
- * {@code ExpiresExcludedResponseStatusCodes}</h3>
+ * <h4>
+ * {@code ExpiresExcludedResponseStatusCodes}</h4>
  * <p>
  * This directive defines the http response status codes for which the
  * {@code ExpiresFilter} will not generate expiration headers. By default, the
@@ -200,7 +200,7 @@ import org.apache.juli.logging.LogFactory;
  * }
  * </pre>
  *
- * <h3>ExpiresDefault</h3>
+ * <h4>ExpiresDefault</h4>
  * <p>
  * This directive sets the default algorithm for calculating the expiration time
  * for all documents in the affected realm. It can be overridden on a
@@ -208,7 +208,7 @@ import org.apache.juli.logging.LogFactory;
  * description of that directive for details about the syntax of the argument,
  * and the "alternate syntax" description as well.
  * </p>
- * <h1>Alternate Syntax</h1>
+ * <h2>Alternate Syntax</h2>
  * <p>
  * The {@code ExpiresDefault} and {@code ExpiresByType} directives can also be
  * defined in a more readable syntax of the form:
@@ -296,7 +296,7 @@ import org.apache.juli.logging.LogFactory;
  * a file on disk. This is due to the fact that there is no modification time
  * for such content.
  * </p>
- * <h1>Expiration headers generation eligibility</h1>
+ * <h2>Expiration headers generation eligibility</h2>
  * <p>
  * A response is eligible to be enriched by {@code ExpiresFilter} if :
  * </p>
@@ -317,7 +317,7 @@ import org.apache.juli.logging.LogFactory;
  * {@code max-age}, they are concatenated with the {@code max-age} directive
  * that is added by the {@code ExpiresFilter}.</li>
  * </ul>
- * <h1>Expiration configuration selection</h1>
+ * <h2>Expiration configuration selection</h2>
  * <p>
  * The expiration configuration if elected according to the following algorithm:
  * </p>
@@ -334,7 +334,7 @@ import org.apache.juli.logging.LogFactory;
  * &#x27;),</li>
  * <li>{@code ExpiresDefault}</li>
  * </ol>
- * <h1>Implementation Details</h1><h2>When to write the expiration headers ?</h2>
+ * <h2>Implementation Details</h2><h3>When to write the expiration headers ?</h3>
  * <p>
  * The {@code ExpiresFilter} traps the &#x27;on before write response
  * body&#x27; event to decide whether it should generate expiration headers or
@@ -350,7 +350,7 @@ import org.apache.juli.logging.LogFactory;
  * case, the {@code ExpiresFilter}, at the end of its {@code doFilter()}
  * method, manually triggers the {@code onBeforeWriteResponseBody()} method.
  * </p>
- * <h2>Configuration syntax</h2>
+ * <h3>Configuration syntax</h3>
  * <p>
  * The {@code ExpiresFilter} supports the same configuration syntax as Apache
  * Httpd mod_expires.
@@ -366,7 +366,7 @@ import org.apache.juli.logging.LogFactory;
  * The workaround has been to declare the content type in the
  * {@code <param-name>} rather than in the {@code <param-value>}.
  * </p>
- * <h2>Designed for extension : the open/close principle</h2>
+ * <h3>Designed for extension : the open/close principle</h3>
  * <p>
  * The {@code ExpiresFilter} has been designed for extension following the
  * open/close principle.
@@ -381,7 +381,7 @@ import org.apache.juli.logging.LogFactory;
  * <li>
  * {@link #getExpirationDate(XHttpServletResponse)}</li>
  * </ul>
- * <h1>Troubleshooting</h1>
+ * <h2>Troubleshooting</h2>
  * <p>
  * To troubleshoot, enable logging on the
  * {@code org.apache.catalina.filters.ExpiresFilter}.
diff --git a/java/org/apache/catalina/tribes/package.html b/java/org/apache/catalina/tribes/package.html
index 56529ef..9ea57e7 100644
--- a/java/org/apache/catalina/tribes/package.html
+++ b/java/org/apache/catalina/tribes/package.html
@@ -18,7 +18,7 @@
 <title>Apache Tribes - The Tomcat Cluster Communication Module</title>
 </head>
 <body>
-<h3>QuickStart</h3>
+<h2>QuickStart</h2>
     <pre><code>
             //create a channel
             Channel myChannel = new GroupChannel();
@@ -45,7 +45,7 @@
             channel.send(group,myMsg,Channel.SEND_OPTIONS_DEFAULT);
 
     </code></pre>
-<h3>Interfaces for the Application Developer</h3>
+<h2>Interfaces for the Application Developer</h2>
     <ol>
         <li><code>org.apache.catalina.tribes.Channel</code>
             Main component to interact with to send messages
diff --git a/java/org/apache/jasper/compiler/JspUtil.java b/java/org/apache/jasper/compiler/JspUtil.java
index a82fdc6..e1b881b 100644
--- a/java/org/apache/jasper/compiler/JspUtil.java
+++ b/java/org/apache/jasper/compiler/JspUtil.java
@@ -249,14 +249,15 @@ public class JspUtil {
     }
 
     /**
-     * Returns the <tt>Class</tt> object associated with the class or
+     * Returns the <code>Class</code> object associated with the class or
      * interface with the given string name.
      *
      * <p>
-     * The <tt>Class</tt> object is determined by passing the given string
-     * name to the <tt>Class.forName()</tt> method, unless the given string
+     * The <code>Class</code> object is determined by passing the given string
+     * name to the <code>Class.forName()</code> method, unless the given string
      * name represents a primitive type, in which case it is converted to a
-     * <tt>Class</tt> object by appending ".class" to it (e.g., "int.class").
+     * <code>Class</code> object by appending ".class" to it (e.g.,
+     * "int.class").
      * @param type The class name, array or primitive type
      * @param loader The class loader
      * @return the loaded class
diff --git a/java/org/apache/jasper/compiler/PageDataImpl.java b/java/org/apache/jasper/compiler/PageDataImpl.java
index beaa191..592da5e 100644
--- a/java/org/apache/jasper/compiler/PageDataImpl.java
+++ b/java/org/apache/jasper/compiler/PageDataImpl.java
@@ -29,7 +29,7 @@ import org.xml.sax.Attributes;
 import org.xml.sax.helpers.AttributesImpl;
 
 /**
- * An implementation of <tt>javax.servlet.jsp.tagext.PageData</tt> which
+ * An implementation of <code>javax.servlet.jsp.tagext.PageData</code> which
  * builds the XML view of a given page.
  *
  * The XML view is built in two passes:
diff --git a/java/org/apache/jasper/compiler/SmapStratum.java b/java/org/apache/jasper/compiler/SmapStratum.java
index d106342..334a077 100644
--- a/java/org/apache/jasper/compiler/SmapStratum.java
+++ b/java/org/apache/jasper/compiler/SmapStratum.java
@@ -62,7 +62,7 @@ public class SmapStratum {
          * Sets lineFileID.  Should be called only when different from
          * that of prior LineInfo object (in any given context) or 0
          * if the current LineInfo has no (logical) predecessor.
-         * <tt>LineInfo</tt> will print this file number no matter what.
+         * <code>LineInfo</code> will print this file number no matter what.
          *
          * @param lineFileID The new line file ID
          */
@@ -222,19 +222,19 @@ public class SmapStratum {
      * later.)
      *
      * @param inputStartLine starting line in the source file
-     *        (SMAP <tt>InputStartLine</tt>)
+     *        (SMAP <code>InputStartLine</code>)
      * @param inputFileName the filepath (or name) from which the input comes
-     *        (yields SMAP <tt>LineFileID</tt>)  Use unqualified names
+     *        (yields SMAP <code>LineFileID</code>)  Use unqualified names
      *        carefully, and only when they uniquely identify a file.
      * @param inputLineCount the number of lines in the input to map
-     *        (SMAP <tt>LineFileCount</tt>)
+     *        (SMAP <code>LineFileCount</code>)
      * @param outputStartLine starting line in the output file
-     *        (SMAP <tt>OutputStartLine</tt>)
+     *        (SMAP <code>OutputStartLine</code>)
      * @param outputLineIncrement number of output lines to map to each
-     *        input line (SMAP <tt>OutputLineIncrement</tt>).  <i>Given the
+     *        input line (SMAP <code>OutputLineIncrement</code>).  <i>Given the
      *        fact that the name starts with "output", I continuously have
      *        the subconscious urge to call this field
-     *        <tt>OutputLineExcrement</tt>.</i>
+     *        <code>OutputLineExcrement</code>.</i>
      */
     public void addLineData(
         int inputStartLine,
diff --git a/java/org/apache/jasper/runtime/BodyContentImpl.java b/java/org/apache/jasper/runtime/BodyContentImpl.java
index c3c381d..0f3c11a 100644
--- a/java/org/apache/jasper/runtime/BodyContentImpl.java
+++ b/java/org/apache/jasper/runtime/BodyContentImpl.java
@@ -208,8 +208,8 @@ public class BodyContentImpl extends BodyContent {
 
     /**
      * Write a line separator.  The line separator string is defined by the
-     * system property <tt>line.separator</tt>, and is not necessarily a single
-     * newline ('\n') character.
+     * system property <code>line.separator</code>, and is not necessarily a
+     * single newline ('\n') character.
      *
      * @throws IOException Error writing to wrapped writer
      */
diff --git a/java/org/apache/jasper/runtime/JspWriterImpl.java b/java/org/apache/jasper/runtime/JspWriterImpl.java
index 170fce0..d4cca73 100644
--- a/java/org/apache/jasper/runtime/JspWriterImpl.java
+++ b/java/org/apache/jasper/runtime/JspWriterImpl.java
@@ -319,8 +319,8 @@ public class JspWriterImpl extends JspWriter {
 
     /**
      * Write a line separator.  The line separator string is defined by the
-     * system property <tt>line.separator</tt>, and is not necessarily a single
-     * newline ('\n') character.
+     * system property <code>line.separator</code>, and is not necessarily a
+     * single newline ('\n') character.
      *
      * @exception  IOException  If an I/O error occurs
      */
diff --git a/java/org/apache/jasper/tagplugins/jstl/Util.java b/java/org/apache/jasper/tagplugins/jstl/Util.java
index b23b7c0..7b75d16 100644
--- a/java/org/apache/jasper/tagplugins/jstl/Util.java
+++ b/java/org/apache/jasper/tagplugins/jstl/Util.java
@@ -91,11 +91,11 @@ public class Util {
     }
 
     /**
-     * Returns <tt>true</tt> if our current URL is absolute,
-     * <tt>false</tt> otherwise.
+     * Returns <code>true</code> if our current URL is absolute,
+     * <code>false</code> otherwise.
      * taken from org.apache.taglibs.standard.tag.common.core.ImportSupport
      * @param url The URL
-     * @return <tt>true</tt> if the URL is absolute
+     * @return <code>true</code> if the URL is absolute
      */
     public static boolean isAbsoluteUrl(String url){
         if(url == null){
@@ -150,7 +150,7 @@ public class Util {
     }
 
     /**
-     * Strips a servlet session ID from <tt>url</tt>.  The session ID
+     * Strips a servlet session ID from <code>url</code>.  The session ID
      * is encoded as a URL "path parameter" beginning with "jsessionid=".
      * We thus remove anything we find between ";jsessionid=" (inclusive)
      * and either EOS or a subsequent ';' (exclusive).
diff --git a/java/org/apache/juli/FileHandler.java b/java/org/apache/juli/FileHandler.java
index 19dafa4..c56514b 100644
--- a/java/org/apache/juli/FileHandler.java
+++ b/java/org/apache/juli/FileHandler.java
@@ -251,7 +251,7 @@ public class FileHandler extends Handler {
 
 
     /**
-     * Format and publish a <tt>LogRecord</tt>.
+     * Format and publish a <code>LogRecord</code>.
      *
      * @param  record  description of the log event
      */
diff --git a/java/org/apache/juli/logging/package.html b/java/org/apache/juli/logging/package.html
index f92156b..99ab816 100644
--- a/java/org/apache/juli/logging/package.html
+++ b/java/org/apache/juli/logging/package.html
@@ -16,7 +16,7 @@
 -->
 <body>
 
-<h3>Overview</h3>
+<h2>Overview</h2>
 
 
 <p>This implementation of commons-logging uses a  commons-logging.jar
diff --git a/java/org/apache/tomcat/dbcp/dbcp2/cpdsadapter/DriverAdapterCPDS.java b/java/org/apache/tomcat/dbcp/dbcp2/cpdsadapter/DriverAdapterCPDS.java
index 27ad570..34bad40 100644
--- a/java/org/apache/tomcat/dbcp/dbcp2/cpdsadapter/DriverAdapterCPDS.java
+++ b/java/org/apache/tomcat/dbcp/dbcp2/cpdsadapter/DriverAdapterCPDS.java
@@ -621,9 +621,9 @@ public class DriverAdapterCPDS implements ConnectionPoolDataSource, Referenceabl
     /**
      * Sets the number of statements to examine during each run of the idle object evictor thread (if any).
      * <p>
-     * When a negative value is supplied, <tt>ceil({*link #numIdle})/abs({*link #getNumTestsPerEvictionRun})</tt> tests
-     * will be run. I.e., when the value is <i>-n</i>, roughly one <i>n</i>th of the idle objects will be tested per
-     * run.
+     * When a negative value is supplied, <code>ceil({*link #numIdle})/abs({*link #getNumTestsPerEvictionRun})</code>
+     * tests will be run. I.e., when the value is <i>-n</i>, roughly one <i>n</i>th of the idle objects will be tested
+     * per run.
      * </p>
      *
      * @param numTestsPerEvictionRun
diff --git a/java/org/apache/tomcat/util/buf/package.html b/java/org/apache/tomcat/util/buf/package.html
index ebbd7b7..718dc1c 100644
--- a/java/org/apache/tomcat/util/buf/package.html
+++ b/java/org/apache/tomcat/util/buf/package.html
@@ -15,7 +15,7 @@
   limitations under the License.
 -->
 <html><body>
-<H1>Buffers and Encodings</h1>
+<H2>Buffers and Encodings</h2>
 
 This package contains buffers and utils to perform encoding/decoding of buffers. That includes byte to char
 conversions, URL encodings, etc.
diff --git a/java/org/apache/tomcat/util/digester/package.html b/java/org/apache/tomcat/util/digester/package.html
index b163df6..0a16423 100644
--- a/java/org/apache/tomcat/util/digester/package.html
+++ b/java/org/apache/tomcat/util/digester/package.html
@@ -22,7 +22,6 @@
 The Digester package provides for rules-based processing of arbitrary
 XML documents.
 <br><br>
-<a name="doc.Description"></a>
 <div>
 <a href="#doc.Intro">[Introduction]</a>
 <a href="#doc.Properties">[Configuration Properties]</a>
@@ -41,8 +40,7 @@ XML documents.
 <a href="#doc.Limits">[Known Limitations]</a>
 </div>
 
-<a name="doc.Intro"></a>
-<h3>Introduction</h3>
+<h2 id="doc.Intro">Introduction</h2>
 
 <p>In many application environments that deal with XML-formatted data, it is
 useful to be able to process an XML document in an "event driven" manner,
@@ -84,8 +82,7 @@ the developer to focus on the processing to be performed.</p>
 <p>For example code, see <a href="#doc.Usage"> the usage
 examples</a>, and <a href="#doc.FAQ.Examples"> the FAQ </a>. </p>
 
-<a name="doc.Properties"></a>
-<h3>Digester Configuration Properties</h3>
+<h2 id="doc.Properties">Digester Configuration Properties</h2>
 
 <p>A <code>org.apache.commons.digester.Digester</code> instance contains several
 configuration properties that can be used to customize its operation.  These
@@ -192,8 +189,7 @@ or <code>java.lang.ClassLoader.getResourceAsStream()</code>.  The actual DTD
 resource is loaded through the same class loader that loads all of the Struts
 classes -- typically from the <code>struts.jar</code> file.</p>
 
-<a name="doc.Stack"></a>
-<h3>The Object Stack</h3>
+<h2 id="doc.Stack">The Object Stack</h2>
 
 <p>One very common use of <code>org.apache.commons.digester.Digester</code>
 technology is to dynamically construct a tree of Java objects, whose internal
@@ -254,8 +250,7 @@ features of the Digester functionality:</p>
     the parse finishes as well.</li>
 </ul>
 
-<a name="doc.Patterns"></a>
-<h3>Element Matching Patterns</h3>
+<h2 id="doc.Patterns">Element Matching Patterns</h2>
 
 <p>A primary feature of the <code>org.apache.commons.digester.Digester</code>
 parser is that the Digester automatically navigates the element hierarchy of
@@ -314,8 +309,7 @@ order that the <code>Rules</code> where initially registered with the
 <code>Digester</code>, whilst <code>end</code> method calls are execute in
 reverse order. In other words - the order is first in, last out.</p>
 
-<a name="doc.Rules"></a>
-<h3>Processing Rules</h3>
+<h2 id="doc.Rules">Processing Rules</h2>
 
 <p>The <a href="#doc.Patterns">previous section</a> documented how you identify
 <strong>when</strong> you wish to have certain actions take place.  The purpose
@@ -426,8 +420,7 @@ class.  For example, the following code sequence:</p>
                         "com.mycompany.mypackage.MyChildClass");
 </pre>
 
-<a name="doc.Logging"></a>
-<h3>Logging</h3>
+<h2 id="doc.Logging">Logging</h2>
 
 <p>Logging is a vital tool for debugging Digester rulesets. Digester can log
 copious amounts of debugging information. So, you need to know how logging
@@ -445,11 +438,10 @@ works before you start using Digester seriously.</p>
     volume.</li>
 </ul>
 
-<a name="doc.Usage"></a>
-<h3>Usage Examples</h3>
+<h2 id="doc.Usage">Usage Examples</h2>
 
 
-<h4>Creating a Simple Object Tree</h4>
+<h3>Creating a Simple Object Tree</h3>
 
 <p>Let's assume that you have two simple JavaBeans, <code>Foo</code> and
 <code>Bar</code>, with the following method signatures:</p>
@@ -529,7 +521,7 @@ have had its properties set, and all of its child <code>Bar</code> objects
 created for you.</p>
 
 
-<h4>Processing A Struts Configuration File</h4>
+<h3>Processing A Struts Configuration File</h3>
 
 <p>As stated earlier, the primary reason that the
 <code>Digester</code> package was created is because the
@@ -623,7 +615,7 @@ now represented as collections of objects cached within the Struts controller
 servlet, as well as being exposed as servlet context attributes.</p>
 
 
-<h4>Parsing Body Text In XML Files</h4>
+<h3>Parsing Body Text In XML Files</h3>
 
 <p>The Digester module also allows you to process the nested body text in an
 XML file, not just the elements and attributes that are encountered.  The
@@ -707,8 +699,7 @@ brevity in this example):</p>
 </ul>
 
 
-<a name="doc.Namespace"></a>
-<h3>Namespace Aware Parsing</h3>
+<h2 id="doc.Namespace">Namespace Aware Parsing</h2>
 
 <p>For digesting XML documents that do not use XML namespaces, the default
 behavior of <code>Digester</code>, as described above, is generally sufficient.
@@ -777,7 +768,7 @@ any restrictions on what other content is present in the document.</p>
 Rule Sets</a> if you wish to reuse a particular set of rules, associated
 with a particular namespace, in more than one application context.</p>
 
-<h4>Using Namespace Prefixes In Pattern Matching</h4>
+<h3>Using Namespace Prefixes In Pattern Matching</h3>
 
 <p>Using rules with namespaces is very useful when you have orthogonal rulesets.
 One ruleset applies to a namespace and is independent of other rulesets applying
@@ -795,15 +786,14 @@ prefixes.</p>
 'foo:bar'</code> will match a top level element named <code>'bar'</code> in the
 namespace with (local) prefix <code>'foo'</code>.</p>
 
-<h4>Limitations of Digester Namespace support</h4>
+<h3>Limitations of Digester Namespace support</h3>
 <p>Digester does not provide general "xpath-compliant" matching;
 only the namespace attached to the <i>last</i> element in the match path
 is involved in the matching process. Namespaces attached to parent
 elements are ignored for matching purposes.</p>
 
 
-<a name="doc.Pluggable"></a>
-<h3>Pluggable Rules Processing</h3>
+<h2 id="doc.Pluggable">Pluggable Rules Processing</h2>
 
 <p>By default, <code>Digester</code> selects the rules that match a particular
 pattern of nested elements as described under
@@ -829,7 +819,7 @@ that:</p>
     creator can use any prefix that they like).</li>
 </ul>
 
-<h4>ExtendedBaseRules</h4>
+<h3>ExtendedBaseRules</h3>
 <p><a href="ExtendedBaseRules.html">ExtendedBaseRules</a>,
 adds some additional expression syntax for pattern matching
 to the default mechanism, but it also executes more slowly.  See the
@@ -844,7 +834,7 @@ following as part of your Digester initialization:</p>
   ...
 </pre>
 
-<h4>RegexRules</h4>
+<h3>RegexRules</h3>
 <p><a href="RegexRules.html">RegexRules</a> is an advanced <code>Rules</code>
 implementation which does not build on the default pattern matching rules.
 It uses a pluggable <a href="RegexMatcher.html">RegexMatcher</a> implementation to test
@@ -862,7 +852,7 @@ Example usage:
   digester.setRules(new RegexRules(new SimpleRegexMatcher()));
   ...
 </pre>
-<h4>RegexMatchers</h4>
+<h3>RegexMatchers</h3>
 <p>
 <code>Digester</code> ships only with one <code>RegexMatcher</code>
 implementation: <a href='SimpleRegexMatcher.html'>SimpleRegexMatcher</a>.
@@ -892,8 +882,7 @@ regex (to allow the dependencies required by <code>Digester</code>
 to be kept to a minimum).
 </p>
 
-<a name="doc.RuleSets"></a>
-<h3>Encapsulated Rule Sets</h3>
+<h2 id="doc.RuleSets">Encapsulated Rule Sets</h2>
 
 <p>All of the examples above have described a scenario where the rules to be
 processed are registered with a <code>Digester</code> instance immediately
@@ -959,8 +948,8 @@ public class MyRuleSet extends RuleSetBase {
     the same set of nested elements at different nesting levels within an
     XML document.</li>
 </ul>
-<a name="doc.NamedStacks"></a>
-<h3>Using Named Stacks For Inter-Rule Communication</h3>
+
+<h2 id="doc.NamedStacks">Using Named Stacks For Inter-Rule Communication</h2>
 <p>
 <code>Digester</code> is based on <code>Rule</code> instances working together
 to process xml. For anything other than the most trivial processing,
@@ -1001,10 +990,10 @@ are reserved for future use by the <code>Digester</code> component. It is also r
 that users choose stack names perfixed by the name of their own domain to avoid conflicts
 with other <code>Rule</code> implementations.
 </p>
-<a name="doc.RegisteringDTDs"></a>
-<h3>Registering DTDs</h3>
 
-<h4>Brief (But Still Too Long) Introduction To System and Public Identifiers</h4>
+<h2 id="doc.RegisteringDTDs">Registering DTDs</h2>
+
+<h3>Brief (But Still Too Long) Introduction To System and Public Identifiers</h3>
 <p>A definition for an external entity comes in one of two forms:
 </p>
 <ol>
@@ -1056,7 +1045,7 @@ Only when no local copy exists is it necessary to download the document
 from the internet URL. This naming scheme is recommended when using <code>Digester</code>.
 </p>
 
-<h4>External Entity Resolution Using Digester</h4>
+<h3>External Entity Resolution Using Digester</h3>
 <p>
 SAX factors out the resolution of external entities into an <code>EntityResolver</code>.
 <code>Digester</code> supports the use of custom <code>EntityResolver</code>
@@ -1075,9 +1064,8 @@ whenever an external entity with public id
 <p><strong>Note:</strong> This is a simple (but useful) implementation.
 Greater sophistication requires a custom <code>EntityResolver</code>.</p>
 
-<a name="doc.troubleshooting"></a>
-<h3>Troubleshooting</h3>
-<h4>Debugging Exceptions</h4>
+<h2 id="doc.troubleshooting">Troubleshooting</h2>
+<h3>Debugging Exceptions</h3>
 <p>
 <code>Digester</code> is based on <a href='http://www.saxproject.org'>SAX</a>.
 Digestion throws two kinds of <code>Exception</code>:
@@ -1092,7 +1080,7 @@ that developers know all about. The second is thrown by SAX parsers when the pro
 of the XML cannot be completed. So, to diagnose the cause a certain familiarity with
 the way that SAX error handling works is very useful.
 </p>
-<h4>Diagnosing SAX Exceptions</h4>
+<h3>Diagnosing SAX Exceptions</h3>
 <p>
 This is a short, potted guide to SAX error handling strategies. It's not intended as a
 proper guide to error handling in SAX.
@@ -1115,8 +1103,8 @@ throw by <code>Digester</code> each of these will be wrapped into a
 <code>SAXException</code> and rethrown. So, catch these and examine the wrapped
 exception to diagnose what went wrong.
 </p>
-<a name="doc.FAQ"></a>
-<h3>Frequently Asked Questions</h3>
+
+<h2 id="doc.FAQ">Frequently Asked Questions</h2>
 <ul>
 <li><strong>Why do I get warnings when using a JAXP 1.1 parser?</strong>
 If you're using a JAXP 1.1 parser, you might see the following warning (in your log):
@@ -1159,8 +1147,7 @@ Digester logs but the processing will continue. To change this behaviour, call
 <code>digester.setErrorHandler</code> with a more suitable implementation.
 </p>
 
-<li><strong>Where Can I Find Example Code?</strong>
-<a name="doc.FAQ.Examples"></a>
+<li id="doc.FAQ.Examples"><strong>Where Can I Find Example Code?</strong>
 <p>Digester ships with a sample application: a mapping for the <em>Rich Site
 Summary</em> format used by many newsfeeds. Download the source distribution
 to see how it works.</p>
@@ -1181,9 +1168,9 @@ commons dev mailing list</a>
 </p>
 </li>
 </ul>
-<a name="doc.Limits"></a>
-<h3>Known Limitations</h3>
-<h4>Accessing Public Methods In A Default Access Superclass</h4>
+
+<h2 id="doc.Limits">Known Limitations</h2>
+<h3>Accessing Public Methods In A Default Access Superclass</h3>
 <p>There is an issue when invoking public methods contained in a default access superclass.
 Reflection locates these methods fine and correctly assigns them as public.
 However, an <code>IllegalAccessException</code> is thrown if the method is invoked.</p>
diff --git a/java/org/apache/tomcat/util/modeler/package.html b/java/org/apache/tomcat/util/modeler/package.html
index d94cfb4..a64f08a 100644
--- a/java/org/apache/tomcat/util/modeler/package.html
+++ b/java/org/apache/tomcat/util/modeler/package.html
@@ -52,7 +52,7 @@ source distribution), and much more complex usage code in Tomcat 4.1 (in the
 be found in Tomcat 5.
 
 
-<h3>1.  Acquire a JMX Implementation</h3>
+<h2>1.  Acquire a JMX Implementation</h2>
 
 <p><em>Modeler</em> has been tested with different JMX implementations:
 <ul>
@@ -71,7 +71,7 @@ compilation classpath, and in the classpath of your server application when it
 is executed.</p>
 
 
-<h3>2.  Create a Modeler Configuration File</h3>
+<h2>2.  Create a Modeler Configuration File</h2>
 
 <p><em>Modeler</em> requires that you construct a configuration file that
 describes the metadata ultimately need to construct the
@@ -194,7 +194,7 @@ object (by name) before calling the <code>addRole</code> method on the
 underlying <code>Group</code> instance within the Server.</p>
 
 
-<h3>3.  Create Modeler Registry at Startup Time</h3>
+<h2>3.  Create Modeler Registry at Startup Time</h2>
 
 <p>The metadata information, and the corresponding Model MBean factory, is
 represented at runtime in an instance of <a href="Registry.html">Registry</a>
@@ -224,7 +224,7 @@ ant, to determine a reasonable metadata</p>
 descriptors</p>
 
 
-<h3>4.  Instantiate Model MBeans As Needed</h3>
+<h2>4.  Instantiate Model MBeans As Needed</h2>
 
 <p>When your server application needs to instantiate a new MBean and register
 it with the corresponding <code>MBeanServer</code>, it can execute code like
diff --git a/java/org/apache/tomcat/util/net/Nio2Channel.java b/java/org/apache/tomcat/util/net/Nio2Channel.java
index f6b9f0c..ff8c302 100644
--- a/java/org/apache/tomcat/util/net/Nio2Channel.java
+++ b/java/org/apache/tomcat/util/net/Nio2Channel.java
@@ -99,7 +99,7 @@ public class Nio2Channel implements AsynchronousByteChannel {
     /**
      * Tells whether or not this channel is open.
      *
-     * @return <tt>true</tt> if, and only if, this channel is open
+     * @return <code>true</code> if, and only if, this channel is open
      */
     @Override
     public boolean isOpen() {
diff --git a/java/org/apache/tomcat/util/net/NioChannel.java b/java/org/apache/tomcat/util/net/NioChannel.java
index 1de1e80..e400cb0 100644
--- a/java/org/apache/tomcat/util/net/NioChannel.java
+++ b/java/org/apache/tomcat/util/net/NioChannel.java
@@ -120,7 +120,7 @@ public class NioChannel implements ByteChannel, ScatteringByteChannel, Gathering
     /**
      * Tells whether or not this channel is open.
      *
-     * @return <tt>true</tt> if, and only if, this channel is open
+     * @return <code>true</code> if, and only if, this channel is open
      */
     @Override
     public boolean isOpen() {
@@ -156,8 +156,8 @@ public class NioChannel implements ByteChannel, ScatteringByteChannel, Gathering
      * Reads a sequence of bytes from this channel into the given buffer.
      *
      * @param dst The buffer into which bytes are to be transferred
-     * @return The number of bytes read, possibly zero, or <tt>-1</tt> if the
-     *         channel has reached end-of-stream
+     * @return The number of bytes read, possibly zero, or <code>-1</code> if
+     *         the channel has reached end-of-stream
      * @throws IOException If some other I/O error occurs
      */
     @Override
diff --git a/java/org/apache/tomcat/util/net/SecureNio2Channel.java b/java/org/apache/tomcat/util/net/SecureNio2Channel.java
index a45c9a5..d446254 100644
--- a/java/org/apache/tomcat/util/net/SecureNio2Channel.java
+++ b/java/org/apache/tomcat/util/net/SecureNio2Channel.java
@@ -781,7 +781,7 @@ public class SecureNio2Channel extends Nio2Channel  {
      * Reads a sequence of bytes from this channel into the given buffer.
      *
      * @param dst The buffer into which bytes are to be transferred
-     * @return The number of bytes read, possibly zero, or <tt>-1</tt> if the channel has reached end-of-stream
+     * @return The number of bytes read, possibly zero, or <code>-1</code> if the channel has reached end-of-stream
      * @throws IllegalStateException if the handshake was not completed
      */
     @Override
diff --git a/java/org/apache/tomcat/util/net/SecureNioChannel.java b/java/org/apache/tomcat/util/net/SecureNioChannel.java
index 6f32cf3..1c3f6b4 100644
--- a/java/org/apache/tomcat/util/net/SecureNioChannel.java
+++ b/java/org/apache/tomcat/util/net/SecureNioChannel.java
@@ -582,8 +582,8 @@ public class SecureNioChannel extends NioChannel {
      * Reads a sequence of bytes from this channel into the given buffer.
      *
      * @param dst The buffer into which bytes are to be transferred
-     * @return The number of bytes read, possibly zero, or <tt>-1</tt> if the
-     *         channel has reached end-of-stream
+     * @return The number of bytes read, possibly zero, or <code>-1</code> if
+     *         the channel has reached end-of-stream
      * @throws IOException If some other I/O error occurs
      * @throws IllegalArgumentException if the destination buffer is different
      *                                  than getBufHandler().getReadBuffer()
diff --git a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
index cfdac24..dbabc05 100644
--- a/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
+++ b/java/org/apache/tomcat/util/threads/ThreadPoolExecutor.java
@@ -148,7 +148,7 @@ public class ThreadPoolExecutor extends java.util.concurrent.ThreadPoolExecutor
     /**
      * Executes the given command at some time in the future.  The command
      * may execute in a new thread, in a pooled thread, or in the calling
-     * thread, at the discretion of the <tt>Executor</tt> implementation.
+     * thread, at the discretion of the <code>Executor</code> implementation.
      * If no threads are available, it will be added to the work queue.
      * If the work queue is full, the system will wait for the specified
      * time and it throw a RejectedExecutionException if the queue is still
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 36581f5..f741ab4 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -97,6 +97,11 @@
         Correct the source code links on the index page for the ROOT web
         application to point to Git rather than Subversion. (markt)
       </fix>
+      <fix>
+        Fix various issues with the Javadoc generated for the documentation web
+        application to enable release builds to be built with Java 10 onwards.
+        (markt)
+      </fix>
     </changelog>
   </subsection>
   <subsection name="Other">


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org