This blog promotes knowledge sharing through experience and collaboration. For more product information, visit our WebSphere Commerce CSE page. For easier navigation, utilize the Categories to find posts that match your interest.
Step by Step to enable WebSphere Commerce V9 and Sterling Omni-Configurator Integration
WebSphere Commerce provides the capability of integration with Sterling Omni-Configurator to sell complex, configurable products.
Sterling Omni-Configurator must be running on the server based on JDK1.8,
SterlingCPQ 9.5 is using fixpack 7 (or later), including both Sterling Visual Modeler and Omni-Configurator Module.
Install Sterling Visual Modeler
Sterling Visual Modeler is an administration application that to define models, it can be used to specify configurable selections, define rules that control what constitutes a valid configuration, and control how the Omni-Configurator presents selections to an end-user.
Before start the integration configuration, you must install the Sterling Visual Modeler
Deploy Sterling Omni-Configurator
Sterling Omni-Configurator is an independent, deployable module that exposes JSON/XML based REST APIs to handle all of the configuration services. Omni-Configurator composed by two parts, the backend REST APIs and Configurator UI add-on components. From the image package, these files are present inside the omni-configurator directory:
Before start the integration configuration, you must deploy the Omni-Configurator successfully and ensure the Configurator REST services are available to use.
Follow this guide to deploy the Omni-Configurator:
For example, the default repository is /home/wasuser/omniconfigurator:
In this step, it introduces you how to configure the Omni-Configurator Adapter to define communications between Omni-Configurator and external systems. It is a general configuration guide. For the integration with WebSphere Commerce , you need to refer to the configurations specific only for WebSphere Commerce, you can ignore this step first but configure it during the integration enablement.
After you enabled the Swagger, you can access the url to test it: http://configuratorServer:port/configurator/api
In this step, you must pay attention for the “Class loader order”, you need to modify it following the guide tell you.
After you finished the deployment of Omni-Configurator backend (REST APIs), you can check if the REST APIs are available or not： (It is ok to return 404, because you did not create any model for tenant matrix)
If you deployed the Configurator UI along with an existing web application, eg: the configurator.war, you just need to copy ConfiguratorUI package to target folder:
Integration Enablement Steps
Configure Sterling Visual Modeler
To view and test your compiled models, you need to connect the Omni-Configurator backend (REST APIs) and the Configurator UI to Sterling Configurator Visual Modeler.
Configure Sterling Omni-Configurator
Configure the tenant-specific Omni-Configurator adapter properties.
//For catalog adapter
//For Pricing adapter
You needs to replace
a. matrix with your tenant_id
b. [wc-transaction-server-cmc:port] with your wcs cmc server and port
c. adminuser/adminpassword with your administrator username and password. You can create a admin for integration, eg: sterlilngAdmin.
d. [wcssearch-server:port] with your wcs search server and port
e: wcs.storeid=[the catalog storeId mapped to this tenant]
Go to the following directory in your WebSphere Commerce Developer environment.
Configure WebSphere Commerce
insert into storeconf values ($storeId,'wc.configurator.url'$configuratorServerURL,1);
In WebSphere Commerce V9, the default inventory system provided by WCS sample store is Non-ATP which can not support component level inventory. If you want to use component level inventory in your integration environment, please choose to use DOM inventory system or NO-Inventory system.
eg: for integration testing usage, you can just chose to use NO-Inventory system, by running sql to switch your inventory system:
update store set inventorysystem=-3 where store_id=$storeid
After you finished the integration configuration, you can try to create your dynamic kit in WebSphere Commerce CMC and check it in your store page.