| |
|
| javax.servlet.ServletContext
ServletContext | public interface ServletContext (Code) | | Defines a set of methods that a servlet uses to communicate with its
servlet container, for example, to get the MIME type of a file, dispatch
requests, or write to a log file.
There is one context per "web application" per Java Virtual Machine. (A
"web application" is a collection of servlets and content installed under a
specific subset of the server's URL namespace such as /catalog
and possibly installed via a .war file.)
In the case of a web
application marked "distributed" in its deployment descriptor, there will
be one context instance for each virtual machine. In this situation, the
context cannot be used as a location to share global information (because
the information won't be truly global). Use an external resource like
a database instead.
The ServletContext object is contained within
the
ServletConfig object, which the Web server provides the
servlet when the servlet is initialized.
author: Various version: $Version$ See Also: Servlet.getServletConfig See Also: ServletConfig.getServletContext |
Method Summary | |
public Object | getAttribute(String name) Returns the servlet container attribute with the given name,
or null if there is no attribute by that name.
An attribute allows a servlet container to give the
servlet additional information not
already provided by this interface. | public Enumeration | getAttributeNames() Returns an Enumeration containing the
attribute names available
within this servlet context. | public ServletContext | getContext(String uripath) Returns a ServletContext object that
corresponds to a specified URL on the server. | public String | getInitParameter(String name) Returns a String containing the value of the named
context-wide initialization parameter, or null if the
parameter does not exist.
This method can make available configuration information useful
to an entire "web application". | public Enumeration | getInitParameterNames() Returns the names of the context's initialization parameters as an
Enumeration of String objects, or an
empty Enumeration if the context has no initialization
parameters. | public int | getMajorVersion() Returns the major version of the Java Servlet API that this
servlet container supports. | public String | getMimeType(String file) Returns the MIME type of the specified file, or null if
the MIME type is not known. | public int | getMinorVersion() Returns the minor version of the Servlet API that this
servlet container supports. | public RequestDispatcher | getNamedDispatcher(String name) Returns a
RequestDispatcher object that acts
as a wrapper for the named servlet. | public String | getRealPath(String path) Returns a String containing the real path
for a given virtual path. | public RequestDispatcher | getRequestDispatcher(String path) Returns a
RequestDispatcher object that acts
as a wrapper for the resource located at the given path.
A RequestDispatcher object can be used to forward
a request to the resource or to include the resource in a response.
The resource can be dynamic or static.
The pathname must begin with a "/" and is interpreted as relative
to the current context root. | public URL | getResource(String path) Returns a URL to the resource that is mapped to a specified
path. | public InputStream | getResourceAsStream(String path) Returns the resource located at the named path as
an InputStream object.
The data in the InputStream can be
of any type or length. | public Set | getResourcePaths(String path) Returns a directory-like listing of all the paths to resources within the web application whose longest sub-path
matches the supplied path argument. | public String | getServerInfo() Returns the name and version of the servlet container on which
the servlet is running. | public Servlet | getServlet(String name) | public String | getServletContextName() Returns the name of this web application corresponding to this ServletContext as specified in the deployment
descriptor for this web application by the display-name element. | public Enumeration | getServletNames() | public Enumeration | getServlets() | public void | log(String msg) Writes the specified message to a servlet log file, usually
an event log. | public void | log(Exception exception, String msg) | public void | log(String message, Throwable throwable) Writes an explanatory message and a stack trace
for a given Throwable exception
to the servlet log file. | public void | removeAttribute(String name) Removes the attribute with the given name from
the servlet context. | public void | setAttribute(String name, Object object) Binds an object to a given attribute name in this servlet context. |
getAttribute | public Object getAttribute(String name)(Code) | | Returns the servlet container attribute with the given name,
or null if there is no attribute by that name.
An attribute allows a servlet container to give the
servlet additional information not
already provided by this interface. See your
server documentation for information about its attributes.
A list of supported attributes can be retrieved using
getAttributeNames .
The attribute is returned as a java.lang.Object
or some subclass.
Attribute names should follow the same convention as package
names. The Java Servlet API specification reserves names
matching java.* , javax.* ,
and sun.* .
Parameters: name - a String specifying the name of the attribute an Object containing the value of the attribute, or null if no attribute exists matching the givenname See Also: ServletContext.getAttributeNames |
getContext | public ServletContext getContext(String uripath)(Code) | | Returns a ServletContext object that
corresponds to a specified URL on the server.
This method allows servlets to gain
access to the context for various parts of the server, and as
needed obtain
RequestDispatcher objects from the context.
The given path must be begin with "/", is interpreted relative
to the server's document root and is matched against the context roots of
other web applications hosted on this container.
In a security conscious environment, the servlet container may
return null for a given URL.
Parameters: uripath - a String specifying the context path ofanother web application in the container. the ServletContext object thatcorresponds to the named URL, or null if eithernone exists or the container wishes to restrict this access. See Also: RequestDispatcher |
getInitParameter | public String getInitParameter(String name)(Code) | | Returns a String containing the value of the named
context-wide initialization parameter, or null if the
parameter does not exist.
This method can make available configuration information useful
to an entire "web application". For example, it can provide a
webmaster's email address or the name of a system that holds
critical data.
Parameters: name - a String containing the name of theparameter whose value is requested a String containing at least the servlet container name and version number See Also: ServletConfig.getInitParameter |
getInitParameterNames | public Enumeration getInitParameterNames()(Code) | | Returns the names of the context's initialization parameters as an
Enumeration of String objects, or an
empty Enumeration if the context has no initialization
parameters.
an Enumeration of String objects containing the names of the context'sinitialization parameters See Also: ServletConfig.getInitParameter |
getMajorVersion | public int getMajorVersion()(Code) | | Returns the major version of the Java Servlet API that this
servlet container supports. All implementations that comply
with Version 2.4 must have this method
return the integer 2.
2 |
getMimeType | public String getMimeType(String file)(Code) | | Returns the MIME type of the specified file, or null if
the MIME type is not known. The MIME type is determined
by the configuration of the servlet container, and may be specified
in a web application deployment descriptor. Common MIME
types are "text/html" and "image/gif" .
Parameters: file - a String specifying the nameof a file a String specifying the file's MIME type |
getMinorVersion | public int getMinorVersion()(Code) | | Returns the minor version of the Servlet API that this
servlet container supports. All implementations that comply
with Version 2.4 must have this method
return the integer 4.
4 |
getNamedDispatcher | public RequestDispatcher getNamedDispatcher(String name)(Code) | | Returns a
RequestDispatcher object that acts
as a wrapper for the named servlet.
Servlets (and JSP pages also) may be given names via server
administration or via a web application deployment descriptor.
A servlet instance can determine its name using
ServletConfig.getServletName .
This method returns null if the
ServletContext
cannot return a RequestDispatcher for any reason.
Parameters: name - a String specifying the nameof a servlet to wrap a RequestDispatcher objectthat acts as a wrapper for the named servlet,or null if the ServletContext cannot return a RequestDispatcher See Also: RequestDispatcher See Also: ServletContext.getContext See Also: ServletConfig.getServletName |
getRealPath | public String getRealPath(String path)(Code) | | Returns a String containing the real path
for a given virtual path. For example, the path "/index.html"
returns the absolute file path on the server's filesystem would be
served by a request for "http://host/contextPath/index.html",
where contextPath is the context path of this ServletContext..
The real path returned will be in a form
appropriate to the computer and operating system on
which the servlet container is running, including the
proper path separators. This method returns null
if the servlet container cannot translate the virtual path
to a real path for any reason (such as when the content is
being made available from a .war archive).
Parameters: path - a String specifying a virtual path a String specifying the real path,or null if the translation cannot be performed |
getRequestDispatcher | public RequestDispatcher getRequestDispatcher(String path)(Code) | | Returns a
RequestDispatcher object that acts
as a wrapper for the resource located at the given path.
A RequestDispatcher object can be used to forward
a request to the resource or to include the resource in a response.
The resource can be dynamic or static.
The pathname must begin with a "/" and is interpreted as relative
to the current context root. Use getContext to obtain
a RequestDispatcher for resources in foreign contexts.
This method returns null if the ServletContext
cannot return a RequestDispatcher .
Parameters: path - a String specifying the pathnameto the resource a RequestDispatcher objectthat acts as a wrapper for the resourceat the specified path, or null if the ServletContext cannot returna RequestDispatcher See Also: RequestDispatcher See Also: ServletContext.getContext |
getResource | public URL getResource(String path) throws MalformedURLException(Code) | | Returns a URL to the resource that is mapped to a specified
path. The path must begin with a "/" and is interpreted
as relative to the current context root.
This method allows the servlet container to make a resource
available to servlets from any source. Resources
can be located on a local or remote
file system, in a database, or in a .war file.
The servlet container must implement the URL handlers
and URLConnection objects that are necessary
to access the resource.
This method returns null
if no resource is mapped to the pathname.
Some containers may allow writing to the URL returned by
this method using the methods of the URL class.
The resource content is returned directly, so be aware that
requesting a .jsp page returns the JSP source code.
Use a RequestDispatcher instead to include results of
an execution.
This method has a different purpose than
java.lang.Class.getResource ,
which looks up resources based on a class loader. This
method does not use class loaders.
Parameters: path - a String specifyingthe path to the resource the resource located at the named path,or null if there is no resourceat that path exception: MalformedURLException - if the pathname is not given in the correct form |
getResourceAsStream | public InputStream getResourceAsStream(String path)(Code) | | Returns the resource located at the named path as
an InputStream object.
The data in the InputStream can be
of any type or length. The path must be specified according
to the rules given in getResource .
This method returns null if no resource exists at
the specified path.
Meta-information such as content length and content type
that is available via getResource
method is lost when using this method.
The servlet container must implement the URL handlers
and URLConnection objects necessary to access
the resource.
This method is different from
java.lang.Class.getResourceAsStream ,
which uses a class loader. This method allows servlet containers
to make a resource available
to a servlet from any location, without using a class loader.
Parameters: path - a String specifying the pathto the resource the InputStream returned to the servlet, or null if no resourceexists at the specified path |
getResourcePaths | public Set getResourcePaths(String path)(Code) | | Returns a directory-like listing of all the paths to resources within the web application whose longest sub-path
matches the supplied path argument. Paths indicating subdirectory paths end with a '/'. The returned paths are all
relative to the root of the web application and have a leading '/'. For example, for a web application
containing
/welcome.html
/catalog/index.html
/catalog/products.html
/catalog/offers/books.html
/catalog/offers/music.html
/customer/login.jsp
/WEB-INF/web.xml
/WEB-INF/classes/com.acme.OrderServlet.class,
getResourcePaths("/") returns {"/welcome.html", "/catalog/", "/customer/", "/WEB-INF/"}
getResourcePaths("/catalog/") returns {"/catalog/index.html", "/catalog/products.html", "/catalog/offers/"}.
Parameters: path - the partial path used to match the resources,which must start with a / a Set containing the directory listing, or null if there are no resources in the web application whose pathbegins with the supplied path. since: Servlet 2.3 |
getServerInfo | public String getServerInfo()(Code) | | Returns the name and version of the servlet container on which
the servlet is running.
The form of the returned string is
servername/versionnumber.
For example, the JavaServer Web Development Kit may return the string
JavaServer Web Dev Kit/1.0 .
The servlet container may return other optional information
after the primary string in parentheses, for example,
JavaServer Web Dev Kit/1.0 (JDK 1.1.6; Windows NT 4.0 x86) .
a String containing at least the servlet container name and version number |
getServletContextName | public String getServletContextName()(Code) | | Returns the name of this web application corresponding to this ServletContext as specified in the deployment
descriptor for this web application by the display-name element.
The name of the web application or null if no name has been declared in the deployment descriptor. since: Servlet 2.3 |
log | public void log(String msg)(Code) | | Writes the specified message to a servlet log file, usually
an event log. The name and type of the servlet log file is
specific to the servlet container.
Parameters: msg - a String specifying the message to be written to the log file |
log | public void log(String message, Throwable throwable)(Code) | | Writes an explanatory message and a stack trace
for a given Throwable exception
to the servlet log file. The name and type of the servlet log
file is specific to the servlet container, usually an event log.
Parameters: message - a String that describes the error or exception Parameters: throwable - the Throwable error or exception |
removeAttribute | public void removeAttribute(String name)(Code) | | Removes the attribute with the given name from
the servlet context. After removal, subsequent calls to
ServletContext.getAttribute to retrieve the attribute's value
will return null .
If listeners are configured on the ServletContext the
container notifies them accordingly.
Parameters: name - a String specifying the name of the attribute to be removed |
setAttribute | public void setAttribute(String name, Object object)(Code) | | Binds an object to a given attribute name in this servlet context. If
the name specified is already used for an attribute, this
method will replace the attribute with the new to the new attribute.
If listeners are configured on the ServletContext the
container notifies them accordingly.
If a null value is passed, the effect is the same as calling
removeAttribute() .
Attribute names should follow the same convention as package
names. The Java Servlet API specification reserves names
matching java.* , javax.* , and
sun.* .
Parameters: name - a String specifying the name of the attribute Parameters: object - an Object representing theattribute to be bound |
|
|
|