public interface HttpServletMapping
Allows runtime discovery of the manner in which the HttpServlet
for the current HttpServletRequest
was invoked.
Invoking any of the methods must not block the caller. The
implementation must be thread safe. Instances are immutable and are
returned from HttpServletRequest.getHttpServletMapping()
.
Following are some illustrative examples for various combinations of mappings. Consider the following Servlet declaration:
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/MyServlet</url-pattern>
<url-pattern>""</url-pattern>
<url-pattern>*.extension</url-pattern>
<url-pattern>/path/*</url-pattern>
</servlet-mapping>
The expected values of the properties for various incoming URI
path values are as shown in this table. The servletName
column is omitted as its value is always MyServlet
.
URI Path (in quotes) | matchValue | pattern | mappingMatch |
---|---|---|---|
"" | "" | "" | CONTEXT_ROOT |
"/index.html" | "" | / | DEFAULT |
"/MyServlet" | MyServlet | /MyServlet | EXACT |
"/foo.extension" | foo | *.extension | EXTENSION |
"/path/foo" | foo | /path/* | PATH |
Modifier and Type | Method and Description |
---|---|
MappingMatch |
getMappingMatch()
Return the
MappingMatch for this
instance |
java.lang.String |
getMatchValue()
Return the portion of the URI path that caused this request to
be matched.
|
java.lang.String |
getPattern()
Return the String representation for the
url-pattern
for this mapping. |
java.lang.String |
getServletName()
Return the String representation for the
servlet-name
for this mapping. |
java.lang.String getMatchValue()
Return the portion of the URI path that caused this request to
be matched. If the getMappingMatch
value is CONTEXT_ROOT
or DEFAULT
, this method must return the
empty string. If the getMappingMatch
value is EXACT
, this method must return the portion of the path that
matched the servlet, omitting any leading slash. If the getMappingMatch
value is EXTENSION
or PATH
, this
method must return the value that matched the '*'. See the class
javadoc for examples.
java.lang.String getPattern()
Return the String representation for the url-pattern
for this mapping. If the getMappingMatch
value is CONTEXT_ROOT
or DEFAULT
, this method must return the
empty string. If the getMappingMatch
value is EXTENSION
, this method must return the pattern, without any
leading slash. Otherwise, this method returns the pattern
exactly as specified in the descriptor or Java configuration.
url-pattern
for this mapping.java.lang.String getServletName()
Return the String representation for the servlet-name
for this mapping. If the Servlet providing the response is the
default servlet, the return from this method is the name of the
defautl servlet, which is container specific.
servlet-name
for this mapping.MappingMatch getMappingMatch()
Return the MappingMatch
for this
instance
MappingMatch
for this instance.