Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## oracle.portal.provider.v1.http
Class Servlet20RequestWrapper

    java.lang.Object
      |
      +--oracle.portal.provider.v1.http.Servlet20RequestWrapper

public class Servlet20RequestWrapper
extends java.lang.Object
implements javax.servlet.http.HttpServletRequest

Wraps the servlet Request so we can "forward" requests to a servlet/jsp and respond to that "forwarded" servlet with the proper paths.

Constructor Summary
`Servlet20RequestWrapper(javax.servlet.http.HttpServletRequest sr)` Constructs this `Servlet20RequestWrapper` object.
`Servlet20RequestWrapper(PortletRenderRequest pr, java.lang.String vp, java.lang.String rp)` Constructs this `Servlet20RequestWrapper` object.
`Servlet20RequestWrapper(PortletRenderRequest pr, java.lang.String vp, java.lang.String rp, java.util.Hashtable parameters)` Constructs this `Servlet20RequestWrapper` object by including a local parameter store.

Method Summary
`void` | `addLocalParameter(java.lang.String name, java.lang.String value)` Add a 'local parameter' to this request.
`java.lang.Object` | `getAttribute(java.lang.String name)` Returns the value of the named attribute of the request, or null if the attribute does not exist.
`java.lang.String` | `getAuthType()` Gets the authentication scheme of this request.
`java.lang.String` | `getCharacterEncoding()` Returns the character set encoding for the input of this request.
`int` | `getContentLength()` Returns the size of the request entity data, or -1 if not known.
`java.lang.String` | `getContentType()` Returns the Internet Media Type of the request entity data, or null if not known.
`javax.servlet.http.Cookie[]` | `getCookies()` Gets the array of cookies found in this request.
`long` | `getDateHeader(java.lang.String name)` Gets the value of the requested date header field of this request.
`java.lang.String` | `getHeader(java.lang.String name)` Gets the value of the requested header field of this request.
`java.util.Enumeration` | `getHeaderNames()` Gets the header names for this request.
`javax.servlet.ServletInputStream` | `getInputStream()` Returns an input stream for reading binary data in the request body.
`int` | `getIntHeader(java.lang.String name)` Gets the value of the specified integer header field of this request.
`java.lang.String` | `getMethod()` Gets the HTTP method (for example, GET, POST, PUT) with which this request was made.
`java.lang.String` | `getParameter(java.lang.String name)` Returns a string containing the lone value of the specified parameter, or null if the parameter does not exist.
`java.util.Enumeration` | `getParameterNames()` Returns the parameter names for this request, plus the parameter names in the local store, as an enumeration of strings, or an empty enumeration if there are no parameters or the input stream is empty.
`java.lang.String[]` | `getParameterValues(java.lang.String name)` Returns the values of the specified parameter for the request, including those values found in the local store, as an array of strings, or null if the named parameter does not exist.
`java.lang.String` | `getPathInfo()` Gets any optional extra path information following the servlet path of this request's URI, but immediately preceding its query string.
`java.lang.String` | `getPathTranslated()` Gets any optional extra path information following the servlet path of this request's URI, but immediately preceding its query string, and translates it to a real path.
`java.lang.String` | `getProtocol()` Returns the protocol and version of the request as a string of the form `<protocol>/<major version>.<minor version>`.
`java.lang.String` | `getQueryString()` Gets any query string that is part of the HTTP request URI.
`java.io.BufferedReader` | `getReader()` Returns a buffered reader for reading text in the request body.
`java.lang.String` | `getRealPath(java.lang.String path)` Applies alias rules to the specified virtual path and returns the corresponding real path, or null if the translation can not be performed for any reason.
`java.lang.String` | `getRemoteAddr()` Returns the IP address of the agent that sent the request.
`java.lang.String` | `getRemoteHost()` Returns the fully qualified host name of the agent that sent the request.
`java.lang.String` | `getRemoteUser()` Gets the name of the user making this request.
`java.lang.String` | `getRequestedSessionId()` Gets the session id specified with this request.
`java.lang.String` | `getRequestURI()` Gets, from the first line of the HTTP request, the part of this request's URI that is to the left of any query string.
`java.lang.String` | `getScheme()` Returns the scheme of the URL used in this request, for example "http", "https", or "ftp".
`java.lang.String` | `getServerName()` Returns the host name of the server that received the request.
`int` | `getServerPort()` Returns the port number on which this request was received.
`java.lang.String` | `getServletPath()` Gets the part of this request's URI that refers to the servlet being invoked.
`javax.servlet.http.HttpSession` | `getSession(boolean create)` Gets the current valid session associated with this request, if create is false or, if necessary, creates a new session for the request, if create is true.
`java.lang.String` | `getURLCharSet()` Returns the character set that was used when the parameters of the request were encoded.
`boolean` | `isRequestedSessionIdFromCookie()` Checks whether the session id specified by this request came in as a cookie.
`boolean` | `isRequestedSessionIdFromUrl()` Checks whether the session id specified by this request came in as part of the URL.
`boolean` | `isRequestedSessionIdValid()` Checks whether this request is associated with a session that is valid in the current session context.
`void` | `setPortletRenderRequest(PortletRenderRequest pr)` Sets a `PortletRenderRequest` whose attributes should be combined with the attributes of the 'wrapped' `HttpServletRequest`.
`void` | `setRealPath(java.lang.String rp)` Overrides the file system relative real path for this request.
`void` | `setURLCharSet(java.lang.String charset)` set URL Character Set.
`void` | `setVirtualPath(java.lang.String vp)` Overrides the server relative virtual path for this request.

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Servlet20RequestWrapper

    public Servlet20RequestWrapper(javax.servlet.http.HttpServletRequest sr)

  Constructs this `Servlet20RequestWrapper` object.
  Parameters:
    `sr` - a `HttpServletRequest`.

### Servlet20RequestWrapper

    public Servlet20RequestWrapper(PortletRenderRequest pr,
                                   java.lang.String vp,
                                   java.lang.String rp)

  Constructs this `Servlet20RequestWrapper` object.
  Parameters:
    `pr` - a `PortletRenderRequest`.
    `vp` - a server relative virtual path for this request.
    `rp` - a file system relative real path for this request.

### Servlet20RequestWrapper

    public Servlet20RequestWrapper(PortletRenderRequest pr,
                                   java.lang.String vp,
                                   java.lang.String rp,
                                   java.util.Hashtable parameters)

  Constructs this `Servlet20RequestWrapper` object by including a local parameter store. This parameter store must be a `Hashtable` whose `keys` are `String` and `values` are a `Vector` of `String`s. The parameters held in the local store will then be available, along with the `HttpServletRequest` parameters, from calls to the `getParameter(String)`, `getParameterValues(String)` and `getParameterNames()` methods.
  Parameters:
    `pr` - a `PortletRenderRequest`.
    `vp` - a server relative virtual path for this request.
    `rp` - a file system relative real path for this request.
    `parameters` - - a `Hashtable` of local parameters.

Method Detail

### setPortletRenderRequest

    public void setPortletRenderRequest(PortletRenderRequest pr)

  Sets a `PortletRenderRequest` whose attributes should be combined with the attributes of the 'wrapped' `HttpServletRequest`. Once set, the `getAttribute(String)` method will return the attribute of the given name in the `PortletRenderRequest` in the absence of an attribute of the given name in the 'wrapped' `HttpServletRequest`.
  Parameters:
    `pr` - a `PortletRenderRequest`.

### setVirtualPath

    public void setVirtualPath(java.lang.String vp)

  Overrides the server relative virtual path for this request.
  Parameters:
    `vp` - a server relative virtual path for this request.

### setRealPath

    public void setRealPath(java.lang.String rp)

  Overrides the file system relative real path for this request.
  Parameters:
    `rp` - a file system relative real path for this request.

### getContentLength

    public int getContentLength()

  Returns the size of the request entity data, or -1 if not known. Same as the CGI variable CONTENT_LENGTH.

### getContentType

    public java.lang.String getContentType()

  Returns the Internet Media Type of the request entity data, or null if not known. Same as the CGI variable CONTENT_TYPE.

### getProtocol

    public java.lang.String getProtocol()

  Returns the protocol and version of the request as a string of the form `<protocol>/<major version>.<minor version>`. Same as the CGI variable SERVER_PROTOCOL.

### getScheme

    public java.lang.String getScheme()

  Returns the scheme of the URL used in this request, for example "http", "https", or "ftp". Different schemes have different rules for constructing URLs, as noted in RFC 1738. The URL used to create a request may be reconstructed using this scheme, the server name and port, and additional information such as URIs.

### getServerName

    public java.lang.String getServerName()

  Returns the host name of the server that received the request. Same as the CGI variable SERVER_NAME.

### getServerPort

    public int getServerPort()

  Returns the port number on which this request was received. Same as the CGI variable SERVER_PORT.

### getRemoteAddr

    public java.lang.String getRemoteAddr()

  Returns the IP address of the agent that sent the request. Same as the CGI variable REMOTE_ADDR.

### getRemoteHost

    public java.lang.String getRemoteHost()

  Returns the fully qualified host name of the agent that sent the request. Same as the CGI variable REMOTE_HOST.

### getRealPath

    public java.lang.String getRealPath(java.lang.String path)

  Applies alias rules to the specified virtual path and returns the corresponding real path, or null if the translation can not be performed for any reason. For example, an HTTP servlet would resolve the path using the virtual docroot, if virtual hosting is enabled, and with the default docroot otherwise. Calling this method with the string "/" as an argument returns the document root.
  Parameters:
    `path` - the virtual path to be translated to a real path

### getInputStream

    public javax.servlet.ServletInputStream getInputStream()
                                                    throws java.io.IOException

  Returns an input stream for reading binary data in the request body.
  Throws:
    java.lang.IllegalStateException - if getReader has been called on this same request.
    java.io.IOException - on other I/O related errors.
  See Also:
    `getReader()`

### getParameter

    public java.lang.String getParameter(java.lang.String name)

  Returns a string containing the lone value of the specified parameter, or null if the parameter does not exist. For example, in an HTTP servlet this method would return the value of the specified query string parameter. Servlet writers should use this method only when they are sure that there is only one value for the parameter. If the parameter has (or could have) multiple values, servlet writers should use getParameterValues. The local parameter store is checked for a matching value first. If one exists, that value is returned. If a multiple valued parameter name is passed as an argument and the parameter exists in the local store, the first value in that local store is returned. Otherwise, the return value is implementation dependent.
  Parameters:
    `name` - the name of the parameter whose value is required.
  See Also:
    `getParameterValues(java.lang.String)`

### getParameterValues

    public java.lang.String[] getParameterValues(java.lang.String name)

  Returns the values of the specified parameter for the request, including those values found in the local store, as an array of strings, or null if the named parameter does not exist. For example, in an HTTP servlet this method would return the values of the specified query string, or posted form, plus the values in the local store, as an array of strings.
  Parameters:
    `name` - the name of the parameter whose value is required.
  See Also:
    `ServletRequest.getParameter(java.lang.String)`

### getParameterNames

    public java.util.Enumeration getParameterNames()

  Returns the parameter names for this request, plus the parameter names in the local store, as an enumeration of strings, or an empty enumeration if there are no parameters or the input stream is empty. The input stream would be empty if all the data had been read from the stream returned by the method getInputStream.

### getAttribute

    public java.lang.Object getAttribute(java.lang.String name)

  Returns the value of the named attribute of the request, or null if the attribute does not exist. This method allows access to request information not already provided by the other methods in this interface. Attribute names should follow the same convention as package names. The following predefined attributes are provided.

  Attribute Name | Attribute Type | Description
  --- | --- | ---
  javax.net.ssl.cipher_suite | string | The string name of the SSL cipher suite in use, if the request was made using SSL
  javax.net.ssl.peer_certificates | array of javax.security.cert.X509Certificate | The chain of X.509 certificates which authenticates the client. This is only available when SSL is used with client authentication is used.
  javax.net.ssl.session | javax.net.ssl.SSLSession | An SSL session object, if the request was made using SSL.

  The package (and hence attribute) names beginning with java.*, and javax.* are reserved for use by Javasoft. Similarly, com.sun.* is reserved for use by Sun Microsystems.

  Parameters:
    `name` - the name of the attribute whose value is required

### getReader

    public java.io.BufferedReader getReader()
                                     throws java.io.IOException

  Returns a buffered reader for reading text in the request body. This translates character set encodings as appropriate.
  Throws:
    java.io.UnsupportedEncodingException - if the character set encoding is unsupported, so the text can't be correctly decoded.
    java.lang.IllegalStateException - if getInputStream has been * called on this same request.
    java.io.IOException - on other I/O related errors.
  See Also:
    `getInputStream()`

### getCharacterEncoding

    public java.lang.String getCharacterEncoding()

  Returns the character set encoding for the input of this request.

### getCookies

    public javax.servlet.http.Cookie[] getCookies()

  Gets the array of cookies found in this request.
  Specified by:
    getCookies in interface javax.servlet.http.HttpServletRequest
  Returns:
    the array of cookies found in this request

### getMethod

    public java.lang.String getMethod()

  Gets the HTTP method (for example, GET, POST, PUT) with which this request was made. Same as the CGI variable REQUEST_METHOD.
  Specified by:
    getMethod in interface javax.servlet.http.HttpServletRequest
  Returns:
    the HTTP method with which this request was made

### getRequestURI

    public java.lang.String getRequestURI()

  Gets, from the first line of the HTTP request, the part of this request's URI that is to the left of any query string. For example,

  > First line of HTTP request |  | Return from `getRequestURI`
  > --- | --- | ---
  > POST /some/path.html HTTP/1.1 |  | /some/path.html
  > GET http://foo.bar/a.html HTTP/1.0 |  | http://foo.bar/a.html
  > HEAD /xyz?a=b HTTP/1.1 |  | /xyz

  To reconstruct a URL with a URL scheme and host, use the method javax.servlet.http.HttpUtils.getRequestURL, which returns a StringBuffer.

  Specified by:
    getRequestURI in interface javax.servlet.http.HttpServletRequest
  Returns:
    this request's URI
  See Also:
    `javax.servlet.http.HttpUtils#getRequestURL(HttpServletRequest)`

### getServletPath

    public java.lang.String getServletPath()

  Gets the part of this request's URI that refers to the servlet being invoked. Analogous to the CGI variable SCRIPT_NAME.
  Specified by:
    getServletPath in interface javax.servlet.http.HttpServletRequest
  Returns:
    the servlet being invoked, as contained in this request's URI

### getPathInfo

    public java.lang.String getPathInfo()

  Gets any optional extra path information following the servlet path of this request's URI, but immediately preceding its query string. Same as the CGI variable PATH_INFO.
  Specified by:
    getPathInfo in interface javax.servlet.http.HttpServletRequest
  Returns:
    the optional path information following the servlet path, but before the query string, in this request's URI; null if this request's URI contains no extra path information

### getPathTranslated

    public java.lang.String getPathTranslated()

  Gets any optional extra path information following the servlet path of this request's URI, but immediately preceding its query string, and translates it to a real path. Similar to the CGI variable PATH_TRANSLATED
  Specified by:
    getPathTranslated in interface javax.servlet.http.HttpServletRequest
  Returns:
    extra path information translated to a real path or null if no extra path information is in the request's URI

### getQueryString

    public java.lang.String getQueryString()

  Gets any query string that is part of the HTTP request URI. Same as the CGI variable QUERY_STRING.
  Specified by:
    getQueryString in interface javax.servlet.http.HttpServletRequest
  Returns:
    query string that is part of this request's URI, or null if it contains no query string

### getRemoteUser

    public java.lang.String getRemoteUser()

  Gets the name of the user making this request. The user name is set with HTTP authentication. Whether the user name will continue to be sent with each subsequent communication is browser-dependent. Same as the CGI variable REMOTE_USER.
  Specified by:
    getRemoteUser in interface javax.servlet.http.HttpServletRequest
  Returns:
    the name of the user making this request, or null if not known.

### getAuthType

    public java.lang.String getAuthType()

  Gets the authentication scheme of this request. Same as the CGI variable AUTH_TYPE.
  Specified by:
    getAuthType in interface javax.servlet.http.HttpServletRequest
  Returns:
    this request's authentication scheme, or null if none.

### getHeader

    public java.lang.String getHeader(java.lang.String name)

  Gets the value of the requested header field of this request. The case of the header field name is ignored.
  Specified by:
    getHeader in interface javax.servlet.http.HttpServletRequest
  Parameters:
    `name` - the String containing the name of the requested header field
  Returns:
    the value of the requested header field, or null if not known.

### getIntHeader

    public int getIntHeader(java.lang.String name)

  Gets the value of the specified integer header field of this request. The case of the header field name is ignored. If the header can't be converted to an integer, the method throws a NumberFormatException.
  Specified by:
    getIntHeader in interface javax.servlet.http.HttpServletRequest
  Parameters:
    `name` - the String containing the name of the requested header field
  Returns:
    the value of the requested header field, or -1 if not found.

### getDateHeader

    public long getDateHeader(java.lang.String name)

  Gets the value of the requested date header field of this request. If the header can't be converted to a date, the method throws an IllegalArgumentException. The case of the header field name is ignored.
  Specified by:
    getDateHeader in interface javax.servlet.http.HttpServletRequest
  Parameters:
    `name` - the String containing the name of the requested header field
  Returns:
    the value the requested date header field, or -1 if not found.

### getHeaderNames

    public java.util.Enumeration getHeaderNames()

  Gets the header names for this request.
  Specified by:
    getHeaderNames in interface javax.servlet.http.HttpServletRequest
  Returns:
    an enumeration of strings representing the header names for this request. Some server implementations do not allow headers to be accessed in this way, in which case this method will return null.

### getSession

    public javax.servlet.http.HttpSession getSession(boolean create)

  Gets the current valid session associated with this request, if create is false or, if necessary, creates a new session for the request, if create is true.

  Note: to ensure the session is properly maintained, the servlet developer must call this method (at least once) before any output is written to the response.

  Additionally, application-writers need to be aware that newly created sessions (that is, sessions for which `HttpSession.isNew` returns true) do not have any application-specific state.

  Specified by:
    getSession in interface javax.servlet.http.HttpServletRequest
  Returns:
    the session associated with this request or null if create was false and no valid session is associated with this request.

### getRequestedSessionId

    public java.lang.String getRequestedSessionId()

  Gets the session id specified with this request. This may differ from the actual session id. For example, if the request specified an id for an invalid session, then this will get a new session with a new id.
  Specified by:
    getRequestedSessionId in interface javax.servlet.http.HttpServletRequest
  Returns:
    the session id specified by this request, or null if the request did not specify a session id
  See Also:
    `isRequestedSessionIdValid()`

### isRequestedSessionIdValid

    public boolean isRequestedSessionIdValid()

  Checks whether this request is associated with a session that is valid in the current session context. If it is not valid, the requested session will never be returned from the `getSession` method.
  Specified by:
    isRequestedSessionIdValid in interface javax.servlet.http.HttpServletRequest
  Returns:
    true if this request is assocated with a session that is valid in the current session context.
  See Also:
    `getRequestedSessionId()`, `HttpSessionContext`, `getSession(boolean)`

### isRequestedSessionIdFromCookie

    public boolean isRequestedSessionIdFromCookie()

  Checks whether the session id specified by this request came in as a cookie. (The requested session may not be one returned by the `getSession` method.)
  Specified by:
    isRequestedSessionIdFromCookie in interface javax.servlet.http.HttpServletRequest
  Returns:
    true if the session id specified by this request came in as a cookie; false otherwise
  See Also:
    `getSession(boolean)`

### isRequestedSessionIdFromUrl

    public boolean isRequestedSessionIdFromUrl()

  Checks whether the session id specified by this request came in as part of the URL. (The requested session may not be the one returned by the `getSession` method.)
  Specified by:
    isRequestedSessionIdFromUrl in interface javax.servlet.http.HttpServletRequest
  Returns:
    true if the session id specified by the request for this session came in as part of the URL; false otherwise
  See Also:
    `getSession(boolean)`

### getURLCharSet

    public java.lang.String getURLCharSet()

  Returns the character set that was used when the parameters of the request were encoded. Used when encoding parameters for inclusion in a URL

### setURLCharSet

    public void setURLCharSet(java.lang.String charset)

  set URL Character Set. The URL character set is the character set that was used to encode the parameters of the request URL. This is used to decode the parameters and encode parameters that are used when creating new URLs
  Parameters:
    `charset` - name of the character set used to encode the request URL

### addLocalParameter

    public void addLocalParameter(java.lang.String name,
                                  java.lang.String value)

  Add a 'local parameter' to this request. The name and value of the parameter will then be available, along with the `HttpServletRequest` parameters, from calls to the `getParameter(String)`, `getParameterValues(String)` and `getParameterNames()` methods.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD