Wednesday, March 11, 2009

JSR 286 vs JSR 168

JSR 286 vs JSR 168
Features JSR 168 Specification JSR 286 Specification
Inter Portlet Communication

* Only supported within the same portlet application using session attributes
* Target portlets will only "see" messages during next render request.

Add additional coordination capabilities

* Limited only to String Values.
* Sharing of session data beyond the current Portlet application.
* Sharing of render parameters across portlets.

Life cycle Portlets cannot update their state during a render request: "event" handling not really possible New 3rd life cycle phase before rendering
Portlet Filters Doesn't Support

* Supports Allow on the fly transformations of information in both the request to and the response from the portlet
* Defined in portlet.xml


* Extended Cache support.
* Allow public cached content for multiple users

Common Web Frameworks

* Servlet dispatching not supported from process Action.
* Needs Portals Bridges or similar solutions.
* JSTL support very limited

* Extended Cache support.
* Allow public cached content for multiple users.
* Improved support for web frameworks (Struts, JSF, Spring) Allow servlet dispatching during all lifecycle calls: processAction, processEvent, render, serverResource.
* Extended JSP tag library , support for JSF

Non HTML Resources(pdf, doc, images etc.)

* A portlet can only render html fragments.
* Have to fallback/delegate to the servlet container.
* Requires coordination between portlet and servlet.

Posted by Vivek & Adeeti