Monday, July 18, 2005

Half Object plus Protocol Pattern for Portlets

Switching from one portlet to another results in losing the state of the first portlet. Due to this behavior of portlets, it becomes difficult to use them for rich client applications. Author Marc Domenig suggests half-object + protocol pattern (:-) interesting name) can be useful in such scenarios.

Rich-Client Portlets And Half-Object Protocol Design Pattern

We have never faced such kind of requirements in our projects so I am not sure in what situation it can be useful. But It will be good to see similar support directly in portal servers.

What do you think? Have you faced similar problems in your projects?

For those who are not aware of "Half Object plus Protocol (HOPP)" design pattern can have an introduction to it at


  1. Anonymous10:02 AM

    my experience is that maintailing portlet states in general is a challenge across pages. each portlet is basically an application in itself and multiple portlets on multiple pages makes this issue challenging to deal with. Not to mention that with different vendors product this will present different behavior.

  2. Anonymous1:45 PM

    When a portlet is being edited, we have had success by locking down the page. The page stays locked until the user submits or cancels their changes. For portlets we use a global variable for the lock and lock message and for the browser controls we use onbeforeonload so atleast the user is given a chance to cancel their browser action until their edit is submitted. Easy but effective.