Chapter 3. Developing on Portal Server

This section describes extension points for developing for Portal Server

3.1. Portlet Development

Portlets for Portal Server fall into two broad categories:

The steps to develop a new Portlet are as follows:

  1. Extend either com.arsdigita.portal.Portlet or com.arsdigita.portal.apportlet.AppPortlet. This is the domain object for your portlet.

  2. Extend com.arsdigita.bebop.portal.AbstractPortletRenderer This class handles the view or presentation side of your portlet.

  3. If your portlet requires any user configuration ( all but the most trivial do), extend com.arsdigita.bebop.portal.PortletConfigFormSection This is usually a form that takes user input such as text or a URL, for example, and then calls the appropriate setter methods that you have included in your portlet domain object.

  4. Develop a supporting pdl file if any data model assistance is needed for your portlet.

  5. Finally, build an initializer for your portlet that will make it available to the server, and include this initializer in your enterprise.init server startup configuration file.

3.1.1. Developing Independent Portlets

Independent Portlets should extend the com.arsdigita.portal.Portlet class. They will not be rendered with a link to a parent application in the portlet header.

3.1.2. Developing Portlets for Applications

Application Portlets should extend com.arsdigita.portal.apportlet.AppPortlet. This type of portlet will have a link to the parent application rendered into the portlet header.