Home
Jasig Sponsored Portlets
These portlets have been through the incubation process and emerged as sponsored projects.
- Announcements Portlet
- Basic LTI Portlet
- Bookmarks Portlet
- Calendar Portlet
- Email Preview Portlet
- Jasig Widget Portlets
- NewsReaderPortlet
- Notifications Portlet (Manchester)
- Sakai connector portlet
- Simple Content Management Portlet
- Weather Portlet
- WebProxy
Jasig Incubating Portlets
These portlets are currently incubating.
- Classifieds Portlet
- Confluence Portlet
- Courses Portlet
- Human Resources Dashboard Portlets
- Survey Portlet
Community Portlets
These portlets have been developed and offered for sharing by Jasig community members.
- Athletics Portlet
- Bookmarks Portlet - Alternative XBEL & Struts Bridge based
- Briefcase
- CampusLifePortlets
- Computer Labs
- Contacts Portlet
- Content Management Portlet
- Course Schedule Portlet
- DeployerPortlet
- Dining Portlet
- ERP Integration Portlets and Collaboration
- ESUP File Manager Portlet
- ESUP-Portail Helpdesk
- ESUP-Portail Printing System
- EsupSympa
- EsupTwitter
- Facebook Portlet
- Facebook Portlet (Connect API)
- Functional Tests Portlet
- JForum Portlet
- KSU Bookmarks
- Mail Portlet
- Map Portlet
- MyCourses Portlet
- Notepad Portlet
- Photo Viewer AJAX Portlet
- RenderCountPortlet
- Reset Settings Portlet for uPortal 2.4, 2.5
- Self Service Accounts Portlet
- Self-Service Accounts Portlet
- Simple RSS Portlet
- Tabbed RSS Portlet
- Tabbed Search Portlet
- Tweetal - a Twitter portlet
- UC Irvine Facebook Portlet
- Unconference Feedback Portlet
- UserRssPortlet
- XMLPortlet - For porting IChannels and new development
- XSLT Portlet - UW Madison
- Xythos Portlet
- YahooWeatherPortlet
Note: Administrative Portlets are listed in the uPortal Manual.
Portlet Incubation
Portlets that should become Jasig hosted portlets should be submitted for incubation following the process documented in the Incubation wiki space.
Portlet Release Manager
Jasig has defined the role of Portlet Release Manager to help facilitate the Jasig portlet life cycle.
Portlet Developer Information
Developers who wish to share their portlet on this space simply need to add a new child page to the Community Portlets page, then enter their portlet information using the "Portlets Template" provided in this space.
Can't find the portlet you want? We provide resources for users to develop their own portlets.
Portlet Solutions Flowchart
Portlet Development FAQ
- Integrating Alfresco with uPortal — Alfresco offers a portlet version of their web application. This can be
- Sharing uPortal's Connection Pool with Portlets on Tomat 5.5 — Portlets, being their own application on Tomcat, do not inherently have access to uPortal's connection to the database. Fortunately, however, you can move uPortal's database connection context to a global context which is visible to your portlets. Many thanks to Chris Holdorph form UNICON for his insight, and Gregg Lagnese, MicroDeveloper, Inc. for his online Oracle JNDI reference http://www.microdeveloper.com/html/JNDI_Orcl_Tomcatp3.html. As a note, these modifications were made on uPortal 2
- JBoss Forums Portlet — The JBoss Forums Portlet http://labs.jboss.com/portal/index.html?ctrl:id=page.default.downloads&project=portletswap&category=.portlets.collaborate can only be deployed in the JBoss Portal. There are several calls to JBoss portal specific services, which do not exist in uPortal.
- Clustering JSR-168 Portlet Applications in Tomcat — JSR-168 Portlet applications represent a special challenge when it comes to clustering within Tomcat (or any other servlet container, for that matter). In order to effectively cluster web applications, session data must be replicated or shared between the nodes in the cluster. Otherwise, the user experiences a complete loss of context during a node failover. While Tomcat has provided session replication for quite some time, it has not supported replication of session changes resulting from a cro
Portlet Development Technologies and Frameworks
- portlet defineObjects tag extension — The portlet tag library includes a tag called <portlet:defineObjects/>. This tag establishes three objects; renderRequest, renderResponse and portletConfig for use in included portlet JSP pages. Although you can certainly access some useful information through these objects using the JSTL tag library, accessing scoped variables and the like will require the use of scriptlets. JSTL users are used to having access to scoped variables via the JSTL implicit objects (requestScope, sessionScope, ap
- Struts Bridge — This document will explore how a Struts http://struts.apache.org/ application can be modified to work as a JSR168 compliant portlet. It will hopefully serve as a useful reference guide for those planning to install the Struts Bridge http://portals.apache.org/bridges/multiproject/portals-bridges-struts/index.html into their existing Struts applications. As an example we'll use the iBATIS http://ibatis.apache.org/ version of Petstore application, the Petstore is a commonly implemented demonstratio
Portlet Development
Information about the Portlet APIs and Jasig's best practices for portlet development.
- Example Portlets
- Portlet Request Lifecycle
- Accessing Portal Roles and User Attributes — Accessing uPortal groups and user attributes from the portlet environment.
- Portlet Preferences
- Logging Best Practices
- CSS Best Practices — CSS usage in portlets requires care by the portlet developers to avoid styling conflicts with both the portal framework and other portlets on the same page.
- Portlets using Proxy CAS
- JavaScript Best Practices — JavaScript usage in portlets requires care by the portlet developers to avoid library, version and namespace conflicts with both the portal framework and other portlets on the same page.
- Security Information for Portlet Developers
- Automatically Reload a Portlet
- Setting a New Item Count
- Portlet Modes — Using and switching between JSR-168 portlet modes
- JSP Best Practices
- Contributing Portlets to Jasig
- AJAX in a JSR-168 Portlet — Recommended solutions for using AJAX in a portlet
- Portlet Internationalisation
- Techniques for integrating AJAX within Spring Web Flow Portlets
- Minimized WindowState Handling
- Accessibility and Portlet Development
Troubleshooting Portlet Deployment
Sharing Portlets
Portlets from other Portals
External resources
- Spring PortletMVC
- A framework that provides an MVC layer for the Portlet API in the same way that Spring WebMVC does for the Servlet API.
- TestingPortlets
- PORTLETUNIT is a jUnit Java Unit Testing Framework for testing JSR-168 portlets. It is built on ServletUnit and Pluto. It provides a mock portlet container as ServletUnit provides a mock servlet container.
- Spring in Channels and Portlets
- Tapestry Portlet Support
- Messaging in portlets, test portlets
Portlet Community
- Freshmeat Portlet category lists several projects that are portlets or have portlet interfaces.
- Google Portlet
- Portlet Open Source Trading Site (POST)
- This is sort of a clearinghouse for portlets started by Plumtree, Documentum, BEA, and Sun.
- java.net Portlet Community
- Portlet-related open source projects, articles, tips, news, product announcements, blogs and FAQs. Contains another clearinghouse for portlets called Gems
- Ajax Patterns Portlets The work that Claude Hussenet has done is quite nice. He's using DWR, an AJAX implementation that I've been using on another project.
- JSR-168 Yahoo! Group
- JBoss PortletSwap - downloadable portlets, portlet forums, etc
- JA-SIG Clearinghouse - downloadable portlets, channels, other java projects
- Portlets from other Portals
Portlet Training
- Portlet Development - Unicon, Inc.
- A 3-day course serving as an introduction and guide to developing standards-compliant (JSR-168) portlets.
- Next course: http://www.unicon.net/content/portlet-development-training-course