Extension mechanism is a functionality that makes it possible to override the portal resources in an almost
plug-and-play fashion - just drop in a .war archive with the resources, and configure its position on the portal's
This way any customizations of the portal do not have to involve unpacking and repacking the original portal
.war archives. Instead, create your own
.war archive with changed resources that override the resources in
the original archive.
A web archive packaged in a way to be used through the extension mechanism is called portal extension.
There are two steps necessary to create a portal extension.
First, declare PortalConfigOwner servlet context listener in
of your web application.
Example: Example of a portal extension called sample-ext:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE web-app PUBLIC -//Sun Microsystems, Inc.//DTD Web Application 2.3//EN
Then, add the servlet context name of this web application to a proper location in the list of Dependencies of the PortalContainerDefinition of all the portal containers that you want to access its resources.
After this step, your web archive will be on the portal's unified classpath, and unified servlet context resource path. The later in the Dependencies list your application is, the higher priority it has when resources are loaded by portal.
See the 'Configuring a portal' section for example of PortalContainerDefinition, that has sample-ext at the end of its list of Dependencies.