Wesley's Blog
Tuesday Aug 21, 2007
The Public Draft of JSR-286 (Portlet 2.0) is being reviewed.
The Public Draft of JSR-286 is being reviewed.It has introduced a couple of dozens features and significant changes over the previously published Early Drafts.
Some important changes include withdrawing support for portal session scope and serveFragment() life cycle.
The received feedback indicated that other coordination mechanisms introduced by the spec (eventing and public render parameters) were sufficient to address use cases that would require maintaining the state across portlet applications.
The main purpose for serveFragment() was to address AJAX coordination’s use case by providing access to the portlet lifecycle. However practically this would require not only server side part (serveFragment) but also "standardized" client side component (what was referred XPR- XML Portlet Request). It might have been considered as premature effort particularly since newly introduced serveResource() lifecycle already addresses non coordinated AJAX use cases and potentially it could be extended to cover coordination use cases as well.
There are significant improvements in the area of cachability. The expiration-caching model was extended to support validation based caching. Furthermore the refined levels of cacheability were introduced to increase cacheability by browser or intermediary devices.
Support for forward for action, event and render phase was added.
We should not have more complains that portlets do not supporting cookies :). Special consideration has been made for handling headers and cookies.
For convenience more annotations was added (processAction).
Also worth noticing is an introduction of the runtime options and URL properties that together form viable extension mechanism.
This is just to mention few. The spec is available on http://jcp.org/en/jsr/detail?id=286
and the 30 days review ends in Aug 27 so please do not wait too long and send your comments to jsr-286-comments@jcp.org
Posted at 02:47PM Aug 21, 2007 by wesleybu in Sun | Comments[1]
Wednesday May 23, 2007
JavaOne 2007 and 286 Portlets
JavaOne 2007 is over. There were a lot of cool stuff and those few days passed very quickly.
Naturally Portal and Portlets related technologies were present as well.
Stefan Hepper and I teamed up to present what JSR-286 EG is cooking up in the session
"What's New in the Java Portlet Specification 2.0 (JSR 286)?"
We had an excellent turnout and plenty of questions.
I am glad seeing still growing enthusiasm about portlets and portals.
You may download session's slides from here.
Subbu Allamaraju who is also part of JSR-286 EG had very interesting presentation on
Portlets and Ajax - Building More Dynamic Web Apps with JSR286
There was also very good hands-on "Dynamic Portals" BOF held by Greg Ziebold and Jai Suri.
Posted at 04:07PM May 23, 2007 by wesleybu in Sun | Comments[0]
Tuesday May 15, 2007
Portlets, container, tools and more
Portlets are Web-based components managed by portlet containers that supply dynamic content. Portals employ portlets as pluggable user-interface components—a presentation layer—for information systems. The Java Portlet Specification achieves interoperability among portlets and portals by defining the APIs for portlets and by standardizing the rules for preferences, user data, portlet requests and responses, deployment, packaging, and security.This is an excerpt from the article that I recently published on Sun Developer Network (SDN) on Portlets.
Thanks Marina for helping out.
The article spotlights JSR 168 and the associated software, Portlet Container 1.0 and the NetBeans Portlet Plug-in. Also described are sample portlets and JSR 286 in its draft state.
Please check it out at http://developers.sun.com/portalserver/reference/techart/jsr168/
Posted at 06:35PM May 15, 2007 by wesleybu in Sun | Comments[0]
Friday Nov 17, 2006
Checking out Source Code from Open Source Portlet Container using NetBeans 5.5
Portlet Container Driver got a facelift - Great job Deepak!

Well, let's start from the beginning.
One can get instructions how to set up and use Open Source Portlel Container from
Enterprise Class Portlet Container Open Source Project and things work as advertised.
However this time I wanted to try NetBeans 5.5 SVN plug-in instead of doing "svn checkout" as it is recommended in step 1 of Getting Started with Portlet Container
To install svn plugin:
- go to tools->UpdateCenter that brings Update Center Wizard
- if you need to configure proxy (not directly connected to Internet) press "config proxy" button.
- select NetBeans/NB Hotfix and Third Party as Update Centers to be searched and clicked next
- pick up svn modules from "Available Updates and New modules" and clicked finish
-
Subversion menu is installed in NetBeans main tool bar.
To download Portelt Container source code directly using NB5.5
- go to subversion->checkout
- specify
- Repository URL: https://portlet-container.dev.java.net/svn/portlet-container/trunk
- User: Guest
- leave password blank and configure proxy if needed then click "next"
- in the following page specify
- Repository Folders: trunk and
- Local Folder: <Users/wesley/src> and click "finish"
Missing Subversion Error
In case if you had bad luck and I got error message:
"NetBeans Subversion support requires Subversion executable!
Install Subversion 1.3 (http://subversion.tigris.org) or later, add it to PATH,
test by running 'svn --version' from command line, and finally restart the IDE, please. "
even though you have already installed "SVN"
This is known bug from NetBeans5.5 Beta and it seems that it did not make to be fixed.
The work around that I did ( on the Mac) is to specify path to svn in NetBean config file.
Config file is called "netbeans.config" and is located (on Mac) in
/Applications/NetBeans5-5.app/Contents/Resources/NetBeans/etc
I added new switch " -J-Dsubversion.path=/usr/local/bin" (in netbeans_default_options)
where "usr/local/bin" is the location of by SVN
After restarting NetBean5.5 things work fine and you can download source code dierctel from NetBeans
I followed the rest of instruction install Portlet Container Driver and used CLI to deploy the
"Hello World" portlet and then using PC Driver UI to created second portlet window (from the same Hello World portlet portlet) and got

Posted at 04:45PM Nov 17, 2006 by wesleybu in Sun | Comments[1]
Friday Aug 04, 2006
First Early Draft of Portlet 2.0 Specification
Portlet 2.0 EG (JSR 286) was formed in February of this year.It was a lot of excitement to start working on the portlet specification and extend what had been defined in version 1.0 (JSR 168).
Since version 1.0 a lot of happen in portal space. The spec has been put through the real life tests and quite few "gaps" were identified that needed immediate attention. Probable the single biggest complain was lack of inter portlet communication (the spec only provided portlet session for that purpose). Naturally Portal vendors filled up those gaps by providing vendor specific solutions but then it led to the situation that portlets which use those solutions are again non portable.
At the same time OASIS TC has been "closing" on the version 2.0 of the WSRP (Web Services for Remote Portlets) specification. This is very complementary specification and in the past the both specs were quite well coordinated so that one should not be surprised that JSR 286 EG put high priority on alignment of WSRP 2.0 and Portlet 2.0 Spec.
As a result the first public draft of Portlet 2.0 Specification defines essential functionalities of the portlet/portlet container allowing support for WSRP 2.0 features. It is important to notice that this draft does not contain all the functionalities of the Portal 2.0 Spec. They will be introduced in future draft.
The early draft of the portlet 2.0 spec is available on: http://jcp.org/aboutJava/communityprocess/edr/jsr286/
Posted at 04:02PM Aug 04, 2006 by wesleybu in Sun | Comments[0]

