Interface ActionResponse
- All Superinterfaces:
PortletResponse
ActionResponse
interface represents the portlet
response to an action request.
It extends the PortletResponse
interface to provide specific
action response functionality to portlets.The portlet container creates an
ActionResponse
object and
passes it as argument to the portlet's processAction
method.- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoid
sendRedirect
(String location) Instructs the portlet container to send a redirect response to the client using the specified redirect location URL.void
setPortletMode
(PortletMode portletMode) Sets the portlet mode of a portlet to the given portlet mode.void
setRenderParameter
(String key, String value) Sets a String parameter for the render request.void
setRenderParameter
(String key, String[] values) Sets a String array parameter for the render request.void
setRenderParameters
(Map parameters) Sets a parameter map for the render request.void
setWindowState
(WindowState windowState) Sets the window state of a portlet to the given window state.Methods inherited from interface javax.portlet.PortletResponse
addProperty, encodeURL, setProperty
-
Method Details
-
setWindowState
Sets the window state of a portlet to the given window state.Possible values are the standard window states and any custom window states supported by the portal and the portlet. Standard window states are:
- MINIMIZED
- NORMAL
- MAXIMIZED
- Parameters:
windowState
- the new portlet window state- Throws:
WindowStateException
- if the portlet cannot switch to the specified window state. To avoid this exception the portlet can check the allowed window states withRequest.isWindowStateAllowed()
.IllegalStateException
- if the method is invoked aftersendRedirect
has been called.- See Also:
-
setPortletMode
Sets the portlet mode of a portlet to the given portlet mode.Possible values are the standard portlet modes and any custom portlet modes supported by the portal and the portlet. Portlets must declare in the deployment descriptor the portlet modes they support for each markup type. Standard portlet modes are:
- EDIT
- HELP
- VIEW
Note: The portlet may still be called in a different window state in the next render call, depending on the portlet container / portal.
- Parameters:
portletMode
- the new portlet mode- Throws:
PortletModeException
- if the portlet cannot switch to this portlet mode, because the portlet or portal does not support it for this markup, or the current user is not allowed to switch to this portlet mode. To avoid this exception the portlet can check the allowed portlet modes withRequest.isPortletModeAllowed()
.IllegalStateException
- if the method is invoked aftersendRedirect
has been called.
-
sendRedirect
Instructs the portlet container to send a redirect response to the client using the specified redirect location URL.This method only accepts an absolute URL (e.g.
http://my.co/myportal/mywebap/myfolder/myresource.gif
) or a full path URI (e.g./myportal/mywebap/myfolder/myresource.gif
). If required, the portlet container may encode the given URL before the redirection is issued to the client.The sendRedirect method can not be invoked after any of the following methods of the ActionResponse interface has been called:
- setPortletMode
- setWindowState
- setRenderParameter
- setRenderParameters
- Parameters:
location
- the redirect location URL- Throws:
IOException
- if an input or output exception occurs.IllegalArgumentException
- if a relative path URL is givenIllegalStateException
- if the method is invoked after any of above mentioned methods of the ActionResponse interface has been called.
-
setRenderParameters
Sets a parameter map for the render request.All previously set render parameters are cleared.
These parameters will be accessible in all sub-sequent render calls via the
PortletRequest.getParameter
call until a new request is targeted to the portlet.The given parameters do not need to be encoded prior to calling this method.
- Parameters:
parameters
- Map containing parameter names for the render phase as keys and parameter values as map values. The keys in the parameter map must be of type String. The values in the parameter map must be of type String array (String[]
).- Throws:
IllegalArgumentException
- if parameters isnull
, if any of the key/values in the Map arenull
, if any of the keys is not a String, or if any of the values is not a String array.IllegalStateException
- if the method is invoked aftersendRedirect
has been called.
-
setRenderParameter
Sets a String parameter for the render request.These parameters will be accessible in all sub-sequent render calls via the
PortletRequest.getParameter
call until a request is targeted to the portlet.This method replaces all parameters with the given key.
The given parameter do not need to be encoded prior to calling this method.
- Parameters:
key
- key of the render parametervalue
- value of the render parameter- Throws:
IllegalArgumentException
- if key or value arenull
.IllegalStateException
- if the method is invoked aftersendRedirect
has been called.
-
setRenderParameter
Sets a String array parameter for the render request.These parameters will be accessible in all sub-sequent render calls via the
PortletRequest.getParameter
call until a request is targeted to the portlet.This method replaces all parameters with the given key.
The given parameter do not need to be encoded prior to calling this method.
- Parameters:
key
- key of the render parametervalues
- values of the render parameter- Throws:
IllegalArgumentException
- if key or value arenull
.IllegalStateException
- if the method is invoked aftersendRedirect
has been called.
-