Portlet API (V1.0)

javax.portlet
Interface ActionRequest

All Superinterfaces:
PortletRequest

public interface ActionRequest
extends PortletRequest

The ActionRequest represents the request sent to the portlet to handle an action. It extends the PortletRequest interface to provide action request information to portlets.
The portlet container creates an ActionRequest object and passes it as argument to the portlet's processAction method.

See Also:
PortletRequest, RenderRequest

Fields inherited from interface javax.portlet.PortletRequest
BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH, USER_INFO
 
Method Summary
 java.lang.String getCharacterEncoding()
          Returns the name of the character encoding used in the body of this request.
 int getContentLength()
          Returns the length, in bytes, of the request body which is made available by the input stream, or -1 if the length is not known.
 java.lang.String getContentType()
          Returns the MIME type of the body of the request, or null if the type is not known.
 java.io.InputStream getPortletInputStream()
          Retrieves the body of the HTTP request from client to portal as binary data using an InputStream.
 java.io.BufferedReader getReader()
          Retrieves the body of the HTTP request from the client to the portal as character data using a BufferedReader.
 void setCharacterEncoding(java.lang.String enc)
          Overrides the name of the character encoding used in the body of this request.
 
Methods inherited from interface javax.portlet.PortletRequest
getAttribute, getAttributeNames, getAuthType, getContextPath, getLocale, getLocales, getParameter, getParameterMap, getParameterNames, getParameterValues, getPortalContext, getPortletMode, getPortletSession, getPortletSession, getPreferences, getProperties, getProperty, getPropertyNames, getRemoteUser, getRequestedSessionId, getResponseContentType, getResponseContentTypes, getScheme, getServerName, getServerPort, getUserPrincipal, getWindowState, isPortletModeAllowed, isRequestedSessionIdValid, isSecure, isUserInRole, isWindowStateAllowed, removeAttribute, setAttribute
 

Method Detail

getPortletInputStream

public java.io.InputStream getPortletInputStream()
                                          throws java.io.IOException
Retrieves the body of the HTTP request from client to portal as binary data using an InputStream. Either this method or getReader() may be called to read the body, but not both.

For HTTP POST data of type application/x-www-form-urlencoded this method throws an IllegalStateException as this data has been already processed by the portal/portlet-container and is available as request parameters.

Returns:
an input stream containing the body of the request
Throws:
java.lang.IllegalStateException - if getReader was already called, or it is a HTTP POST data of type application/x-www-form-urlencoded
java.io.IOException - if an input or output exception occurred

setCharacterEncoding

public void setCharacterEncoding(java.lang.String enc)
                          throws java.io.UnsupportedEncodingException
Overrides the name of the character encoding used in the body of this request. This method must be called prior to reading input using getReader() or getPortletInputStream().

This method only sets the character set for the Reader that the getReader() method returns.

Parameters:
enc - a String containing the name of the chararacter encoding.
Throws:
java.io.UnsupportedEncodingException - if this is not a valid encoding
java.lang.IllegalStateException - if this method is called after reading request parameters or reading input using getReader()

getReader

public java.io.BufferedReader getReader()
                                 throws java.io.UnsupportedEncodingException,
                                        java.io.IOException
Retrieves the body of the HTTP request from the client to the portal as character data using a BufferedReader. The reader translates the character data according to the character encoding used on the body. Either this method or getPortletInputStream() may be called to read the body, not both.

For HTTP POST data of type application/x-www-form-urlencoded this method throws an IllegalStateException as this data has been already processed by the portal/portlet-container and is available as request parameters.

Returns:
a BufferedReader containing the body of the request
Throws:
java.io.UnsupportedEncodingException - if the character set encoding used is not supported and the text cannot be decoded
java.lang.IllegalStateException - if getPortletInputStream() method has been called on this request, it is a HTTP POST data of type application/x-www-form-urlencoded.
java.io.IOException - if an input or output exception occurred
See Also:
getPortletInputStream()

getCharacterEncoding

public java.lang.String getCharacterEncoding()
Returns the name of the character encoding used in the body of this request. This method returns null if the request does not specify a character encoding.
Returns:
a String containing the name of the chararacter encoding, or null if the request does not specify a character encoding.

getContentType

public java.lang.String getContentType()
Returns the MIME type of the body of the request, or null if the type is not known.
Returns:
a String containing the name of the MIME type of the request, or null if the type is not known.

getContentLength

public int getContentLength()
Returns the length, in bytes, of the request body which is made available by the input stream, or -1 if the length is not known.
Returns:
an integer containing the length of the request body or -1 if the length is not known

Portlet API (V1.0)

Copyright © 2003 IBM Corporation and Sun Microsystems, Inc. All rights reserved