Integrating HCL Commerce with an external Content Management System

You can integrate HCL Commerce with a content management system other than IBM Web Content Manager to provide a punch-out integration between Management Center and your content management system.

To set up this punch-out integration, HCL Commerce and your content management system must be customized and configured to ensure that Management Center can punch-out to the content management system to retrieve content. To ensure that users can punch-out from Management Center to your content management system easily, you can enable single sign-on between the applications through a Lightweight Directory Access Protocol (LDAP).

The punch-out integration from Management Center to a content Management system is intended for use with IBM Web Content Manager. You can customize and configure HCL Commerce and your content management system to use the integration extension points for the integration with IBM Web Content Manager to set up an integration between HCL Commerce and your content management system.

This integration enhances Management Center by providing a punch-out mechanism, which can be configured to open a window to access your content management system. Through this punch-out window, Management Center users can retrieve links to content from your content management system to associate the links with Management Center objects.

By integrating HCL Commerce with a content management system, users can retrieve and use content from the content management system immediately after it is created or updated. If HCL Commerce is integrated with the content management system with the web feed utility, users must wait for content to be loaded into HCL Commerce before the content can be used. The punch-out integration is a tighter integration that removes the need for batch process web feeds, which allows Management Center users to control the retrieval of content from the content management system.

With an integration with a content management system, potentially all of the content for HCL Commerce stores can be created and managed in the content management system. However, users can still choose to load content directly into Management Center to create content for use in HCL Commerce. If the content management system supports creating different types of content, users can select content from the content management system to associate the content with any type of Management Center object that uses or references content.

The integration between HCL Commerce and a content management system allows for single sign-on authentication between the applications. The single sign-on is handled by IBM Lightweight Third-Party Authentication (LTPA).

Benefits and capabilities

With a punch-out integration between HCL Commerce and your content management system, business users can potentially gain the following capabilities. Depending on how the custom interface for the content management system is created and the integration is configured, users can have access to more tools and capabilities:
  • Management Center users can open the content management system in a punch-out window to select content that can be associated with Management Center object.
  • Users in the content management system can create and manage content for Management Center users to access through the integration.
  • Enabling single sign-on for the integration provides Management Center users the ability to easily open the content management system application. The Management Center users do not have to manually log in to the application. The single sign-on configuration automatically provides the user authentication between the applications.
Considerations
  • The integration between the two applications must be enabled and configured separately for each HCL Commerce store that is to support the use of content from the external system.
  • The content that is retrieved from the external system is not incrementally indexed by HCL Commerce search. The content can be indexed by using the web crawler utility for HCL Commerce search.
Depending on how the custom interface is created and the services for HCL Commerce and the content management system are customized or configured, there can be more considerations or limitations.

Integration architecture

The integration between HCL Commerce and an external content management system allows business users to manage content on a staging environment. The integration uses an LDAP server to synchronize user authentication between both applications. This managed content is then published to the production environment.

The following diagram illustrates the recommended topology setup for the integration. You are recommended to setup the integration with both applications deployed in the staging environment, but only HCL Commerce deployed in the production environment.

HCL Commerce deployed in production environment

Architecture setup for HCL Commerce and external content management system integration.

In this setup, each application exists on its own WebSphere Application Server within the staging environment. User authentication information for both applications is shared through an LDAP server in the staging environment. In this setup content is created and managed in the staging environment within content management system. Management Center users can use the punch-out mechanism to retrieve links to the content and associate the links with Management Center objects. The links that are retrieved must include enough information for the content management system to identify requests for the content that the link references. For example, in an integration with IBM Web Content Manager, IBM Web Content Manager returns content to HCL Commerce as a web content link token identifier. This link is used to identify the relative path of the linked content. This link can include extra metadata that is appended to the relative path. This 'URI' token allows IBM Web Content Manager to identify the requests that it receives from HCL Commerce. The web content link displays in the format
relative_path?uuid=[uuid]&renderType=[content | resource | link]&mimeType=[mime-type of resource type only]

Within HCL Commerce the URL links to the content in the content management system are stored in the database on the HCL Commerce staging environment. HCL Commerce uses the stagingprop utility to propagate the business objects that contain the URL links to the external system content to the production environment database.

Integration extension points

The wcst:getContent JSTL tag is used on store pages to retrieve content from the content management system. For each request that retrieves content, the wcst:getContent tag is used. To reduce any performance impact from repeating the process to retrieve content, the wcst:getContent tag has a command that can be cached. The implementation classes for this tag can be overwritten with custom classes to help integrate with your content management system. For more information about this tag, caching the command for this tag, and invalidating embedded content that is retrieved with this tag, see Get content tag for retrieving externally managed content.

The wcst:resolveContentURL JSTL tag is used on store pages to convert the URLs that are specified in Management Center for content from the content management system. The content URLs must be converted to URLs that are valid for the store page where the content is to display. The implementation classes for this tag can be overwritten with custom classes to help integrate with your content management system. For more information, see Resolving content URLs to an external system

Store developers can customize Management Center to add punch-out mechanisms for retrieving content for custom Management Center object. Developers can use the code pattern for an existing punch-out mechanism to model the code for the punch-out mechanisms for custom Management Center objects.

Before you begin

Ensure that you have access to the following applications in an administrative role:
  • HCL Commerce as a user in the Administrators group or as a non-root user.
  • Management Center as a user with authority to manage objects that can have content associated with the objects. For more information about creating a user and assigning a role to the user, see Creating a user.
  • Your database as an administrator or a user that has authority to update the database.
  • WebSphere Application Server administrative console as an administrator.
  • Your content management system as a user with administrative access and authority to configure the content management system.
To complete a punch-out integration your content management system must be customized to have a UI interface that Management Center can punch-out to so that Management Center users can select content. The UI interface and services within your content management system must be customized or configured to provide Management Center and HCL Commerce stores with a link to the content. The interface and services must be customized to allow Management Center users to be able to retrieve links to content through the punch-out window. The custom UI must provide content links that can be used by the HCL Commerce wcst:getContent and wcst:resolveContentURL JSTL tags on the storefront to retrieve the content from your content management system. The implementation classes for the wcst:getContent and wcst:resolveContentURL JSTL tags can be overwritten with custom classes to retrieve and resolve the links that are retrieved from your content management system. For more information about the tags, see

Procedure

Use the documentation for integrating HCL Commerce with IBM Web Content Manager as a guide to help you configure the integration with your content management system. In addition to the following steps, you must configure your content management system to work with HCL Commerce. The content that is created in your content management system must be configured to be retrieved through the integration for use in Management Center and the storefront.