Jsf Liferay中IPC后的导航

Jsf Liferay中IPC后的导航,jsf,liferay,ipc,liferay-6,portlet,Jsf,Liferay,Ipc,Liferay 6,Portlet,我们希望在收到IPC事件后在Liferay中导航到另一个portlet。 因此,我们从一个portlet发送事件,实现从MVCPortlet扩展的第二个portlet,并接收包含一些信息的事件! 因此,我们希望在Liferay中导航到第二个portlet 我们接收活动的方法是 @ProcessEvent(qname = "{http://liferay.com}empinfo") public void handleProcessempinfoEvent(final javax.portlet.

我们希望在收到IPC事件后在Liferay中导航到另一个portlet。 因此,我们从一个portlet发送事件,实现从MVCPortlet扩展的第二个portlet,并接收包含一些信息的事件! 因此,我们希望在Liferay中导航到第二个portlet

我们接收活动的方法是

@ProcessEvent(qname = "{http://liferay.com}empinfo")
public void handleProcessempinfoEvent(final javax.portlet.EventRequest request, final javax.portlet.EventResponse response) throws javax.portlet.PortletException, java.io.IOException
我们还重写了com.liferay.util.bridges.mvc.MVCPortlet中的方法,但在发送事件后没有调用任何方法

是否有办法在liferay 6.1.2中导航


Thx Tim事件是否已处理?导航到第二个portlet是什么意思?。默认情况下,事件只会分发到显示在同一页面上的portlet。如果希望在存在于不同页面上的portlet上接收事件,则必须显式配置Liferay以将事件分发到同一站点中的所有页面。请注意,这可能会影响您的性能。此外,一旦导航到另一个页面,默认情况下该页面上的portlet状态将被重置

检查以下和相关的portal.properties:

#
# Set this property to specify how events are distributed. If the value is
# "layout-set", then events will be distributed to all portlets contained in
# a layout set. If the value is "layout", then events will be distributed to
# all portlets that are present in a layout.
#
portlet.event.distribution=layout

#
# Set this property to specify how public render parameters are distributed.
# If the value is "layout-set", then public render parameters will be
# distributed to all portlets contained in a layout set. This will only work
# correctly if the property "layout.default.p_l_reset" is set to false. If
# the value is "layout", then public render parameters will be distributed
# to all portlets that are present in a layout.
#
portlet.public.render.parameter.distribution=layout

#
# Set the default value for the "p_l_reset" parameter. If set to true,
# render parameters are cleared when different pages are hit. This is not
# the behavior promoted by the portlet specification, but is the one that
# most end users seem to prefer.
#
layout.default.p_l_reset=true
如果您打算导航到另一个页面,您还必须注意,portlet API没有涵盖这一点。因此,您必须确定如何查找相关页面、其URL以及如何重定向。在ActionHandlingPortlet中使用更多的逻辑并在那里执行重定向可能更容易:至少您将只处理一个操作。每个操作可能会处理多个事件-因此,如果它们发生冲突,将触发哪个潜在重定向尚未定义。如果一个真正的重定向来自EventHandler,我会认为它是一个相当意外的行为,但从ActionHandler可以理解