Una modalidad de portlet puede cambiarse manualmente pulsando en los iconos correspondientes de la barra de título del portlet. No obstante, si desea que la modalidad de portlet cambie en función del rendimiento de una acción Faces, puede invocar un método API de portlet adecuado en la acción Faces para desencadenar el cambio de modalidad.
Por ejemplo, puede hacer que un portlet en la modalidad de edición vuelva a la modalidad de vista pulsando el botón de someter en la página de modalidad de edición:
- Ejemplo de API de portlet JSR 168
ActionResponse response = (ActionResponse)facesContext.getExternalContext().getResponse();
try {
response.setPortletMode(PortletMode.VIEW);
} catch (PortletModeException e) {
// Su excepción maneja código aquí
}
- Ejemplo de API de portlet IBM
PortletRequest request = (PortletRequest)facesContext.getExternalContext().getRequest();
try {
request.setModeModifier(Portlet.ModeModifier.PREVIOUS);
} catch (AccessDeniedException e) {
// Su excepción maneja código aquí
}