+

Search Tips   |   Advanced Search

Configure a web content authoring environment


Install the authoring portlet

Pages that include the Web Content Manager authoring portlet and the local rendering portlet are created when we first install WebSphere Portal. Run the authoring portlet configuration task if you have previously uninstalled your authoring or local rendering portlets. The authoring portlet configuration task will automatically create Web Content Manager pages and install the authoring portlet and local rendering portlets.


Install on AIX, IBM i, Linux, Solaris, and Windows

  1. Open a command prompt and run...

    cd WP_PROFILE/ConfigEngine
    ./ConfigEngine.sh configure-wcm-authoring  \
                      -DPortalAdminPwd=foo \
                      -DWasUserid=username \
                      -DWasPassword=foo
    

  2. Log out of the portal and log back in.

  3. Select Web Content from the product banner to access the authoring portlet.

  4. If the authoring portlet does not display after installing in a cluster, we might need to activate the portlet.


Install on z/OS

  1. Start the Customization Dialog.

  2. Navigate to the Configure Web Content Manager panel:

      Configure WebSphere Portal | WebSphere Portal for z/OS | Application Configuration Tasks | Configure Web Content Management | Deploy Authoring Portlets | Define variables

  3. Select the option for the variables to define, and follow the panels to define the variables.

  4. Generate the customization jobs.

  5. Follow the Customization Dialog instructions for submitting the customization jobs.

  6. If the authoring portlet does not display after installing in a cluster, we might need to activate the portlet.


Locale consistency

The language displayed in the authoring portlet is determined by the region or locale of the user. There are, however, some elements of the authoring portlet that use WebSphere Portal functions, such as date selection fields. These will be displayed using the locale of the WebSphere Portal server. For this reason, the language and locales of the site being created, the client and server should be consistent.

If the site contains content in different languages, then a separate Web Content Manager authoring applications should be setup for each language on different WebSphere Portal Servers. These can then be combined into one site using a staging server.

If a user changes their locale, any currently opened Web Content Manager dialogs will be closed. A user will also have to start a new session before it is displayed using the new locale. It is best practice to have the client's correct locale set prior to using Web Content Manager.


Web content authoring options

We can tailor the authoring behavior of the web content environment by changing configuration settings such as workflow, profiling, and version control.

Manage authoring options in the WCM WCMConfigService service.


Enable workflows

As default, the IBM Web Content Manager application will workflow content items only. We can update the WCM WCMConfigService service to enable workflows for different items.

To enable workflows, create a new property for the item type to which to apply workflow, and specify a value of...

We can enable workflow for the following item types:

For example to enable workflow for authoring templates:

To disable workflow for an item type, set the property to "false". For example, to disable workflow for authoring templates:

If workflows are enabled for the following items, a workflow view will not be available in the item views navigator.

Individual items can still be moved through workflow stages by accessing them through the normal item views and approving them.

Only content items can be moved through a workflow using the web content API. If you enable workflows for other item types, you will not be able to approve or reject these items using the API.


Enable profiling

As default, the Web Content Manager application will profile content items only. We can update the WCM WCMConfigService service to enable profiling for different items.

To enable profiling, create a new property for the item type to which to apply profiling, and specify a value of com.aptrix.pluto.taxonomy.ProfileControl for the property. We can enable workflow for the following item types:

For example to enable profiling for components:

To disable profiling for an item type, set the property to "false". For example, to disable profiling on components:


Version control options

By default version control is enabled with the following properties:

We can use the following values to specify version control settings:

always A version is saved every time a non-workflowed item is saved, or every time a workflowed item is published.
manual Versions will only be saved when a user with at least editor access chooses to save a version. This setting causes the following changes in the interface:

  • The Save Version button is available in the read mode of non-workflowed items and in workflowed items in the published state.

  • The Save and Version button is available in the edit mode of non-workflowed items and in workflowed items in the published state.
never Disable version control for an item type.

If a version control strategy is not defined for an item type, then the version control strategy specified in by the versioningStrategy.Default property is used.


Inheritance options

By default, inheritance is automatically propagated down to each item. We can disable automatic inheritance by specifying the following property:

When this setting is specified, it is applied only to new items. The inheritance on existing items will remain unchanged.


Hierarchical item locking options

When a content item is being edited, it is locked. Other users are prevented from editing the content item until it is unlocked. Locking of site areas, taxonomies and categories is configurable and is not enabled by default. To enable locking for hierarchical item types, specify the following properties: change the following parameters to "true":

Property name Value
wcm.authoringui.lock.taxonomies true
wcm.authoringui.lock.categories true
wcm.authoringui.lock.siteareas true
wcm.authoringui.lock.projects true

When locking is enabled for site areas, we cannot create any children within the locked site area. For example, if a site area is locked, we cannot create any new site areas or content items within that site area until it is unlocked. This applies only to direct children of the locked parent. Items that are descendants of the children of a locked parent are not affected.


Define valid mime types for the image element

You define the mime types of files allowed to be uploaded into the image element using the imageresourcecmpnt.allowedmimetypes property and a list of mime types for the value. For example:

This will prevent users uploading non-image files into the image element.


Active content filtering

Active content filtering provides the ability to strip specified HTML fragments from HTML entered in elements. This includes rich text and HTML elements. Active content filtering is configured using the active.content.filtering.enable property. By default, active content filtering is enabled.If enabled, this will prevent a user from introducing malicious code into a website such as cross site scripting. For example, if a user entered this code into an HTML element:

Welcome
<a href="javascript:window.alert("boo!")">my link</a>
<script language="javascript">window.alert("boo 2!")</script>
Click the link for a surprise.

It would be changed to this when saved:

Welcome
<a href="<"- active content removed -->">my link</a>
<"- active content removed -->
Click the link for a surprise.


Set the default child placement position

We can set the parameter wcm.authoringui.childPlacementDefault to specify the default placement of new content items.

Property value Description
start Place a new content item as the first content item within a site area.
end Place a new content item as the last content item within a site area.


Set the size of the breadcrumb library dropdown

We can set the parameter wcm.authoringui.breadcrumbLibrariesMaximum to specify the number of libraries that should be shown in the authoring interface breadcrumb. For example, wcm.authoringui.breadcrumbLibrariesMaximum=16


Expired items

By default, expired items are displayed alongside published and draft items.

To determine if expired items are listed in views, we can specify the wcm.authoringui.showexpireditems property in the WCM WCMConfigService service.


Configure authoring portlet search

We can change the configuration of the authoring portlet to change how search works.

Manage authoring portlet search options in the WCM WCMConfigService service.

We can specify the following properties:

wcm.authoringui.advancedsearch.searchonselection

  • Possible values are true or false.

  • If true, when you click Advanced Search, an advanced search will automatically be executed based on any text currently entered in the basic search. If nothing has been entered in the basic search, advanced search is not automatically executed.

  • If false, advanced search will not automatically be executed if there is existing text in the basic search field.

  • If the property is not specified, this setting will default to the false behavior.

wcm.authoringui.simplesearch.addstar

  • Possible values are true or false.

  • If true, a wildcard character is added to the end of text entered in the basic search. For example, searching for Span will automatically search for Span* and will display search results that have a title, description or keywords that begin with the word Span such as Spanish.

  • If false, only exact matches to the text entered in the basic search field will be searched for.

  • If the property is not specified, this setting will default to the false behavior.

wcm.authoringui.advancedsearch.addstar

  • Possible values are true or false.

  • If true, a wildcard character is added to the end of text entered in the advanced search. For example, searching for Span will automatically search for Span* and will display search results that have a title, description or keywords that begin with the word Span such as Spanish.

  • If false, only exact matches to the text entered in the advanced search field will be searched for.

  • If the property is not specified, this setting will default to the false behavior.


Import large files and images


Overview

Because importing large files into Web Content Manager can have a negative impact on performance, we can adjust several settings to ensure better performance when importing files.

Before updating the settings for large file handling, review the following considerations:

UNIX note: If we are running on a UNIX operating system, ensure that you have used the ulimit -f command to set the maximum size of files that can be created to be at least the size of the largest file we would need to upload to the content server. The command ulimit -f unlimited removes any limit on file size. When setting the size, also make sure the system has sufficient disk space to support the setting.

Disk space requirements: When importing files, a temporary directory is used to store the files during the upload process. If the size of the uploaded files exceeds the available disk space for the temporary directory, the import operation fails. When uploading large files, ensure that there is sufficient disk space to accommodate the import. The location of the temporary directory is specified by the jcr.binaryValueFileDir property in the WP_PROFILE/PortalServer/jcr/lib/com/ibm/icm/icm.properties file.

  1. Log in to the WebSphere Integrated Solutions Console.

  2. Click Resources > Resource Environment > Resource Environment Providers > WCM WCMConfigService > Custom properties.

    Cluster note: If we are using this web content server as part of a cluster, ensure that we use the WebSphere Integrated Solutions Console for the deployment manager when manipulating configuration properties.

  3. For the resource.maxUploadSize property, specify a value in megabytes corresponding to the size of the largest file to allow to be imported. For example, if you do not want to allow files larger than 34 MB to be imported, update the resource.maxUploadSize property to have a value of 34. Although IBM recommends that this value not exceed 100 MB, we cannot upload files larger than 512 MB.

  4. For the resourceserver.maxCacheObjectSize property, specify a value of 300 KB or less.

  5. Add the transaction.sync.remove property, and specify a value of true.

  6. Click Servers > Server Types > WebSphere appservers > portal_server > Server infrastructure > Administration > Custom Properties

  7. Add the protocol_http_large_data_inbound_buffer property, and for the value specify the maximum file size in bytes. This value should correspond to the value you set for the resource.maxUploadSize property in the WCM WCMConfigService service.

    Note that the protocol_http_large_data_inbound_buffer property uses bytes. So if you specified a value of 34 MB for the resource.maxUploadSize property, we would specify a value of 35651584 bytes for the protocol_http_large_data_inbound_buffer property.

  8. Click Resources > JDBC > Data sources > datasource_name > Custom properties

  9. Specify the fullyMaterializeLobData property with a value of false.

  10. Click Resource > JDBC > Data sources > datasource_name > Connection pool properties.

  11. Increase the maximum number of database collections allowed for the application server by increasing the value of the Maximum connections field to a value greater than the default 50 connections.

  12. If we are working with files larger than 100 MB, increase the web containers transaction timeout setting.

    1. Click Servers > Server Types > WebSphere appservers > portal_server > Container Services > Transaction service.

    2. Increase the value of the Total transaction lifetime timeout setting from the default setting of 120 seconds.

  13. Increase the maximum number of threads allowed in the thread pool used by the web container.

    1. Click Servers > Server Types > WebSphere appservers > portal_server > Thread pools > WebContainer.

    2. Set the value of the Maximum Size field to 100 threads.

  14. For IBM HTTP Server Version 7, increase the connection timeout value for connections to the application.

    1. Click Servers > Server Types > web servers > web_server > plug-in properties > Custom properties > New.

    2. In the name field, enter ServerIOTimeout.

    3. In the value field, enter the timeout value in seconds.

      The default value is 60 seconds. However, when working with large files, this default value is typically insufficient and can cause a false server error response to be sent, which in turn causes the portal to reissue the request. Specify a timeout value that is long enough to allow a failing request to receive a response, or enter -1 for an unlimited timeout value.

  15. Click Save to save the configuration changes.

  16. Restart the portal for the settings to take effect.

If the portal's policy cache manager indicates that a number of web container threads are hung, set the cacheinstance.com.ibm.wps.policy.services.PolicyCacheManager.lifetime property in the WP CacheManagerService service to a value of -1. This setting reduces the database connections and load times and helps prevent threads from hanging.


Increasing time-outs

If users are experiencing timeout errors when saving items, we can increase the total transaction lifetime timeout setting of the WebSphere Portal server.

The total transaction lifetime timeout setting is changed using the WebSphere Integrated Solutions Console.

Go to...

The total transaction lifetime timeout setting should be changed to the same amount on all the servers in the web content system.


Alternatives to increasing server time-outs

Increasing the total transaction lifetime timeout setting may not always be the best solution to server time-outs as increasing this setting too much may cause a drop in performance. Timeout errors generated when saving items occur when the current transaction finishes before the item has been saved. If the item we are saving contains large amounts of data, it may be better to redesign the item rather than change the total transaction lifetime timeout setting:

Option Details
Authoring Templates If a large number of elements have been added to an authoring template, you may experience a timeout error when saving. Instead of using a single authoring template, create multiple authoring templates containing only those elements required for a specific task.
Presentation templates and components You may receive timeout errors when saving presentation templates or components containing large amounts of HTML or rich text in their designs. You should instead create multiple HTML or rich text components and then reference these in the presentation templates or component designs.
Site areas and content items

You may receive timeout errors when saving site areas and content items containing elements that use large amounts of HTML. You should instead create multiple HTML or rich text components and then reference these in element designs.

If a large number of elements have been added to a site area or content item, you may also experience a timeout error when saving. In this case, you should reduce the number of elements stored in the site area or content item.

Downloadable files Another alternative to creating web content containing large amounts of HTML or rich text is to provide information on the website in the form of downloadable files. These can be stored as file resource elements.


Configure remote server access for links

Before adding links to files and documents stored in remote content management systems into web content elements, configure the server with information about the remote system and the settings used to handle communication with the system.

IBM Content Manager and SSL usage: IBM Content Manager Services for Lotus Quickr provides the capability to link to documents stored in IBM Content Manager. These links are generated according to the base service URL configured in IBM Content Manager Services for Lotus Quickr, as specified by the urlBaseService property in the cmpathservice.properties file. If you have enabled Secure Sockets Layer (SSL) encryption for the portal, verify that the base service URL reflects the https protocol and not the http protocol to ensure that links are generated correctly. Refer to the documentation for IBM Content Manager Services for Lotus Quickr for details on how to update the urlBaseService property.

To prevent linking to unsafe servers, specify a list of allowed domains that the portal can access using the portal's AJAX proxy component. We can use the global AJAX proxy configuration to customize the outgoing HTTP traffic, such as applying specific HTTP timeout values or configuring an outbound HTTP proxy server. To do this, map the URL patterns for the ECM server to the federated_documents_policy dynamic policy using the WP ConfigService configuration service.

  1. From the dmgr console...

      Resources | Resource Environment | Resource Environment Providers | WP ConfigService | Additional Properties | Custom Properties | New

  2. Enter the property name wp.proxy.config.urlreplacement.federated_documents_policy.suffix, and set the string value to the URL pattern of the ECM server. For example, to enable the server to access information from the ECM server ecm.example.com on port 10038 over HTTP, we would add:

      wp.proxy.config.urlreplacement.federated_documents_policy.1=http://ecm.example.com:10038/*

    The value of the property key suffix can be any value as long as it is unique within the set of keys mapping to the federated_documents_policy.

  3. Create additional properties as needed for any other ECM servers that you need to access through the server.

  4. Save the changes, and restart the portal server.

If a user tries to access a server (for example, www.example.com) that has not been added to the list of allowed domains, the following message is displayed:


Set up support for federated documents

Overview

Before we can access metadata from federated documents, you need to configure access to the remote servers containing the documents and specify information about the feeds or service documents used to retrieve the documents. We can also tune the cache settings used with the federated documents feature.

Authentication requirement: Before we can use the federated documents feature, complete one of the following steps:

If we are setting up single sign-on between IBM Lotus Quickr and the portal server, export the SSO key from the Lotus Quickr server and import it into the portal server, rather than the other way around.


See also

  1. Configure access to remote systems for federated documents
  2. Configure the federated documents feature
  3. Cache tuning for federated documents


    Parent: Configure a web content authoring environment


    Related

    Manage portlets in the cluster
    Set service configuration properties
    Insert a link to remote content
    IBM DB2 Content Manager publication library
    AJAX proxy configuration