我创建了一个grails liferay portlet。我需要通过IPC事件动态显示/隐藏某些页面中的portlet。
例如,基于我的第一页的提交操作,我需要将事件发布到其他portlet。其余的portlet需要处理事件值,应该决定是否需要显示portlet。 :(
请帮帮我!
答案 0 :(得分:0)
在您的事件处理程序中,您可以轻松设置
response.setRenderParameter("showSomething", "true");
然后,在渲染
中if(response.getParameter("showSomething").equals("true")) {
// actually show something
} else {
// just render nothing
}
(伪代码:添加空检查并使其更加优雅)
您需要为那些未显示的portlet隐藏portlet边框。或者,您可能希望查找portlet的CSS类并为您的portlet呈现CSS { display:none; }
指令,尽管这很危险:您的页面管理员需要一种移动portlet或删除它的方法。完全隐藏所有控件有效地使得无法知道页面上的portlet。