Developing Light-weight AJAX Utility Portlets for uPortal
Discussion in the uPortal IRC channel recently centered on the potential for developing a set of general utility portlets to be distributed with uPortal. Such portlets might include things like search and maps, a calculator, a dictionary, and other small, useful components. After that discussion, I set out to kick-start the project with a few evenings of portlet development.
Developing the Portlets
In the two evenings I set aside for developing utility portlets, I was able to create initial versions of many of the proposed portlets. Combining development tools like Spring and jQuery with publicly available AJAX-friendly data sources like Google and Yahoo quickly resulted in a number of usable proof-of-concept portlets.
While the Google AJAX APIs have been available for several years, I've been pleased to see that they have continued to improve with time. In addition to more fully-featured search and maps APIs, Google has also published a language translation API. Other services are also offering increasing amounts of data via AJAX-friendly formats such as RSS, JSON, and XML.
Initial Results
The initial versions of these portlets are now available in the Jasig subversion repository sandbox. I'm hopeful that this collection will eventually grow into a compelling set of utility portlets that are bundled with uPortal. I also envision that this project might someday serve as an example of best practices for javascript development in the portal, as well as a testament to the feasibility of creating attractive, lightweight portlets for the uPortal project.
So far, the portlet collection includes the following:
- Search portlet
- Maps portlet
- Tabbed RSS portlet
- Dictionary and thesaurus
- Language translation
- Stock ticker and personalized financial news
- Calendar
I've included a set of screenshots below showing the current interface of some of the individual portlets, as well as a image of them collected together in one tab. If you're interested in trying out the portlets, they are available in the Jasig sandbox repository at https://www.ja-sig.org/svn/sandbox/JasigWidgetPortlets/trunk.
Screenshots
Google Maps:

Google Search:

Google RSS:

Language Translation:

Tab with widgets included:
![]()
- Jennifer Bourey's blog
- Login or register to post comments
