11 August 2011

Vaadin Inter-portlet Communication (IPC) for Liferay

I recently started working on a project in Java built on the Liferay enterprise portal and Vaadin UI framework.  There's not a TON of writing done on this combo, so I thought I'd write up anything remotely shmancy in case someone else can use it.

One of the tenets of computer science is Don't Repeat Yourself.  When writing portlets for Liferay, we want to keep portlets small and modularized to increase their reusability.  Unfortunately, when using multiple portlets on a Liferay page, they can't talk to each other without refreshing the page.  With the IPC add-on linked below, you can add message listeners and events to your portlets to update other portlets without refreshing.

Check out this Vaadin add-on written by Artur Signell.
Add-on is here: http://vaadin.com/directory#addon/vaadin-ipc-for-liferay
Source is here: https://github.com/R2R/LiferayIPC-for-Vaadin
Demo portlets are here: https://github.com/R2R/LiferayIPC-for-Vaadin-demo

Gist of an implementation I wrote is here: https://gist.github.com/1139809