It can be mapped to sub-paths, however in all cases resources are served
from the web appplication resource root using the full path from the root
of the web application context.
e.g. given a web application structure:

/context
/images
tomcat2.jpg
/static
/images
tomcat.jpg

... and a servlet mapping that maps only /static/* to the default servlet:

checkIfHeaders(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
ResourceAttributes resourceAttributes)
Check if the conditions specified in the optional If headers are
satisfied.

copy(CacheEntry cacheEntry,
java.io.InputStream is,
java.io.PrintWriter writer)
Copy the contents of the specified input stream to the specified
output stream, and ensure that both streams are closed before returning
(even in the face of an exception).

protected void

copy(CacheEntry cacheEntry,
java.io.InputStream is,
javax.servlet.ServletOutputStream ostream)
Copy the contents of the specified input stream to the specified
output stream, and ensure that both streams are closed before returning
(even in the face of an exception).

protected void

copy(CacheEntry cacheEntry,
java.io.PrintWriter writer,
DefaultServlet.Range range)
Copy the contents of the specified input stream to the specified
output stream, and ensure that both streams are closed before returning
(even in the face of an exception).

protected void

copy(CacheEntry cacheEntry,
java.io.PrintWriter writer,
java.util.Iterator ranges,
java.lang.String contentType)
Copy the contents of the specified input stream to the specified
output stream, and ensure that both streams are closed before returning
(even in the face of an exception).

protected void

copy(CacheEntry cacheEntry,
javax.servlet.ServletOutputStream ostream,
DefaultServlet.Range range)
Copy the contents of the specified input stream to the specified
output stream, and ensure that both streams are closed before returning
(even in the face of an exception).

protected void

copy(CacheEntry cacheEntry,
javax.servlet.ServletOutputStream ostream,
java.util.Iterator ranges,
java.lang.String contentType)
Copy the contents of the specified input stream to the specified
output stream, and ensure that both streams are closed before returning
(even in the face of an exception).

protected java.io.IOException

copyRange(java.io.InputStream istream,
javax.servlet.ServletOutputStream ostream)
Copy the contents of the specified input stream to the specified
output stream, and ensure that both streams are closed before returning
(even in the face of an exception).

protected java.io.IOException

copyRange(java.io.InputStream istream,
javax.servlet.ServletOutputStream ostream,
long start,
long end)
Copy the contents of the specified input stream to the specified
output stream, and ensure that both streams are closed before returning
(even in the face of an exception).

protected java.io.IOException

copyRange(java.io.Reader reader,
java.io.PrintWriter writer)
Copy the contents of the specified input stream to the specified
output stream, and ensure that both streams are closed before returning
(even in the face of an exception).

protected java.io.IOException

copyRange(java.io.Reader reader,
java.io.PrintWriter writer,
long start,
long end)
Copy the contents of the specified input stream to the specified
output stream, and ensure that both streams are closed before returning
(even in the face of an exception).