Last updated Dec 5, 2024

JIRA Developer Documentation : Portlet Plugin Module - deprecated

Deprecated:

In JIRA 4.0, portlets were replaced by gadgets. For details, please see Gadgets and JIRA Portlets.
In JIRA 5.0, all portlet-specific code has been removed from JIRA plugin points and APIs. See Java API Changes in JIRA 5.0.

Purpose of this Module Type

A portlet plugin module defines a portlet that users can add to their Dashboards.

Configuration

The root element for the portlet plugin module is portlet. It allows the following attributes and child elements for configuration:

Attributes

Name

Required

Description

Default

class

yes

The class which implements this plugin module. The class you need to provide depends on the module type. For example, Confluence theme, layout and colour-scheme modules can use classes already provided in Confluence. So you can write a theme-plugin without any Java code. But for macro and listener modules you need to write your own implementing class and include it in your plugin. See the plugin framework guide to creating plugin module instances. The Java class of the component. Portlet implementation classes are required to implement the com.atlassian.jira.portlet.Portlet interface, but we strongly recommend that you extend the convenience class com.atlassian.jira.portlet.PortletImpl.

 

key

yes

The unique identifier of the plugin module. You refer to this key to use the resource from other contexts in your plugin, such as from the plugin Java code or JavaScript resources.

 

1
2
<component-import key="appProps" interface="com.atlassian.sal.api.ApplicationProperties"/>

 

In the example, appProps is the key for this particular module declaration, for component-import, in this case. I.e. the identifier of the component.

N/A

i18n-name-key

 

The localisation key for the human-readable name of the plugin module.

 

name

 

The human-readable name of the plugin module. I.e. the human-readable name of the component.

The plugin key.

Elements

Name

Required

Description

description

 

A human-readable description of this portlet module. May be specified as the value of this element for plain text or with the key attribute to use the value of a key from the i18n system.

label

yes

The user-visible name of this portlet. May be specified as the value of this element for plain text or with the key attribute to use the value of a key from the i18n system.

thumbnail

 

An optional thumbnail image used to preview the portlet for users.

permission

 

Permission required to add this portlet to a dashboard. Value must be one of the fields of com.atlassian.jira.security.Permissions.

objectdescriptor

 

Allows configuration of this portlet with an object descriptor class (see this page for more details). We recommend using a key attribute containing the localized name of your plugin.

lazy

 

Whether to load this portlet lazily.

Example

1
2
<portlet key="assignedtome" name="Assigned Issues"
    class="com.atlassian.jira.portal.portlets.AssignedToMePortlet">
    <description key="portlet.assignedtome.description">i18n description</description>
    <!-- this template produces the eventual HTML of the portlet -->
    <resource type="velocity" name="view" location="templates/plugins/jira/portlets/assignedtome.vm" />
    <label key="portlet.assignedtome.name" />
    <!-- an optional thumbmail image used to preview the portlet for users -->
    <thumbnail>portlets/dashboard/thumbnails/assigned.gif</thumbnail>
    <!--
        the permissions required to add this portlet
        (optional - not often required)
     -->
    <permission>assignable</permission>
    <objectdescriptor key="portlet.assignedtome.display.name" />
    <!-- same as the properties of the report plugin module -->
    <properties>
        <property>
            <key>numofentries</key>
            <name>portlet.assignedtome.field.numofentries.name</name>
            <description>portlet.assignedtome.field.numofentries.description</description>
            <type>long</type>
            <default>10</default>
        </property>
    </properties>
</portlet>

Rate this page: