基于 IBM® portlet 框架的 Faces portlet 支持 portlet 消息传递用于直接 portlet 间通信。
FacesContext facesContext = FacesContext.getCurrentInstance(); PortletMessage message = new DefaultPortletMessage( "/jsp/MyView.jsp?MyForm&MyForm:MyCommand&MyForm:MyInput=MyValue"); PortletContext context = (PortletContext)facesContext.getExternalContext().getContext();try { context.send(null, message); } catch (AccessDeniedException e) { // exception handling code }
注意,必须使用表单标识(MyForm)限定触发器标识和参数标识。