Package org.dlese.dpc.webapps.tools
Class GeneralServletTools
java.lang.Object
org.dlese.dpc.webapps.tools.GeneralServletTools
This class contains utility methods useful in servlet-based applications.
- Version:
- $Id: GeneralServletTools.java,v 1.9 2010/05/03 05:24:03 jweather Exp $
- Author:
- John Weatherley
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic final StringgetAbsolutePath(String fname, String docRoot) Gets the absolute path to a given file or directory.static final StringgetAbsolutePath(String fname, ServletContext servletContext) Gets the absolute path to a given file or directory.static StringgetContextPath(ServletContext servletContext) Returns the context path for the webapp, for example '/dds' or '/' for the root context.static StringGets the URL that refers to the current server and servlet context, for example "http://www.dlese.org/dds" or "http://domain.org:8080/context" or or "http://localhost:8080/context".static StringgetQueryString(HttpServletRequest request) Gets the query string supplied in the request, for example "q=oceaninvalid input: '&s'=0invalid input: '&n'=10".static StringReturns the part of this request's URL from the protocol name up to the query string in the first line of the HTTP request.static StringBufferReconstructs the URL the client used to make the request, even if the page has been forwarded for example via struts (action.do).static StringGets the URL that refers to the current server (scheme, hostname and port), for example "http://www.dlese.org" or "http://host:8080" or "http://localhost:8080".
-
Constructor Details
-
GeneralServletTools
public GeneralServletTools()
-
-
Method Details
-
getContextPath
Returns the context path for the webapp, for example '/dds' or '/' for the root context.- Parameters:
servletContext- The ServletContext object for the webapp- Returns:
- The context path for the webapp, for example '/dds' or '/', or null if not able to determine
-
getServerUrl
Gets the URL that refers to the current server (scheme, hostname and port), for example "http://www.dlese.org" or "http://host:8080" or "http://localhost:8080".- Parameters:
req- The request.- Returns:
- The URL to the server.
-
getContextUrl
Gets the URL that refers to the current server and servlet context, for example "http://www.dlese.org/dds" or "http://domain.org:8080/context" or or "http://localhost:8080/context".- Parameters:
req- The request.- Returns:
- The URL to the context.
-
getQueryString
Gets the query string supplied in the request, for example "q=oceaninvalid input: '&s'=0invalid input: '&n'=10". This is the same asHttpServletRequest.getQueryString(), but works even if the request has been forwarded.- Parameters:
request- The request- Returns:
- The query string, for example q=oceaninvalid input: '&s'=0invalid input: '&n'=10
-
getRequestURL
Reconstructs the URL the client used to make the request, even if the page has been forwarded for example via struts (action.do). The returned URL contains a protocol, server name, port number, and server path, but it does not include query string parameters.- Parameters:
req- The request.- Returns:
- The URL the client used to make the request.
-
getRequestURI
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. Works properly, even if the page has been forwarded for example via struts (action.do).- Parameters:
req- The request.- Returns:
- The URI the client used to make the request.
-
getAbsolutePath
public static final String getAbsolutePath(String fname, ServletContext servletContext) throws ServletException Gets the absolute path to a given file or directory. Assumes the path passed in is eithr already absolute (has leading slash) or is relative to the context root (no leading slash). If the string passed in does not begin with a slash ("/"), then the string is converted. For example, an init parameter to a config file might be passed in as "WEB-INF/conf/serverParms.conf" and this method will return the corresponding absolute path "/export/devel/tomcat/webapps/myApp/WEB-INF/conf/serverParms.conf."If the string that is passed in already begings with "/", nothing is done.
Note: the HttpServlet init() (super.init()) method must be called prior to using this method, else a ServletException is thrown.
- Parameters:
fname- An absolute or relative file name or path (relative the the context root).servletContext- The HttpServletContext of the appliection.- Returns:
- The absolute path to the given file or path.
- Throws:
ServletException- An exception related to this servlet
-
getAbsolutePath
Gets the absolute path to a given file or directory. Assumes the path passed in is eithr already absolute (has leading slash) or is relative to the context root (no leading slash). If the string passed in does not begin with a slash ("/"), then the string is converted. For example, an init parameter to a config file might be passed in as "WEB-INF/conf/serverParms.conf" and this method will return the corresponding absolute path "/export/devel/tomcat/webapps/myApp/WEB-INF/conf/serverParms.conf."If the string that is passed in already begings with "/", nothing is done.
Note: the super.init() method must be called prior to using this method, else a ServletException is thrown.
- Parameters:
fname- An absolute or relative file name or path (relative the the context root).docRoot- The context document root as obtained by calling getServletContext().getRealPath("/");- Returns:
- The absolute path to the given file or path.
-