Interface PortletRequest
- All Known Subinterfaces:
ActionRequest
,RenderRequest
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:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
String identifier for Basic authentication.static final String
String identifier for Certification based authentication.static final String
String identifier for Digest based authentication.static final String
String identifier for Form based authentication.static final String
Used to retrieve user information attributes with thegetAttribute
call. -
Method Summary
Modifier and TypeMethodDescriptiongetAttribute
(String name) Returns the value of the named attribute as anObject
, ornull
if no attribute of the given name exists.Returns anEnumeration
containing the names of the attributes available to this request.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 ornull
if there was no authentication.Returns the context path which is the path prefix associated with the deployed portlet application.Returns the preferred Locale in which the portal will accept content.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.getParameter
(String name) Returns the value of a request parameter as aString
, ornull
if the parameter does not exist.Returns aMap
of the parameters of this request.Returns anEnumeration
ofString
objects containing the names of the parameters contained in this request.String[]
getParameterValues
(String name) Returns an array ofString
objects containing all of the values the given request parameter has, ornull
if the parameter does not exist.Returns the context of the calling portal.Returns the current portlet mode of the portlet.Returns the current portlet session or, if there is no current session, creates one and returns the new session.getPortletSession
(boolean create) Returns the current portlet session or, if there is no current session and the given flag istrue
, creates one and returns the new session.Returns the preferences object associated with the portlet.getProperties
(String name) Returns all the values of the specified request property as aEnumeration
ofString
objects.getProperty
(String name) Returns the value of the specified request property as aString
.Returns aEnumeration
of all the property names this request contains.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 the session ID indicated in the client request.Returns the portal preferred content type for the response.Gets a list of content types which the portal accepts for the response.Returns the name of the scheme used to make this request.Returns the host name of the server that received the request.int
Returns the port number on which this request was received.Returns a java.security.Principal object containing the name of the current authenticated user.Returns the current window state of the portlet.boolean
Returns true, if the given portlet mode is a valid one to set for this portlet in the context of the current request.boolean
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 Details
-
USER_INFO
Used to retrieve user information attributes with thegetAttribute
call. The user information is returned as aMap
object. The portlet must define the user information attribute it is interested in inside theuser-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 anull
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:
-
BASIC_AUTH
String identifier for Basic authentication. Value "BASIC".- See Also:
-
FORM_AUTH
String identifier for Form based authentication. Value "FORM".- See Also:
-
CLIENT_CERT_AUTH
String identifier for Certification based authentication. Value "CLIENT_CERT".- See Also:
-
DIGEST_AUTH
String identifier for Digest based authentication. Value "DIGEST".- See Also:
-
-
Method Details
-
isWindowStateAllowed
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
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
Returns the current portlet session or, if there is no current session and the given flag istrue
, creates one and returns the new session.If the given flag is
false
and there is no current portlet session, this method returnsnull
.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 returnnull
if there is no current session- Returns:
- the portlet session
-
getProperty
Returns the value of the specified request property as aString
. If the request did not include a property of the specified name, this method returnsnull
.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
- aString
specifying the property name- Returns:
- a
String
containing the value of the requested property, ornull
if the request does not have a property of that name. - Throws:
IllegalArgumentException
- if name isnull
.
-
getProperties
Returns all the values of the specified request property as aEnumeration
ofString
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
- aString
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 emptyEnumeration
. - Throws:
IllegalArgumentException
- if name isnull
.
-
getPropertyNames
Enumeration getPropertyNames()Returns aEnumeration
of all the property names this request contains. If the request has no properties, this method returns an emptyEnumeration
.- Returns:
- an
Enumeration
of all the property names sent with this request; if the request has no properties, an emptyEnumeration
.
-
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 ornull
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, ornull
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:
-
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, ornull
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, ornull
if the user has not been authenticated.
-
isUserInRole
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 returnsfalse
.- Parameters:
role
- aString
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
Returns the value of the named attribute as anObject
, ornull
if no attribute of the given name exists.Attribute names should follow the same conventions as package names. This specification reserves names matching
java.*
, andjavax.*
.In a distributed portlet web application the
Object
needs to be serializable.- Parameters:
name
- aString
specifying the name of the attribute- Returns:
- an
Object
containing the value of the attribute, ornull
if the attribute does not exist. - Throws:
IllegalArgumentException
- if name isnull
.
-
getAttributeNames
Enumeration getAttributeNames()Returns anEnumeration
containing the names of the attributes available to this request. This method returns an emptyEnumeration
if the request has no attributes available to it.- Returns:
- an
Enumeration
of strings containing the names of the request attributes, or an emptyEnumeration
if the request has no attributes available to it.
-
getParameter
Returns the value of a request parameter as aString
, ornull
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
- aString
specifying the name of the parameter- Returns:
- a
String
representing the single value of the parameter - Throws:
IllegalArgumentException
- if name isnull
.- See Also:
-
getParameterNames
Enumeration getParameterNames()Returns anEnumeration
ofString
objects containing the names of the parameters contained in this request. If the request has no parameters, the method returns an emptyEnumeration
.Only parameters targeted to the current portlet are returned.
- Returns:
- an
Enumeration
ofString
objects, eachString
containing the name of a request parameter; or an emptyEnumeration
if the request has no parameters.
-
getParameterValues
Returns an array ofString
objects containing all of the values the given request parameter has, ornull
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
- aString
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 isnull
.- See Also:
-
getParameterMap
Map getParameterMap()Returns aMap
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 an empty
Map
.- Returns:
- an immutable
Map
containing parameter names as keys and parameter values as map values, or an emptyMap
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
Stores an attribute in this request.Attribute names should follow the same conventions as package names. Names beginning with
java.*
,javax.*
, andcom.sun.*
are reserved for use by Sun Microsystems.
If the value passed into this method isnull
, the effect is the same as callingremoveAttribute(java.lang.String)
.- Parameters:
name
- aString
specifying the name of the attributeo
- theObject
to be stored- Throws:
IllegalArgumentException
- if name isnull
.
-
removeAttribute
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.*
, andcom.sun.*
are reserved for use by Sun Microsystems.- Parameters:
name
- aString
specifying the name of the attribute to be removed- Throws:
IllegalArgumentException
- if name isnull
.
-
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 returnsnull
.- Returns:
- a
String
specifying the session ID, ornull
if the request did not specify a session ID - See Also:
-
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:
-
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
, orftp
. 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
-