org.apache.catalina.util
Class CGIProcessEnvironment
public class CGIProcessEnvironment
Encapsulates the CGI Process' environment and rules to derive
that environment from the servlet container and request information.
Version:
- Martin Dengler [root@martindengler.com]
- Tomcat 4.0
CGIProcessEnvironment(HttpServletRequest req, ServletContext context)- Creates a ProcessEnvironment and derives the necessary environment,
working directory, command, etc.
|
CGIProcessEnvironment(HttpServletRequest req, ServletContext context, String cgiPathPrefix)- Creates a ProcessEnvironment and derives the necessary environment,
working directory, command, etc.
|
CGIProcessEnvironment(HttpServletRequest req, ServletContext context, String cgiPathPrefix, int debug)- Creates a ProcessEnvironment and derives the necessary environment,
working directory, command, etc.
|
CGIProcessEnvironment(HttpServletRequest req, ServletContext context, int debug)- Creates a ProcessEnvironment and derives the necessary environment,
working directory, command, etc.
|
protected boolean | deriveProcessEnvironment(HttpServletRequest req)- Constructs the CGI environment to be supplied to the invoked CGI
script; relies heavliy on Servlet API methods and findCGI
|
protected String[] | findCGI(String pathInfo, String webAppRootDir, String contextPath, String servletPath, String cgiPathPrefix)- Resolves core information about the cgi script.
|
Hashtable | getParameters()- Gets process' derived query parameters
|
String | toString()- Print important CGI environment information in an
easy-to-read HTML table
|
blanksToString, deriveProcessEnvironment, getCommand, getContext, getContextPath, getEnvironment, getServletPath, getWebAppRootDir, getWorkingDirectory, isValid, log, nullsToBlanks, nullsToString, setCommand, setEnvironment, setupFromContext, setupFromRequest, toString |
CGIProcessEnvironment
public CGIProcessEnvironment(HttpServletRequest req,
ServletContext context) Creates a ProcessEnvironment and derives the necessary environment,
working directory, command, etc. The cgi path prefix is initialized
to "" (the empty string).
req - HttpServletRequest for information provided by
the Servlet APIcontext - ServletContext for information provided by
the Servlet API
CGIProcessEnvironment
public CGIProcessEnvironment(HttpServletRequest req,
ServletContext context,
String cgiPathPrefix) Creates a ProcessEnvironment and derives the necessary environment,
working directory, command, etc.
req - HttpServletRequest for information provided by
the Servlet APIcontext - ServletContext for information provided by
the Servlet APIcgiPathPrefix - subdirectory of webAppRootDir below which the
web app's CGIs may be stored; can be null or "".
CGIProcessEnvironment
public CGIProcessEnvironment(HttpServletRequest req,
ServletContext context,
String cgiPathPrefix,
int debug) Creates a ProcessEnvironment and derives the necessary environment,
working directory, command, etc.
req - HttpServletRequest for information provided by
the Servlet APIcontext - ServletContext for information provided by
the Servlet APIcgiPathPrefix - subdirectory of webAppRootDir below which the
web app's CGIs may be stored; can be null or "".debug - int debug level (0 == none, 6 == lots)
CGIProcessEnvironment
public CGIProcessEnvironment(HttpServletRequest req,
ServletContext context,
int debug) Creates a ProcessEnvironment and derives the necessary environment,
working directory, command, etc.
req - HttpServletRequest for information provided by
the Servlet APIcontext - ServletContext for information provided by
the Servlet APIdebug - int debug level (0 == none, 6 == lots)
deriveProcessEnvironment
protected boolean deriveProcessEnvironment(HttpServletRequest req)
Constructs the CGI environment to be supplied to the invoked CGI
script; relies heavliy on Servlet API methods and findCGI
- deriveProcessEnvironment in interface ProcessEnvironment
req - request associated with the CGI invokation
- true if environment was set OK, false if there was a problem
and no environment was set
findCGI
protected String[] findCGI(String pathInfo,
String webAppRootDir,
String contextPath,
String servletPath,
String cgiPathPrefix) Resolves core information about the cgi script.
Example URI:
/servlet/cgigateway/dir1/realCGIscript/pathinfo1
- path = $CATALINA_HOME/mywebapp/dir1/realCGIscript
- scriptName = /servlet/cgigateway/dir1/realCGIscript
- cgiName = /dir1/realCGIscript
- name = realCGIscript
CGI search algorithm: search the real path below
<my-webapp-root> and find the first non-directory in
the getPathTranslated("/"), reading/searching from left-to-right.
The CGI search path will start at
webAppRootDir + File.separator + cgiPathPrefix (or webAppRootDir
alone if cgiPathPrefix is null).
cgiPathPrefix is usually set by the calling servlet to the servlet's
cgiPathPrefix init parameter
pathInfo - String from HttpServletRequest.getPathInfo()webAppRootDir - String from context.getRealPath("/")contextPath - String as from HttpServletRequest.getContextPath()servletPath - String as from HttpServletRequest.getServletPath()cgiPathPrefix - subdirectory of webAppRootDir below which the
web app's CGIs may be stored; can be null.
-
path - full file-system path to valid cgi
script, or null if no cgi was found
-
scriptName - CGI variable SCRIPT_NAME; the full
URL path to valid cgi script or
null if no cgi was found
-
cgiName - servlet pathInfo fragment
corresponding to the cgi script
itself, or null if not found
-
name - simple name (no directories) of
the cgi script, or null if no cgi
was found
- Martin Dengler [root@martindengler.com]
- Tomcat 4.0
getParameters
public Hashtable getParameters()
Gets process' derived query parameters
- process' query parameters
toString
public String toString()
Print important CGI environment information in an
easy-to-read HTML table
- toString in interface ProcessEnvironment
- HTML string containing CGI environment info
Copyright B) 2000-2003 Apache Software Foundation. All Rights Reserved.