Customize Workplace XT actions

For the objects accessible from context menus or from the browse and search modes of IBM FileNet Workplace XT, the application presents a set of operations or actions that an end user can perform on a particular object type. For example, the actions available for a document object include checkout, download, change to compound, and move; for a folder object, they include add objects, move, and delete.

As an administrator, you can customize the actions that can be performed on objects that appear in the Workplace XT user interface. You can also perform cosmetic changes, like removing an action completely from the user interface. Using filtering criteria, you can also define the conditions under which an action will appear. For example, you can define the download action to appear only when users click on documents of a certain class description, version status, and content type.

This topic points out the places in the Workplace XT interface where actions are presented to users, and describes the menu actions descriptor XML file that you use to configure those actions.

NOTE  If you previously customized actions in the Workplace application by modifying its Actions.xml file, and you want to use those same customized actions in Workplace XT, you must manually add the Workplace-related customizations to the Workplace XT Actions.xml file.

Actions in the Workplace XT UI

Actions are available to the user in context menus, in the Actions menu, the Tools menu, and on Properties information pages. (The actions on the Properties information pages and the My Workplace context menus are defined by the Actions.xml file; the MenuActions.xml file defines all other actions.) The context menu appears when a user right-clicks on an object in a list view, or on an item in the path view. The list of available actions depends on the type of object selected. The same actions appear in the Properties information page for the object. When a user selects one or more items in the list view, then clicks the "Actions" button, the Action menu opens. If multiple items are selected, only the actions that are valid for all of the selected items are shown in the menu.

Menu actions descriptor XML File

MenuActions.xml contains the definitions of actions displayed in the context menu and multi-select menu for browse and search mode. The file is located in the <AE_deploy_path>\FileNet\Config\WebClient folder. MenuActions.xml follows the Workplace Preferences XML Schema, Preferences.xsd, located in <AE_deploy_path>\FileNet\WebClient\WorkplaceXT\WEB-INF\xml.

NOTES 

File structure

As shown in the listing below, MenuActions.xml consists of five sections: multiSelectActions, toolbarActions, folderToobarActions, topLevelActions, and actionDefinitions.

In the topLevelActions array and in the multiSelectActions array, you define the order of the actions as they appear in the user interface. That is, in the topLevelActions array, the order of the value elements is reflected in the context menu and on the Information pages. In the multiSelectActions array, the order of the value elements is reflected in the multi-select menu. You can hide actions by commenting them out.

In the multiSelectActions array, you can specify actions to be multi-select only; that is, a multi-select action does not have to be listed in the topLevelActions array.

In the toolbarActions and folderToolbarActions, you define the toolbar buttons that appear next to the Actions button on the toolbar when browsing or searching for documents and folders, respectively.

The actionDefinitions list consists of action objects, each of which contains a list of conditions which define whether the action is displayed for each individual object. Note that a top-level action can contain a submenu, and if it does, its action definition must include a subActions setting. Also note that the definition for an action listed in the multiSelectActions array must include a multiSelectURL setting. See MenuAction Definition Settings for a description of all settings.

Sections in the menu actions descriptor XML File

<object key="actionsConfiguration" version="1.0">
...

  <array key="multiSelectActions">
    <value>download</value>
    <value>checkout</value>
    <value>cancelCheckout</value>
    <value>file</value>
    <value>delete</value>
    <value>assignSecurityPolicy</value>
    <value>sendMail</value>
  </array>
  <array key="toolbarActions">
    <value>download</value>
    <value>checkout</value>
    <value>quickCheckin</value>
    <value>cancelCheckout</value>
    <value>addToFavorites</value>
    <value>infoProperties</value>
    <value>sendMail</value>
  </array>
  <array key="folderToolbarActions">
    <value>addDocument</value>
    <value>addFolder</value>
  </array>
  <array key="topLevelActions">
    <value>view</value> <!-- for documents, publish templates -->
    <value>open</value> <!-- for folders, searches, object stores -->
    <value>download</value>
    <value>checkout</value>
    <value>quickCheckin</value>
    <value>cancelCheckout</value>
    <value>addToFavorites</value>
    <value>removeFavorite</value>
    <value>renameFavorite</value>
    <value>sendMail</value>
    <value>launch</value>
    <value>transfer</value>
    <value>addSubscription</value>
    <value>declareAsRecord</value>
    <value>declareVersionsAsRecord</value>
    <value>testFormTemplate</value>
    <value>modifyDocumentPolicy</value>
    <value>modifyWorkflowPolicy</value>
    <value>takeOffline</value>
    <value>modifyEntryTemplate</value>
    <value>modifyRecordEntryTemplate</value>
    <!-- RM changes start-->
    <value>requestchargeout</value>
    <value>viewDocumentInfo</value>
    <!-- RM changes end -->
    <value>infoProperties</value>
    <value>moreInformation</value>
    <value>documentActions</value>
    <value>folderActions</value>
    <!-- always in the end -->
    <value>addDocument</value>
    <value>addFolder</value>
  </array>

<list key="actionDefinitions">

...

<object key="action">
    <setting key="id">download</setting>
    <setting key="title" localizationKey="server.MenuActions_xml.download">Download…</setting>
    <setting key="url">
       getContent?
       mode=download&amp;
       objectType={OBJECT_TYPE}&amp;
       id={OBJECT_ID}&amp;
       vsId={VERSION_SERIES_ID}&amp;
       objectStoreName={OBJECT_STORE_NAME}&amp;
       returnUrl={RETURN_URL}
    </setting>
    <setting key="multiSelectURL">
       operations/WcmMultiDownloadObject.jsp?
       returnUrl={RETURN_URL}
    </setting>
    <setting key="img">images/action/toolbar/Download23.gif</setting>
    <array key="objectTypes">
       <value>document</value>
    </array>
    <array key="excludedContentTypes">
       <!--RM Change start -->
       <value>application/x-filenet-rm-physicalrecord</value>
       <value>application/x-filenet-rm-electronicrecord</value>
       <value>application/x-filenet-rm-emailrecord</value>
       <!-- RM Change ends -->

<!-- entry template mime types -->
       <value>application/x-filenet-entrytemplate</value>
       <value>application/x-filenet-documententrytemplate</value>
       <value>application/x-filenet-folderentrytemplate</value>
       <value>application/x-filenet-customobjectentrytemplate</value>
       <value>application/x-filenet-formdataentrytemplate</value>
       <value>application/x-filenet-declarerecordentrytemplate</value>
       <value>application/x-filenet-pageentrytemplate</value>
       <value>application/x-filenet-sectionentrytemplate</value>
       <value>application/x-filenet-cfwpageentrytemplate</value>
       <value>application/x-filenet-cfwsectionentrytemplate</value>
       <value>application/x-filenet-cfwtextentrytemplate</value>
       <value>application/x-filenet-localsectionentrytemplate</value>

<!-- wcm mime types -->
       <value>application/x-filenet-sp-cr</value>
       <value>application/x-filenet-sp-target</value>
       <value>application/x-filenet-sp-page</value>
       <value>application/x-filenet-sp-section</value>
       <!-- Form policies -->
       <value>application/x-filenet-documentpolicy</value>
       <value>application/x-filenet-workflowpolicy</value>

<!-- external documents (pointing to an URL) -->
       <value>application/x-filenet-external</value>
    </array>
    <setting key="isPopup">false</setting>
    <setting key="popupHeight">600</setting>
    <setting key="popupWidth">750</setting>
</object>

Menu action definition settings

The following table describes each action definition setting in MenuActions.xml. Each setting is identified by its key attribute. Unless otherwise specified, a setting is optional. If an optional setting is not present, its default value is used.

URL pattern macros

The macros in the following table are used in the url setting of action definitions. They define the URL of the page that implements the action and the parameters passed to that page on the URL. The macros are replaced by the corresponding value in the actual URL. For example, if the pattern is operations/Test.jsp?id={OBJECT_ID}, and the object for which the operation is invoked has an ID of {A73BEEB2-B0B7-11D2-8853-0000F80883E3}, then the operation URL will be operations/Test.jsp?id={A73BEEB2-B0B7-11D2-8853-0000F80883E3}.

Macro Value
{OBJECT_STORE_NAME} Object store name; for example, "TEST_OS".
{OBJECT_ID} Object ID in GUID or path format.
{OBJECT_LABEL} Object label as it appears in the UI.
{OBJECT_TYPE} Object type as a String; for example, "document" or "folder".
{VERSION_SERIES_ID} Version series ID in GUID format.
{CLASS_ID} Class ID in GUID format.
{CONTENT_TYPE} Content type as String, URL-encoded.
{MAJOR_VERSION} Major version; for example, "1".
{MINOR_VERSION} Minor version; for example, "2".
{VERSION_STATUS} Version status as a number; for example, "1".
{RETURN_URL} Return URL, URL-encoded; for example, "http://<server>:<port>/WorkplaceXT/Browse.jsf"

{TIME_ZONE}

The time zone ID.