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 Development
- Accessibility and Portlet Development
- Accessing Portal Roles and User Attributes — Accessing uPortal groups and user attributes from the portlet environment.
- AJAX in a Portlet — Recommended solutions for using AJAX in a portlet
- Automatically Reload a Portlet
- 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.
- Example Portlets
- 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.
- Portlet Modes — Using and switching between JSR-168 portlet modes
- Portlets using Proxy CAS
- Preferences
- Security Information for Portlet Developers
- Using the Jasig Parent POM
Portlet Development FAQ
- 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 cross-context call from one webapp to another.
- Integrating Alfresco with uPortal — Alfresco offers a portlet version of their web application. This can be
- JBoss Forums Portlet — The JBoss Forums Portlet can only be deployed in the JBoss Portal. There are several calls to JBoss portal specific services, which do not exist in uPortal.
- 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. As a note, these modifications were made on uPortal 2.5.2 and Tomcat 5.5. I'm uncertain how uPortal's inherent support of portlets in v3 will affect database context visibility for individual portlets, or how much these steps differ for Tomcat 5.0 and other versions of uPortal.
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, applicationScope etc.).
- Struts Bridge — This document will explore how a Struts 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 into their existing Struts applications. As an example we'll use the iBATIS version of Petstore application, the Petstore is a commonly implemented demonstration of a fictitious e-commerce site. The iBATIS version of Petstore is built with the Struts framework and incidentally also provides an example of the iBATIS DAO framework and SQL Maps framework.
Portlets from other Portals
Sharing Portlets
Troubleshooting Portlet Deployment
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
