查看两个不同portlet之间的导航?

时间:2013-03-05 20:06:23

标签: jsf portlet jsf-1.2 websphere-portal jsr286

我正在使用WebSphere Portal 7上的JSF 1.2开发JSR 286 portlet。我一直在尝试找到一种在同一页面上的两个portlet之间进行导航的方法。基本上:

  1. 单击Portlet A上的按钮。
  2. Portlet B导航到不同的视图(基于Portlet A的信息),而Portlet A保持与以前相同的视图。
  3. 他们正在使用相同的源代码,所以我认为我可以通过使用PhaseListener和portlet命名空间ID来实现这一点 - 我有点可以使用它,但我不禁认为必须有更好的这样做的方法。

    在继续这条路线之前,有没有人知道我在两个portlet之间进行导航的正确方法?

2 个答案:

答案 0 :(得分:2)

我为使portlet进行通信所做的一件事是使用事件。在您的情况下,您将设置Portlet A以发布您的buttonClick事件并设置Portlet B来处理buttonClick事件。在Portlet B中,您将设置一些渲染参数,然后在doView中使用它来根据需要更新UI。您还需要在两个portlet之间创建连线。

这是IBM关于portlet通信的文档的链接。可能会有更多的想法更适合或者让你继续下去。

http://www-10.lotus.com/ldd/portalwiki.nsf/xpDocViewer.xsp?lookupName=IBM+WebSphere+Portal+7+Product+Documentation#action=openDocument&res_title=Portlet_communication_wp7&content=pdcontent

答案 1 :(得分:0)

查看Liferay Faces Portlet Bridge Demos

“JSF2 IPC(Events) - Customers”演示可能就是您所需要的。 你为什么还在使用JSF 1.2?即使在WAS 7上的WebSphere Portal 7上也可以使用JSF 2.0。只需使用Mojorra库和PARENT_LAST类加载。