javax.portlet
Interface PortletRequest

All Known Subinterfaces:
ActionRequest, RenderRequest

public interface PortletRequest

The PortletRequest defines the base interface to provide client request information to a portlet. The portlet container uses two specialized versions of this interface when invoking a portlet, ActionRequest and RenderRequest. The portlet container creates these objects and passes them as arguments to the portlet's processAction and render methods.

See Also
ActionRequest, RenderRequest

Field Summary
static String BASIC_AUTH
          String identifier for Basic authentication.
static String CLIENT_CERT_AUTH
          String identifier for Certification based authentication.
static String DIGEST_AUTH
          String identifier for Digest based authentication.
static String FORM_AUTH
          String identifier for Form based authentication.
static String USER_INFO
          Used to retrieve user information attributes with the getAttribute call.
 
Method Summary
 Object getAttribute(String name)
          Returns the value of the named attribute as an Object, or null if no attribute of the given name exists.
 Enumeration getAttributeNames()
          Returns an Enumeration containing the names of the attributes available to this request.
 String getAuthType()
          Returns the name of the authentication scheme used for the connection between client and portal, for example, BASIC_AUTH, CLIENT_CERT_AUTH, a custom one or null if there was no authentication.
 String getContextPath()
          Returns the context path which is the path prefix associated with the deployed portlet application.
 Locale getLocale()
          Returns the preferred Locale in which the portal will accept content.
 Enumeration getLocales()
          Returns an Enumeration of Locale objects indicating, in decreasing order starting with the preferred locale in which the portal will accept content for this request.
 String getParameter(String name)
          Returns the value of a request parameter as a String, or null if the parameter does not exist.
 Map getParameterMap()
          Returns a Map of the parameters of this request.
 Enumeration getParameterNames()
          Returns an Enumeration of String objects containing the names of the parameters contained in this request.
 String[] getParameterValues(String name)
          Returns an array of String objects containing all of the values the given request parameter has, or null if the parameter does not exist.
 PortalContext getPortalContext()
          Returns the context of the calling portal.
 PortletMode getPortletMode()
          Returns the current portlet mode of the portlet.
 PortletSession getPortletSession()
          Returns the current portlet session or, if there is no current session, creates one and returns the new session.
 PortletSession getPortletSession(boolean create)
          Returns the current portlet session or, if there is no current session and the given flag is true, creates one and returns the new session.
 PortletPreferences getPreferences()
          Returns the preferences object associated with the portlet.
 Enumeration getProperties(String name)
          Returns all the values of the specified request property as a Enumeration of String objects.
 String getProperty(String name)
          Returns the value of the specified request property as a String.
 Enumeration getPropertyNames()
          Returns a Enumeration of all the property names this request contains.
 String getRemoteUser()
          Returns the login of the user making this request, if the user has been authenticated, or null if the user has not been authenticated.
 String getRequestedSessionId()
          Returns the session ID indicated in the client request.
 String getResponseContentType()
          Returns the portal preferred content type for the response.
 Enumeration getResponseContentTypes()
          Gets a list of content types which the portal accepts for the response.
 String getScheme()
          Returns the name of the scheme used to make this request.
 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.
 Principal getUserPrincipal()
          Returns a java.security.Principal object containing the name of the current authenticated user.
 WindowState getWindowState()
          Returns the current window state of the portlet.
 boolean isPortletModeAllowed(PortletMode mode)
          Returns true, if the given portlet mode is a valid one to set for this portlet in the context of the current request.
 boolean isRequestedSessionIdValid()
          Checks whether the requested session ID is still valid.
 boolean isSecure()
          Returns a boolean indicating whether this request was made using a secure channel between client and the portal, such as HTTPS.
 boolean isUserInRole(String role)
          Returns a boolean indicating whether the authenticated user is included in the specified logical "role".
 boolean isWindowStateAllowed(WindowState state)
          Returns true, if the given window state is valid to be set for this portlet in the context of the current request.
 void removeAttribute(String name)
          Removes an attribute from this request.
 void setAttribute(String name, Object o)
          Stores an attribute in this request.
 

Field Detail

USER_INFO

static final String USER_INFO
Used to retrieve user information attributes with the getAttribute call. The user information is returned as a Map object. The portlet must define the user information attribute it is interested in inside the user-attribute section of the deployment descriptor. If an attribute is not supported by the current runtime system it will not show up in the user attribute map.
If the user-attribute is supported by the runtime system, but not defined for a particular user, then for that user the attribute exists in the returned map and the attribute has a null value.

If the user-attribute is not defined for the current user it will not show up in the Map.

The value is javax.portlet.userinfo.

See Also
Constants Summary

BASIC_AUTH

static final String BASIC_AUTH
String identifier for Basic authentication. Value "BASIC".

See Also
Constants Summary

FORM_AUTH

static final String FORM_AUTH
String identifier for Form based authentication. Value "FORM".

See Also
Constants Summary

CLIENT_CERT_AUTH

static final String CLIENT_CERT_AUTH
String identifier for Certification based authentication. Value "CLIENT_CERT".

See Also
Constants Summary

DIGEST_AUTH

static final String DIGEST_AUTH
String identifier for Digest based authentication. Value "DIGEST".

See Also
Constants Summary
Method Detail

isWindowStateAllowed

boolean isWindowStateAllowed(WindowState state)
Returns true, if the given window state is valid to be set for this portlet in the context of the current request.

Parameters
state - window state to checked
Returns
true, if it is valid for this portlet in this request to change to the given window state

isPortletModeAllowed

boolean isPortletModeAllowed(PortletMode mode)
Returns true, if the given portlet mode is a valid one to set for this portlet in the context of the current request.

Parameters
mode - portlet mode to check
Returns
true, if it is valid for this portlet in this request to change to the given portlet mode

getPortletMode

PortletMode getPortletMode()
Returns the current portlet mode of the portlet.

Returns
the portlet mode

getWindowState

WindowState getWindowState()
Returns the current window state of the portlet.

Returns
the window state

getPreferences

PortletPreferences getPreferences()
Returns the preferences object associated with the portlet.

Returns
the portlet preferences

getPortletSession

PortletSession getPortletSession()
Returns the current portlet session or, if there is no current session, creates one and returns the new session.

Creating a new portlet session will result in creating a new HttpSession on which the portlet session is based on.

Returns
the portlet session

getPortletSession

PortletSession getPortletSession(boolean create)
Returns the current portlet session or, if there is no current session and the given flag is true, creates one and returns the new session.

If the given flag is false and there is no current portlet session, this method returns null.

Creating a new portlet session will result in creating a new HttpSession on which the portlet session is based on.

Parameters
create - true to create a new session,
false to return null if there is no current session
Returns
the portlet session

getProperty

String getProperty(String name)
Returns the value of the specified request property as a String. If the request did not include a property of the specified name, this method returns null.

A portlet can access portal/portlet-container specific properties through this method and, if available, the headers of the HTTP client request.

This method should only be used if the property has only one value. If the property might have more than one value, use getProperties(java.lang.String).

If this method is used with a multivalued parameter, the value returned is equal to the first value in the Enumeration returned by getProperties.

Parameters
name - a String specifying the property name
Returns
a String containing the value of the requested property, or null if the request does not have a property of that name.
Throws
IllegalArgumentException - if name is null.

getProperties

Enumeration getProperties(String name)
Returns all the values of the specified request property as a Enumeration of String objects.

If the request did not include any propertys of the specified name, this method returns an empty Enumeration. The property name is case insensitive. You can use this method with any request property.

Parameters
name - a String specifying the property name
Returns
a Enumeration containing the values of the requested property. If the request does not have any properties of that name return an empty Enumeration.
Throws
IllegalArgumentException - if name is null.

getPropertyNames

Enumeration getPropertyNames()
Returns a Enumeration of all the property names this request contains. If the request has no properties, this method returns an empty Enumeration.

Returns
an Enumeration of all the property names sent with this request; if the request has no properties, an empty Enumeration.

getPortalContext

PortalContext getPortalContext()
Returns the context of the calling portal.

Returns
the context of the calling portal

getAuthType

String getAuthType()
Returns the name of the authentication scheme used for the connection between client and portal, for example, BASIC_AUTH, CLIENT_CERT_AUTH, a custom one or null if there was no authentication.

Returns
one of the static members BASIC_AUTH, FORM_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH (suitable for == comparison) indicating the authentication scheme, a custom one, or null if the request was not authenticated.

getContextPath

String getContextPath()
Returns the context path which is the path prefix associated with the deployed portlet application. If the portlet application is rooted at the base of the web server URL namespace (also known as "default" context), this path must be an empty string. Otherwise, it must be the path the portlet application is rooted to, the path must start with a '/' and it must not end with a '/' character.

To encode a URL the PortletResponse.encodeURL(java.lang.String) method must be used.

Returns
a String specifying the portion of the request URL that indicates the context of the request
See Also
PortletResponse.encodeURL(java.lang.String)

getRemoteUser

String getRemoteUser()
Returns the login of the user making this request, if the user has been authenticated, or null if the user has not been authenticated.

Returns
a String specifying the login of the user making this request, or null if the user login is not known.

getUserPrincipal

Principal getUserPrincipal()
Returns a java.security.Principal object containing the name of the current authenticated user.

Returns
a java.security.Principal containing the name of the user making this request, or null if the user has not been authenticated.

isUserInRole

boolean isUserInRole(String role)
Returns a boolean indicating whether the authenticated user is included in the specified logical "role". Roles and role membership can be defined using deployment descriptors. If the user has not been authenticated, the method returns false.

Parameters
role - a String specifying the name of the role
Returns
a boolean indicating whether the user making this request belongs to a given role; false if the user has not been authenticated.

getAttribute

Object getAttribute(String name)
Returns the value of the named attribute as an Object, or null if no attribute of the given name exists.

Attribute names should follow the same conventions as package names. This specification reserves names matching java.*, and javax.*.

In a distributed portlet web application the Object needs to be serializable.

Parameters
name - a String specifying the name of the attribute
Returns
an Object containing the value of the attribute, or null if the attribute does not exist.
Throws
IllegalArgumentException - if name is null.

getAttributeNames

Enumeration getAttributeNames()
Returns an Enumeration containing the names of the attributes available to this request. This method returns an empty Enumeration if the request has no attributes available to it.

Returns
an Enumeration of strings containing the names of the request attributes, or an empty Enumeration if the request has no attributes available to it.

getParameter

String getParameter(String name)
Returns the value of a request parameter as a String, or null if the parameter does not exist. Request parameters are extra information sent with the request. The returned parameter are "x-www-form-urlencoded" decoded.

Only parameters targeted to the current portlet are accessible.

This method should only be used if the parameter has only one value. If the parameter might have more than one value, use getParameterValues(java.lang.String).

If this method is used with a multivalued parameter, the value returned is equal to the first value in the array returned by getParameterValues.

Parameters
name - a String specifying the name of the parameter
Returns
a String representing the single value of the parameter
Throws
IllegalArgumentException - if name is null.
See Also
getParameterValues(java.lang.String)

getParameterNames

Enumeration getParameterNames()
Returns an Enumeration of String objects containing the names of the parameters contained in this request. If the request has no parameters, the method returns an empty Enumeration.

Only parameters targeted to the current portlet are returned.

Returns
an Enumeration of String objects, each String containing the name of a request parameter; or an empty Enumeration if the request has no parameters.

getParameterValues

String[] getParameterValues(String name)
Returns an array of String objects containing all of the values the given request parameter has, or null if the parameter does not exist. The returned parameters are "x-www-form-urlencoded" decoded.

If the parameter has a single value, the array has a length of 1.

Parameters
name - a String containing the name of the parameter the value of which is requested
Returns
an array of String objects containing the parameter values.
Throws
IllegalArgumentException - if name is null.
See Also
getParameter(java.lang.String)

getParameterMap

Map getParameterMap()
Returns a Map of the parameters of this request. Request parameters are extra information sent with the request. The returned parameters are "x-www-form-urlencoded" decoded.

The values in the returned Map are from type String array (String[]).

If no parameters exist this method returns null.

Returns
an immutable Map containing parameter names as keys and parameter values as map values, or null if no parameters exist. The keys in the parameter map are of type String. The values in the parameter map are of type String array (String[]).

isSecure

boolean isSecure()
Returns a boolean indicating whether this request was made using a secure channel between client and the portal, such as HTTPS.

Returns
true, if the request was made using a secure channel.

setAttribute

void setAttribute(String name,
                  Object o)
Stores an attribute in this request.

Attribute names should follow the same conventions as package names. Names beginning with java.*, javax.*, and com.sun.* are reserved for use by Sun Microsystems.
If the value passed into this method is null, the effect is the same as calling removeAttribute(java.lang.String).

Parameters
name - a String specifying the name of the attribute
o - the Object to be stored
Throws
IllegalArgumentException - if name is null.

removeAttribute

void removeAttribute(String name)
Removes an attribute from this request. This method is not generally needed, as attributes only persist as long as the request is being handled.

Attribute names should follow the same conventions as package names. Names beginning with java.*, javax.*, and com.sun.* are reserved for use by Sun Microsystems.

Parameters
name - a String specifying the name of the attribute to be removed
Throws
IllegalArgumentException - if name is null.

getRequestedSessionId

String getRequestedSessionId()
Returns the session ID indicated in the client request. This session ID may not be a valid one, it may be an old one that has expired or has been invalidated. If the client request did not specify a session ID, this method returns null.

Returns
a String specifying the session ID, or null if the request did not specify a session ID
See Also
isRequestedSessionIdValid()

isRequestedSessionIdValid

boolean isRequestedSessionIdValid()
Checks whether the requested session ID is still valid.

Returns
true if this request has an id for a valid session in the current session context; false otherwise
See Also
getRequestedSessionId(), getPortletSession()

getResponseContentType

String getResponseContentType()
Returns the portal preferred content type for the response.

The content type only includes the MIME type, not the character set.

Only content types that the portlet has defined in its deployment descriptor are valid return values for this method call. If the portlet has defined '*' or '* / *' as supported content types, these may also be valid return values.

Returns
preferred MIME type of the response

getResponseContentTypes

Enumeration getResponseContentTypes()
Gets a list of content types which the portal accepts for the response. This list is ordered with the most preferable types listed first.

The content type only includes the MIME type, not the character set.

Only content types that the portlet has defined in its deployment descriptor are valid return values for this method call. If the portlet has defined '*' or '* / *' as supported content types, these may also be valid return values.

Returns
ordered list of MIME types for the response

getLocale

Locale getLocale()
Returns the preferred Locale in which the portal will accept content. The Locale may be based on the Accept-Language header of the client.

Returns
the prefered Locale in which the portal will accept content.

getLocales

Enumeration getLocales()
Returns an Enumeration of Locale objects indicating, in decreasing order starting with the preferred locale in which the portal will accept content for this request. The Locales may be based on the Accept-Language header of the client.

Returns
an Enumeration of Locales, in decreasing order, in which the portal will accept content for this request

getScheme

String getScheme()
Returns the name of the scheme used to make this request. For example, http, https, or ftp. Different schemes have different rules for constructing URLs, as noted in RFC 1738.

Returns
a String containing the name of the scheme used to make this request

getServerName

String getServerName()
Returns the host name of the server that received the request.

Returns
a String containing the name of the server to which the request was sent

getServerPort

int getServerPort()
Returns the port number on which this request was received.

Returns
an integer specifying the port number


Copyright © 2008 BEA Systems, Inc. All Rights Reserved