This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch 8.5.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/8.5.x by this push:
new 6c03319 Update the Servlet 4 preview API to reflect the final release.
6c03319 is described below
commit 6c03319f992d8a123ce2f47281c5956e5a7c1cfd
Author: Mark Thomas <[email protected]>
AuthorDate: Mon Nov 11 17:26:45 2019 +0000
Update the Servlet 4 preview API to reflect the final release.
Note that this preview API has deprecated for over a year and may be
removed as soon as the next 8.5.x release.
---
java/org/apache/catalina/connector/Request.java | 6 ++--
.../apache/catalina/connector/RequestFacade.java | 6 ++--
.../apache/catalina/core/ApplicationContext.java | 4 +--
.../catalina/core/ApplicationDispatcher.java | 18 ++++++------
.../catalina/core/ApplicationHttpRequest.java | 12 ++++----
.../apache/catalina/core/ApplicationMapping.java | 30 +++++++++-----------
.../org/apache/catalina/filters/ExpiresFilter.java | 2 +-
java/org/apache/catalina/mapper/MappingData.java | 4 +--
.../catalina/servlet4preview/ServletContext.java | 32 +++++++++++-----------
...ServletMapping.java => HttpServletMapping.java} | 16 ++++++-----
.../servlet4preview/http/HttpServletRequest.java | 4 +--
.../http/HttpServletRequestWrapper.java | 14 +++++-----
.../servlet4preview/http/MappingMatch.java | 3 +-
.../catalina/servlet4preview/http/PushBuilder.java | 4 +--
...estApplicationContextGetRequestDispatcherB.java | 10 +++----
.../catalina/core/TestApplicationMapping.java | 12 ++++----
webapps/docs/changelog.xml | 5 ++++
17 files changed, 92 insertions(+), 90 deletions(-)
diff --git a/java/org/apache/catalina/connector/Request.java
b/java/org/apache/catalina/connector/Request.java
index 3b49e55..d4b11d5 100644
--- a/java/org/apache/catalina/connector/Request.java
+++ b/java/org/apache/catalina/connector/Request.java
@@ -81,8 +81,8 @@ import org.apache.catalina.core.ApplicationPushBuilder;
import org.apache.catalina.core.ApplicationSessionCookieConfig;
import org.apache.catalina.core.AsyncContextImpl;
import org.apache.catalina.mapper.MappingData;
+import org.apache.catalina.servlet4preview.http.HttpServletMapping;
import org.apache.catalina.servlet4preview.http.PushBuilder;
-import org.apache.catalina.servlet4preview.http.ServletMapping;
import org.apache.catalina.util.ParameterMap;
import org.apache.catalina.util.TLSUtil;
import org.apache.catalina.util.URLEncoder;
@@ -2298,8 +2298,8 @@ public class Request implements
org.apache.catalina.servlet4preview.http.HttpSer
@Override
- public ServletMapping getServletMapping() {
- return applicationMapping.getServletMapping();
+ public HttpServletMapping getHttpServletMapping() {
+ return applicationMapping.getHttpServletMapping();
}
diff --git a/java/org/apache/catalina/connector/RequestFacade.java
b/java/org/apache/catalina/connector/RequestFacade.java
index cc46461..23146ed 100644
--- a/java/org/apache/catalina/connector/RequestFacade.java
+++ b/java/org/apache/catalina/connector/RequestFacade.java
@@ -41,9 +41,9 @@ import javax.servlet.http.Part;
import org.apache.catalina.Globals;
import org.apache.catalina.security.SecurityUtil;
+import org.apache.catalina.servlet4preview.http.HttpServletMapping;
import org.apache.catalina.servlet4preview.http.HttpServletRequest;
import org.apache.catalina.servlet4preview.http.PushBuilder;
-import org.apache.catalina.servlet4preview.http.ServletMapping;
import org.apache.tomcat.util.res.StringManager;
/**
@@ -1123,8 +1123,8 @@ public class RequestFacade implements HttpServletRequest {
* removed or replaced at any time until Servlet 4.0 becomes final.
*/
@Override
- public ServletMapping getServletMapping() {
- return request.getServletMapping();
+ public HttpServletMapping getHttpServletMapping() {
+ return request.getHttpServletMapping();
}
diff --git a/java/org/apache/catalina/core/ApplicationContext.java
b/java/org/apache/catalina/core/ApplicationContext.java
index c243072..a476903 100644
--- a/java/org/apache/catalina/core/ApplicationContext.java
+++ b/java/org/apache/catalina/core/ApplicationContext.java
@@ -67,7 +67,7 @@ import org.apache.catalina.WebResourceRoot;
import org.apache.catalina.Wrapper;
import org.apache.catalina.connector.Connector;
import org.apache.catalina.mapper.MappingData;
-import org.apache.catalina.servlet4preview.http.ServletMapping;
+import org.apache.catalina.servlet4preview.http.HttpServletMapping;
import org.apache.catalina.util.Introspection;
import org.apache.catalina.util.ServerInfo;
import org.apache.catalina.util.URLEncoder;
@@ -483,7 +483,7 @@ public class ApplicationContext implements
org.apache.catalina.servlet4preview.S
Wrapper wrapper = mappingData.wrapper;
String wrapperPath = mappingData.wrapperPath.toString();
String pathInfo = mappingData.pathInfo.toString();
- ServletMapping mapping = new
ApplicationMapping(mappingData).getServletMapping();
+ HttpServletMapping mapping = new
ApplicationMapping(mappingData).getHttpServletMapping();
// Construct a RequestDispatcher to process this request
return new ApplicationDispatcher(wrapper, uri, wrapperPath,
pathInfo,
diff --git a/java/org/apache/catalina/core/ApplicationDispatcher.java
b/java/org/apache/catalina/core/ApplicationDispatcher.java
index 385075d..1f93011 100644
--- a/java/org/apache/catalina/core/ApplicationDispatcher.java
+++ b/java/org/apache/catalina/core/ApplicationDispatcher.java
@@ -44,7 +44,7 @@ import org.apache.catalina.connector.Request;
import org.apache.catalina.connector.RequestFacade;
import org.apache.catalina.connector.Response;
import org.apache.catalina.connector.ResponseFacade;
-import org.apache.catalina.servlet4preview.http.ServletMapping;
+import org.apache.catalina.servlet4preview.http.HttpServletMapping;
import org.apache.tomcat.util.ExceptionUtils;
import org.apache.tomcat.util.res.StringManager;
@@ -211,7 +211,7 @@ final class ApplicationDispatcher implements
AsyncDispatcher, RequestDispatcher
*/
public ApplicationDispatcher
(Wrapper wrapper, String requestURI, String servletPath,
- String pathInfo, String queryString, ServletMapping mapping, String
name) {
+ String pathInfo, String queryString, HttpServletMapping mapping,
String name) {
super();
@@ -268,7 +268,7 @@ final class ApplicationDispatcher implements
AsyncDispatcher, RequestDispatcher
/**
* The mapping for this RequestDispatcher.
*/
- private final ServletMapping mapping;
+ private final HttpServletMapping mapping;
/**
@@ -372,12 +372,12 @@ final class ApplicationDispatcher implements
AsyncDispatcher, RequestDispatcher
hrequest.getPathInfo());
wrequest.setAttribute(RequestDispatcher.FORWARD_QUERY_STRING,
hrequest.getQueryString());
- ServletMapping mapping;
+ HttpServletMapping mapping;
if (hrequest instanceof
org.apache.catalina.servlet4preview.http.HttpServletRequest) {
mapping =
((org.apache.catalina.servlet4preview.http.HttpServletRequest)
- hrequest).getServletMapping();
+ hrequest).getHttpServletMapping();
} else {
- mapping = (new
ApplicationMapping(null)).getServletMapping();
+ mapping = (new
ApplicationMapping(null)).getHttpServletMapping();
}
wrequest.setAttribute(FORWARD_MAPPING, mapping);
}
@@ -627,12 +627,12 @@ final class ApplicationDispatcher implements
AsyncDispatcher, RequestDispatcher
wrequest.setAttribute(Globals.DISPATCHER_TYPE_ATTR,
DispatcherType.ASYNC);
wrequest.setAttribute(Globals.DISPATCHER_REQUEST_PATH_ATTR,
getCombinedPath());
- ServletMapping mapping;
+ HttpServletMapping mapping;
if (hrequest instanceof
org.apache.catalina.servlet4preview.http.HttpServletRequest) {
mapping =
((org.apache.catalina.servlet4preview.http.HttpServletRequest)
- hrequest).getServletMapping();
+ hrequest).getHttpServletMapping();
} else {
- mapping = (new ApplicationMapping(null)).getServletMapping();
+ mapping = (new ApplicationMapping(null)).getHttpServletMapping();
}
wrequest.setAttribute(ASYNC_MAPPING, mapping);
diff --git a/java/org/apache/catalina/core/ApplicationHttpRequest.java
b/java/org/apache/catalina/core/ApplicationHttpRequest.java
index 689e950..3277d9a 100644
--- a/java/org/apache/catalina/core/ApplicationHttpRequest.java
+++ b/java/org/apache/catalina/core/ApplicationHttpRequest.java
@@ -42,8 +42,8 @@ import org.apache.catalina.Globals;
import org.apache.catalina.Manager;
import org.apache.catalina.Session;
import org.apache.catalina.connector.RequestFacade;
+import org.apache.catalina.servlet4preview.http.HttpServletMapping;
import org.apache.catalina.servlet4preview.http.PushBuilder;
-import org.apache.catalina.servlet4preview.http.ServletMapping;
import org.apache.catalina.util.ParameterMap;
import org.apache.catalina.util.URLEncoder;
import org.apache.tomcat.util.buf.B2CConverter;
@@ -194,7 +194,7 @@ class ApplicationHttpRequest
/**
* The mapping for this request.
*/
- private ServletMapping mapping = null;
+ private HttpServletMapping mapping = null;
/**
@@ -529,7 +529,7 @@ class ApplicationHttpRequest
@Override
- public ServletMapping getServletMapping() {
+ public HttpServletMapping getHttpServletMapping() {
return mapping;
}
@@ -721,9 +721,9 @@ class ApplicationHttpRequest
requestURI = request.getRequestURI();
servletPath = request.getServletPath();
if (request instanceof
org.apache.catalina.servlet4preview.http.HttpServletRequest) {
- mapping =
((org.apache.catalina.servlet4preview.http.HttpServletRequest)
request).getServletMapping();
+ mapping =
((org.apache.catalina.servlet4preview.http.HttpServletRequest)
request).getHttpServletMapping();
} else {
- mapping = (new ApplicationMapping(null)).getServletMapping();
+ mapping = (new ApplicationMapping(null)).getHttpServletMapping();
}
}
@@ -783,7 +783,7 @@ class ApplicationHttpRequest
}
- void setMapping(ServletMapping mapping) {
+ void setMapping(HttpServletMapping mapping) {
this.mapping = mapping;
}
diff --git a/java/org/apache/catalina/core/ApplicationMapping.java
b/java/org/apache/catalina/core/ApplicationMapping.java
index e939e67..acf1b37 100644
--- a/java/org/apache/catalina/core/ApplicationMapping.java
+++ b/java/org/apache/catalina/core/ApplicationMapping.java
@@ -17,30 +17,30 @@
package org.apache.catalina.core;
import org.apache.catalina.mapper.MappingData;
+import org.apache.catalina.servlet4preview.http.HttpServletMapping;
import org.apache.catalina.servlet4preview.http.MappingMatch;
-import org.apache.catalina.servlet4preview.http.ServletMapping;
public class ApplicationMapping {
private final MappingData mappingData;
- private volatile ServletMapping mapping = null;
+ private volatile HttpServletMapping mapping = null;
public ApplicationMapping(MappingData mappingData) {
this.mappingData = mappingData;
}
- public ServletMapping getServletMapping() {
+ public HttpServletMapping getHttpServletMapping() {
if (mapping == null) {
- if (mappingData == null) {
- mapping = new MappingImpl("", "", MappingMatch.UNKNOWN, "");
+ String servletName;
+ if (mappingData.wrapper == null) {
+ servletName = "";
+ } else {
+ servletName = mappingData.wrapper.getName();
+ }
+ if (mappingData.matchType == null) {
+ mapping = new MappingImpl("", "", null, servletName);
} else {
- String servletName;
- if (mappingData.wrapper == null) {
- servletName = "";
- } else {
- servletName = mappingData.wrapper.getName();
- }
switch (mappingData.matchType) {
case CONTEXT_ROOT:
mapping = new MappingImpl("", "",
mappingData.matchType, servletName);
@@ -65,13 +65,9 @@ public class ApplicationMapping {
} else {
matchValue =
mappingData.pathInfo.toString().substring(1);
}
- mapping = new MappingImpl(matchValue,
- mappingData.wrapperPath.toString() + "/*",
+ mapping = new MappingImpl(matchValue,
mappingData.wrapperPath.toString() + "/*",
mappingData.matchType, servletName);
break;
- case UNKNOWN:
- mapping = new MappingImpl("", "",
mappingData.matchType, servletName);
- break;
}
}
}
@@ -83,7 +79,7 @@ public class ApplicationMapping {
mapping = null;
}
- private static class MappingImpl implements ServletMapping {
+ private static class MappingImpl implements HttpServletMapping {
private final String matchValue;
private final String pattern;
diff --git a/java/org/apache/catalina/filters/ExpiresFilter.java
b/java/org/apache/catalina/filters/ExpiresFilter.java
index 740944a..9590f81 100644
--- a/java/org/apache/catalina/filters/ExpiresFilter.java
+++ b/java/org/apache/catalina/filters/ExpiresFilter.java
@@ -1296,7 +1296,7 @@ public class ExpiresFilter extends FilterBase {
org.apache.catalina.servlet4preview.http.HttpServletRequest
servlet4Request =
(org.apache.catalina.servlet4preview.http.HttpServletRequest) request;
- if (servlet4Request.getServletMapping().getMappingMatch() ==
MappingMatch.DEFAULT &&
+ if (servlet4Request.getHttpServletMapping().getMappingMatch()
== MappingMatch.DEFAULT &&
response.getStatus() ==
HttpServletResponse.SC_NOT_MODIFIED) {
// Default servlet normally sets the content type but does
not for
// 304 responses. Look it up.
diff --git a/java/org/apache/catalina/mapper/MappingData.java
b/java/org/apache/catalina/mapper/MappingData.java
index 2d2c42d..9e07251 100644
--- a/java/org/apache/catalina/mapper/MappingData.java
+++ b/java/org/apache/catalina/mapper/MappingData.java
@@ -45,7 +45,7 @@ public class MappingData {
public final MessageBytes redirectPath = MessageBytes.newInstance();
// Fields used by ApplicationMapping to implement
javax.servlet.http.HttpServletMapping
- public MappingMatch matchType = MappingMatch.UNKNOWN;
+ public MappingMatch matchType = null;
public void recycle() {
host = null;
@@ -59,6 +59,6 @@ public class MappingData {
wrapperPath.recycle();
pathInfo.recycle();
redirectPath.recycle();
- matchType = MappingMatch.UNKNOWN;
+ matchType = null;
}
}
diff --git a/java/org/apache/catalina/servlet4preview/ServletContext.java
b/java/org/apache/catalina/servlet4preview/ServletContext.java
index c8cb1c7..bddc93f 100644
--- a/java/org/apache/catalina/servlet4preview/ServletContext.java
+++ b/java/org/apache/catalina/servlet4preview/ServletContext.java
@@ -34,8 +34,24 @@ import javax.servlet.ServletRegistration;
public interface ServletContext extends javax.servlet.ServletContext {
/**
+ *
+ * @param jspName The servlet name under which this JSP file should be
+ * registered
+ * @param jspFile The path, relative to the web application root, for the
+ * JSP file to be used for this servlet
+ *
+ * @return a {@link javax.servlet.ServletRegistration.Dynamic} object
+ * that can be used to further configure the servlet
+ *
+ * @since Servlet 4.0
+ */
+ public ServletRegistration.Dynamic addJspFile(String jspName, String
jspFile);
+
+ /**
* Get the default session timeout.
*
+ * @return The current default session timeout in minutes
+ *
* @throws UnsupportedOperationException If called from a
* {@link
ServletContextListener#contextInitialized(ServletContextEvent)}
* method of a {@link ServletContextListener} that was not defined in a
@@ -44,8 +60,6 @@ public interface ServletContext extends
javax.servlet.ServletContext {
* {@link ServletContextListener} defined in a TLD would not be able to
* use this method.
*
- * @return The current default session timeout in minutes
- *
* @since Servlet 4.0
*/
public int getSessionTimeout();
@@ -71,20 +85,6 @@ public interface ServletContext extends
javax.servlet.ServletContext {
public void setSessionTimeout(int sessionTimeout);
/**
- *
- * @param jspName The servlet name under which this JSP file should be
- * registered
- * @param jspFile The path, relative to the web application root, for the
- * JSP file to be used for this servlet
- *
- * @return a {@link javax.servlet.ServletRegistration.Dynamic} object
- * that can be used to further configure the servlet
- *
- * @since Servlet 4.0
- */
- public ServletRegistration.Dynamic addJspFile(String jspName, String
jspFile);
-
- /**
* Get the default character encoding for reading request bodies.
*
* @return The character encoding name or {@code null} if no default has
diff --git a/java/org/apache/catalina/servlet4preview/http/ServletMapping.java
b/java/org/apache/catalina/servlet4preview/http/HttpServletMapping.java
similarity index 89%
rename from java/org/apache/catalina/servlet4preview/http/ServletMapping.java
rename to java/org/apache/catalina/servlet4preview/http/HttpServletMapping.java
index adb70c3..3a14feb 100644
--- a/java/org/apache/catalina/servlet4preview/http/ServletMapping.java
+++ b/java/org/apache/catalina/servlet4preview/http/HttpServletMapping.java
@@ -16,13 +16,15 @@
*/
package org.apache.catalina.servlet4preview.http;
+import javax.servlet.annotation.WebServlet;
+
/**
* Represents how the request from which this object was obtained was mapped to
* the associated servlet.
*
* @since 4.0
*/
-public interface ServletMapping {
+public interface HttpServletMapping {
/**
* @return The value that was matched or the empty String if not known.
@@ -36,16 +38,16 @@ public interface ServletMapping {
String getPattern();
/**
- * @return The type of match ({@link MappingMatch#UNKNOWN} if not known)
- */
- MappingMatch getMappingMatch();
-
- /**
* @return The name of the servlet (as specified in web.xml,
- * {@link javax.servlet.annotation.WebServlet#name()},
+ * {@link WebServlet#name()},
* {@link javax.servlet.ServletContext#addServlet(String, Class)}
or
* one of the other <code>addServlet()</code> methods) that the
* request was mapped to.
*/
String getServletName();
+
+ /**
+ * @return The type of match ({@code null} if not known)
+ */
+ MappingMatch getMappingMatch();
}
diff --git
a/java/org/apache/catalina/servlet4preview/http/HttpServletRequest.java
b/java/org/apache/catalina/servlet4preview/http/HttpServletRequest.java
index ebd1b06..e460762 100644
--- a/java/org/apache/catalina/servlet4preview/http/HttpServletRequest.java
+++ b/java/org/apache/catalina/servlet4preview/http/HttpServletRequest.java
@@ -17,11 +17,11 @@
package org.apache.catalina.servlet4preview.http;
/**
- * Provides early access to some parts of the proposed Servlet 4.0 API.
+ * Provides early access to some parts of the Servlet 4.0 API.
*/
public interface HttpServletRequest extends
javax.servlet.http.HttpServletRequest {
- public ServletMapping getServletMapping();
+ public HttpServletMapping getHttpServletMapping();
/**
* Obtain a builder for generating push requests. {@link PushBuilder}
diff --git
a/java/org/apache/catalina/servlet4preview/http/HttpServletRequestWrapper.java
b/java/org/apache/catalina/servlet4preview/http/HttpServletRequestWrapper.java
index a505043..dc31764 100644
---
a/java/org/apache/catalina/servlet4preview/http/HttpServletRequestWrapper.java
+++
b/java/org/apache/catalina/servlet4preview/http/HttpServletRequestWrapper.java
@@ -18,7 +18,7 @@ package org.apache.catalina.servlet4preview.http;
/**
- * Provides early access to some parts of the proposed Servlet 4.0 API.
+ * Provides early access to some parts of the Servlet 4.0 API.
*/
public class HttpServletRequestWrapper extends
javax.servlet.http.HttpServletRequestWrapper
implements HttpServletRequest {
@@ -40,23 +40,23 @@ public class HttpServletRequestWrapper extends
javax.servlet.http.HttpServletReq
}
/**
- * {@inheritDoc}
- * <p>
* The default behavior of this method is to return
- * {@link HttpServletRequest#getServletMapping()} on the wrapped request
object.
+ * {@link HttpServletRequest#getHttpServletMapping()} on the wrapped
request
+ * object.
*
* @since Servlet 4.0
*/
@Override
- public ServletMapping getServletMapping() {
- return this._getHttpServletRequest().getServletMapping();
+ public HttpServletMapping getHttpServletMapping() {
+ return this._getHttpServletRequest().getHttpServletMapping();
}
/**
* {@inheritDoc}
* <p>
* The default behavior of this method is to return
- * {@link HttpServletRequest#newPushBuilder()} on the wrapped request
object.
+ * {@link HttpServletRequest#newPushBuilder()} on the wrapped request
+ * object.
*
* @since Servlet 4.0
*/
diff --git a/java/org/apache/catalina/servlet4preview/http/MappingMatch.java
b/java/org/apache/catalina/servlet4preview/http/MappingMatch.java
index 14ccd26..3dd54b0 100644
--- a/java/org/apache/catalina/servlet4preview/http/MappingMatch.java
+++ b/java/org/apache/catalina/servlet4preview/http/MappingMatch.java
@@ -27,6 +27,5 @@ public enum MappingMatch {
DEFAULT,
EXACT,
EXTENSION,
- PATH,
- UNKNOWN
+ PATH
}
diff --git a/java/org/apache/catalina/servlet4preview/http/PushBuilder.java
b/java/org/apache/catalina/servlet4preview/http/PushBuilder.java
index f5f6426..2ece00d 100644
--- a/java/org/apache/catalina/servlet4preview/http/PushBuilder.java
+++ b/java/org/apache/catalina/servlet4preview/http/PushBuilder.java
@@ -134,8 +134,8 @@ public interface PushBuilder {
* fields are set to {@code null}:
* <ul>
* <li>{@code path}</li>
- * <li>{@code eTag}</li>
- * <li>{@code lastModified}</li>
+ * <li>conditional request headers ({@code if-none-match} and
+ * {@code if-modified-since})</li>
* </ul>
*
* @throws IllegalStateException If this method is called when {@code path}
diff --git
a/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcherB.java
b/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcherB.java
index 5b31c30..ca74a95 100755
---
a/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcherB.java
+++
b/test/org/apache/catalina/core/TestApplicationContextGetRequestDispatcherB.java
@@ -38,8 +38,8 @@ import org.junit.runners.Parameterized.Parameters;
import org.apache.catalina.Context;
import org.apache.catalina.Wrapper;
+import org.apache.catalina.servlet4preview.http.HttpServletMapping;
import org.apache.catalina.servlet4preview.http.MappingMatch;
-import org.apache.catalina.servlet4preview.http.ServletMapping;
import org.apache.catalina.startup.Tomcat;
import org.apache.catalina.startup.TomcatBaseTest;
import org.apache.tomcat.util.buf.ByteChunk;
@@ -528,8 +528,8 @@ public class TestApplicationContextGetRequestDispatcherB
extends TomcatBaseTest
Assert.assertEquals(expectedServletPath, req.getServletPath());
Assert.assertEquals(expectedPathInfo, req.getPathInfo());
Assert.assertEquals(expectedQueryString, req.getQueryString());
- ServletMapping mapping =
-
((org.apache.catalina.servlet4preview.http.HttpServletRequest)
req).getServletMapping();
+ HttpServletMapping mapping =
+
((org.apache.catalina.servlet4preview.http.HttpServletRequest)
req).getHttpServletMapping();
Assert.assertEquals(expectedMappingMatch,
mapping.getMappingMatch());
Assert.assertEquals(expectedMappingPattern, mapping.getPattern());
Assert.assertEquals(expectedMappingMatchValue,
mapping.getMatchValue());
@@ -548,8 +548,8 @@ public class TestApplicationContextGetRequestDispatcherB
extends TomcatBaseTest
req.getAttribute("javax.servlet." + name +
".path_info"));
Assert.assertEquals(expectedDispatcherQueryString,
req.getAttribute("javax.servlet." + name +
".query_string"));
- ServletMapping dispatcherMapping =
- (ServletMapping)
((org.apache.catalina.servlet4preview.http.HttpServletRequest)
req).getAttribute(
+ HttpServletMapping dispatcherMapping =
+ (HttpServletMapping)
((org.apache.catalina.servlet4preview.http.HttpServletRequest)
req).getAttribute(
"javax.servlet." + name + ".mapping");
Assert.assertNotNull(dispatcherMapping);
Assert.assertEquals(expectedDispatcherMappingMatch,
diff --git a/test/org/apache/catalina/core/TestApplicationMapping.java
b/test/org/apache/catalina/core/TestApplicationMapping.java
index 64f2ad7..2cb9d1b 100644
--- a/test/org/apache/catalina/core/TestApplicationMapping.java
+++ b/test/org/apache/catalina/core/TestApplicationMapping.java
@@ -31,7 +31,7 @@ import org.junit.Test;
import org.apache.catalina.Context;
import org.apache.catalina.Wrapper;
-import org.apache.catalina.servlet4preview.http.ServletMapping;
+import org.apache.catalina.servlet4preview.http.HttpServletMapping;
import org.apache.catalina.startup.Tomcat;
import org.apache.catalina.startup.TomcatBaseTest;
import org.apache.tomcat.util.buf.ByteChunk;
@@ -340,13 +340,13 @@ public class TestApplicationMapping extends
TomcatBaseTest {
throws ServletException, IOException {
resp.setContentType("text/plain;charset=UTF-8");
PrintWriter pw = resp.getWriter();
- ServletMapping mapping =
((org.apache.catalina.servlet4preview.http.HttpServletRequest)
- req).getServletMapping();
+ HttpServletMapping mapping =
((org.apache.catalina.servlet4preview.http.HttpServletRequest)
+ req).getHttpServletMapping();
pw.println("MatchValue=[" + mapping.getMatchValue() + "]");
pw.println("Pattern=[" + mapping.getPattern() + "]");
pw.println("MatchType=[" + mapping.getMappingMatch() + "]");
pw.println("ServletName=[" + mapping.getServletName() + "]");
- ServletMapping includeMapping = (ServletMapping) req.getAttribute(
+ HttpServletMapping includeMapping = (HttpServletMapping)
req.getAttribute(
ApplicationDispatcher.INCLUDE_MAPPING);
if (includeMapping != null) {
pw.println("IncludeMatchValue=[" +
includeMapping.getMatchValue() + "]");
@@ -355,7 +355,7 @@ public class TestApplicationMapping extends TomcatBaseTest {
pw.println("IncludeServletName=[" +
includeMapping.getServletName() + "]");
}
- ServletMapping forwardMapping = (ServletMapping) req.getAttribute(
+ HttpServletMapping forwardMapping = (HttpServletMapping)
req.getAttribute(
ApplicationDispatcher.FORWARD_MAPPING);
if (forwardMapping != null) {
pw.println("ForwardMatchValue=[" +
forwardMapping.getMatchValue() + "]");
@@ -363,7 +363,7 @@ public class TestApplicationMapping extends TomcatBaseTest {
pw.println("ForwardMatchType=[" +
forwardMapping.getMappingMatch() + "]");
pw.println("ForwardServletName=[" +
forwardMapping.getServletName() + "]");
}
- ServletMapping asyncMapping = (ServletMapping) req.getAttribute(
+ HttpServletMapping asyncMapping = (HttpServletMapping)
req.getAttribute(
ApplicationDispatcher.ASYNC_MAPPING);
if (asyncMapping != null) {
pw.println("AsyncMatchValue=[" + asyncMapping.getMatchValue()
+ "]");
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index c4bb27d..a127cf8 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -80,6 +80,11 @@
the filter processes the response if the Default Servlet sets a 304
(Not
Found) status code. (markt)
</fix>
+ <fix>
+ Update the Servlet 4 preview API to reflect changes made to the API in
+ the final release. Note that this preview API has deprecated for over a
+ year and may be removed as soon as the next 8.5.x release. (markt)
+ </fix>
</changelog>
</subsection>
<subsection name="Coyote">
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]