Fórumok

Portlet events not communicated across pages

Chris Foran, módosítva 10 év-val korábban

Portlet events not communicated across pages

New Member Bejegyzések: 2 Csatlakozás dátuma: 2013.10.21. Legújabb bejegyzések
I've found a previous thread (http://www.liferay.com/community/forums/-/message_boards/message/4160202) indicating that portlet events were only being communicated to portlets on the same page. However, there did not appear to be a resolution to the issue.

I am experiencing the same issue as desribed in this post from 4 years ago. That is, the event is being communicated to portlets on the same portal page but not to portlets on a diferent portal page.

Is this a bug in Liferay 6.1?

My dev environment is Liferay 6.1, Spring 3.0 using JSPs.

I have tried the following configurations in the portal-ext.properties file. Have found these options posted from several different sources but they do not fix the issue.

portlet.event.distribution=ALL_PORTLETS

portlet.event.distribution=ALL

portlet.event.distribution=layout-set

Any thoughts on how to make this work?
thumbnail
Manali Lalaji, módosítva 10 év-val korábban

RE: Portlet events not communicated across pages

Expert Bejegyzések: 362 Csatlakozás dátuma: 2010.03.09. Legújabb bejegyzések
Hi Chris,

You can implement IPC event by sharing parameters across pages in following way:

I have attached a sample IPC event based portlet that works on LR6.1.20EEGA2 by passing parameter into another page through event publishing.

1. Create a page named 'test' with friendlyUrl /test and add event listener portlet.
2. Create a home page and add event publishing portlet.
3. Add following property to portal-ext.properties.
portlet.event.distribution=ALL

HTH,
Manali
Nasir Hussain, módosítva 9 év-val korábban

RE: Portlet events not communicated across pages

New Member Bejegyzések: 18 Csatlakozás dátuma: 2010.04.26. Legújabb bejegyzések
portlet.event.distribution=ALL


This will not work, use portlet.event.distribution=layout_set
You can check code in com.liferay.portal.action.LayoutAction.processPortletRequest

if (!actionResponseImpl.getEvents().isEmpty()) {
if (PropsValues.PORTLET_EVENT_DISTRIBUTION_LAYOUT_SET) {
layoutTypePortlets = getLayoutTypePortlets(
layout.getGroupId(), layout.isPrivateLayout());
}
...