Configuration common to most portlets


Element: portlet-entry

Definition of a portlet.

Attribute NameDescription
nameName of portlet. This name MUST be unique
type Type of portlet-entry

Allowable values
abstract Portlet is one which cannot be created directly. It acts as a portlet template, useful for defining common properties for a group of related portlets.
instance Portlet is the basic entry. It should provide all the necessary information to create the portlet, at least the classname.
ref Portlet is based on an existing <portlet-entry> which can be of any type, including other ref entries. The engine will follow all refs until it finds either an abstract or instance entry, override all parameters found in the these definitions by those in the ref definition's, and then create the portlet using the combined definitions
hidden

Allowable values
false
true
application Portlet will be displayed in a full screen, i.e. the only portlet displayed.

Allowable values
false
true

Element: meta-info

Typically optional information that describe the item (portlet, parameter, ...). Meta-info is used by the Jetspeed customizer. The information is also available to some portlet types.

Element: title

Title of item (portlet, parameter, ...)

Parent ElementDefault
portlet-entryValue of portlet-entry's name attribute
parameterValue of parameter's name attribute

Element: description

Description of item (portlet, parameter, ...). Their is no default description.

Element: icon

Path and file name of icon relative to <jetspeed_home>

Element: classname

Java class uses to generate content.

Element: parameter

The hidden attribute controls whether the customizer will display the parameter.

This element is optional.

Attribute NameDescription
nameName of portlet, parameter,...
valueDefault/initial value
type Data type of value. When this attribute is not present any character string is accepted

Allowable values
booleanOnly true or false are allowed as a value for this parameter
styleDesignates the parameter as having a custom presentation style. The presentation style name is defined as value of [parameter name].style parameter. For example, if parameter named "symbols" is designated with type="style", then the style name is defined as value of "symbols.style" hidden parameter. Each parameter designated as having a custom style, will be displayed in the default portlet customizer using the defined parameter style. For sample parameter styles and instructions on how to develop your own, see javadoc for org.apache.jetspeed.modules.parameters package. See below for example registry entry.
invisibleParameters with this type are rendered as hidden inputs in the portlet customizer form.
hidden

Allowable values
false
true


Parameter NameDescription
_display Initial display state of portlet.

This parameter can only be set in PSML.

If not present, Default: normal

ValueDescription
closedPortlet is closed and not visible
minimizedPortlet is minimized. Only title is displayed
normalPortal and content is displayed
_showtitlebar Should the Portlet's title bar be displayed. The title bar includes the Portlet title and the action buttons (Minimize, Maximize, Customize, and Close). When the title bar is disabled, i.e. value = false, the user will only be able to add or remove, if permissions allow, the portlet the customizer.

This parameter can be set in PSML or in the .xreg files.

This parameter was added in version 1.3a3.

If not present, Default: true

ValueDescription
truePortlet Title Bar is displayed
falsePortlet Title Bar is NOT displayed
_TimeToLive How long, in milliseconds, should the portlet remain idle in cache. This parameter is used to override the default value.

Example: _TimeToLive = 300000 which is 5 minutes (5 * 60 * 1000) and the portlet cached expires every 3 minutes.

TimeActivity
1:00Portlet created
1:00User Joe displayed the portlet content
1:03Portlet marked as expired, the portlet's refresh() is called, the portlet is no longer expired
1:05User Sam displayed the portlet content
1:06Portlet marked as expired, the portlet's refresh() is called, the portlet is no longer expired
1:09Portlet marked as expired, the portlet's refresh() is called, the portlet is no longer expired
1:12Portlet marked as expired. Since the portlet has been idle for 7 minutes, the portlet will be removed from cache.

This parameter can be set in PSML or in the .xreg files.

This parameter was added in version 1.3a3.

_control Overrides default portlet control with control specified.

This parameter can be set in PSML or in the .xreg files.

If not present, default portlet control, as specified by services.PortalToolkit.default.control, is used.

This parameter was added in version 1.4b2.

Element: url

Since the configuration file is an XML file, some character must be represented using XML entities.

CharacterXML Entity
&&amp;
<&lt;
>&gt;
Allowable ProtocolsDescription
http://Standard HTTP protocol is used to retrieve file or data
&nbsp; File is local and path is relative to <jetspeed_home>

Good URLs:

<url>http://jakata.apache.org/jetspeed</url>
Basic URL
<url>http://search.yahoo.com/bin/search?p=jetspeed</url>
1 Parameter passed
<url>http://search.yahoo.com/search?p=jetspeed&amp;n=100</url>
2 Parameter passed

Bad URLs:

<url>index.html</url>
No protocol, http:// or hostname
<url>http://search.yahoo.com/search?p=jetspeed&n=100</url>
Contains & instead of &amp;.

Remote URL caching:

Portlet types extending the FileWatchPortlet (for example, NewRSSPortlet), read their remote URLs using the JetspeedCache. JetspeedCache uses DiskCacheDaemon to manage refreshing of these URLs upon their change or expiration. See the DiskCache for further details.

Element: security-ref

Used by customizer to limit access to this item (portlet, parameter,...)

Attribute NameDescription
parentReference to an existing security constraint

See the Security for further details.

Element: media-type

Media types that can display and configure portal.

Media types are define in <jetspeed_home>/WEB-INF/conf/media.xreg

Attribute NameDescription
refMedia type.

Example of Registry Entry

Abstract Portal Entry

<portlet-entry name="RSS" hidden="false" type="abstract" application="false">
    <meta-info>
        <title></title>
        <description></description>
    </meta-info>
    <classname>org.apache.jetspeed.portal.portlets.NewRSSPortlet</classname>
    <parameter name="stylesheet" value="/WEB-INF/xsl/rss.xsl" hidden="false">
        <meta-info>
            <title></title>
            <description></description>
        </meta-info>
        <security role="admin"/>
    </parameter>
    <media-type ref="html"/>
    <media-type ref="wml"/>
</portlet-entry>

Reference Portal Entry

<portlet-entry name="RSS" hidden="false" type="ref" application="false">
    <meta-info>
        <title></title>
        <description></description>
    </meta-info>
    <parameter name="" value="" hidden="false">
        <meta-info>
            <title></title>
            <description></description>
        </meta-info>
        <security role=""/>
    </parameter>
</portlet-entry>

Portal Entry using Parameter Styles

<portlet-entry name="StockQuotePortlet" hidden="false" type="instance" application="false">
    <meta-info>
        <title></title>
        <description></description>
    </meta-info>
    <parameter name="sort" value="Symbol" type="style"
        hidden="false">
       <meta-info>
            <title>Sort</title>
            <description>Column to sort by</description>
       </meta-info>
    </parameter>
    <parameter name="sort.style" value="ListBox" hidden="true"/>
    <parameter name="sort.style.items" value="Symbol,Volume,PChange" hidden="true"/>
    <parameter name="columns"
        value="Symbol,Quote,Date,Time,Change,PChange,Open,High,Low,Volume"
        type="style" hidden="false">
        <meta-info>
            <title>Columns</title>
            <description>Columns to display</description>
        </meta-info>
    </parameter>
    <parameter name="columns.style.items"
        value="Symbol,Quote,Date,Time,Change,PChange,Open,High,Low,Volume"
        hidden="true"/>
    <parameter name="columns.style.layout" value="$eastwest"
        hidden="true"/>
    <parameter name="columns.style" value="CheckBoxGroup"
        hidden="true"/>
    <parameter name="symbols"
        value="MSFT,EMC,SUNW,ORCL,IBM"
        type="style" hidden="false">
        <meta-info>
            <title>Symbols</title>
            <description>List of comma-separated stock symbols</description>
        </meta-info>
    </parameter>
    <parameter name="symbols.style" value="TextArea" hidden="true"/>
</portlet-entry>

Example of use in Portal