Installing, configuring, and deploying: WebSphere Enterprise Service Bus mediation module

The method of integration between WebSphere Commerce and Sterling Selling and Fulfillment Suite is a WebSphere Enterprise Service Bus mediation module. This module requires WebSphere Integration Developer 7.0.0.3 and WebSphere Enterprise Service Bus 7.0.0.0. To extend or modify the Mediation Module, you must import the project into a WebSphere Integration Developer workspace.

Important: Review the following information for your version of WebSphere Commerce:
Note: You are recommended to a WebSphere Enterprise Service Bus on a 64-bit system. Out of memory issues can be encountered if you are installing on a 32-bit environment.

Procedure

  1. Import the Mediation Module into WebSphere Integration Developer:
    1. Select File > Import.
    2. Select General > Existing projects into Workspace.
    3. Select the Mediation Module project archive file. The project can be either a JAR or folder. The mediation module project can be found in WCDE_installdir/components/sterling-integration/wid with the name WCToSSFSMediationModule.
      Note: The Mediation Module has some dependencies from WebSphere Commerce.
      1. Create a Java project and import the following JAR files into the root of the project:
        • Foundation-Core.jar
        • Foundation-Server.jar
      2. In the Dependencies section of the mediation module project, set the project as a dependent Java project.
  2. Feature Pack 3 Map WebSphere Commerce values to Sterling Commerce values:
    1. Open the following value mapping file:
      • WCToSSFSMediationModule.ear/WCToSSFSMediationModule.jar/ValueMaps.xml
    2. Update the mapping values to match your implementation.
      For example, if your WebSphere Commerce store ID and name is 10001 and Deprecated featureMadisons, and your Sterling Commerce organization code is MadisonsRoot, the file can resemble the following snippet:
      
      <mm:ValueMaps
      	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      	xmlns:mm="http://WCToSSFSMediationModule"
      	xsi:schemaLocation="http://WCToSSFSMediationModule ValueMaps.xsd ">
      	
      	<!-- Maps WC store IDs to SSFS organization codes -->
      	<mm:Map name="storeIdToOrganizationCode">
      		<mm:Entry key="10001">MadisonsRoot</mm:Entry>
      	</mm:Map>
      	
      	<!-- Maps WC store IDs to SSFS nodes -->
      	<mm:Map name="storeIdToNode">
      		<mm:Entry key="10001">Madisons</mm:Entry>
      	</mm:Map>
      	
      </mm:ValueMaps>
      
  3. Make any necessary changes to the Mediation Module:
    1. After the mediation module is imported into your WebSphere Integration Developer workspace, you can modify it as necessary so that it works within your specific environment.
    2. After you make your wanted changes, modify the Mediation Module according to the following steps:
      1. Set the WebSphere Commerce Order Services Endpoint URL.

        For the WebSphere Enterprise Service Bus mediation module to communicate correctly with WebSphere Commerce, it must be configured with the host name and port.

        1. Open up the assembly diagram in the WCToSSFSMediationModule.
        2. Open Module components > imports.
        3. Click the WCOrderServicesImport.
        4. Choose the Binding tab in the properties view.
        5. Click the JAX-Web service [OrderServices/OrderServices].
        6. Enter the Address of http://WC_HOSTNAME:8007/webapp/wcs/component/order/services/OrderServices
      2. Feature Pack 3Set the WebSphere Commerce Inventory Services Endpoint URL.

        For the WebSphere Enterprise Service Bus mediation module to communicate correctly with WebSphere Commerce, it must be configured with the host name and port.

        1. Open up the assembly diagram in the WCToSSFSMediationModule.
        2. Open the Properties View.
        3. Click the WCInventoryServicesImport.
        4. Choose the Binding tab in the properties view.
        5. Enter the Address of http://WC_HOSTNAME:8007/webapp/wcs/component/inventory/services/InventoryServices
      3. Set the WebSphere Commerce Order Services Security information.
        WebSphere Commerce uses the standard WS-Security to provide security for its web services. The WebSphere Enterprise Service Bus mediation module must be configured to use this security correctly.
        1. Start the WebSphere Enterprise Service Bus integrated solutions console and logon.
        2. Go to Services > Policy set > Application policy sets > and select Import > From selected location.
        3. Select the following file: Click OK.
        4. Go to Services > Service clients and select OrderServices.
        5. Select OrderServices and select Attach Client Policy Set > WCServicesPolicySet. You can achieve this set by selecting the top entry, causing the setting to cascade.
        6. Select OrderServices and select Assign Binding > New Application Specific Binding.
        7. Enter WCServicesBinding as the name of the binding configuration and select Add > WS-Security.
        8. Go to Authentication and protection and select request:token_auth.
        9. Click Apply.
        10. Go to Callback handler.
        11. Enter the WebSphere Commerce administrator user name and password for the Administration Console and click OK.
        12. Save the WebSphere Enterprise Service Bus configuration changes.
      4. Set the WebSphere Commerce Inventory Services Security information.
        1. Go to Services > Policy set > Application policy sets > and select Import > From selected location.
        2. Select the following file: Click OK.
        3. Go to Services > Service clients and select InventoryServices.
        4. Select InventoryServices and select Attach Client Policy Set > WCServicesPolicySet. You can achieve this set by selecting the top entry, causing the setting to cascade.
        5. Select InventoryServices and select Assign Binding > New Application Specific Binding.
        6. Enter WCServicesBinding as the name of the binding configuration and select Add > WS-Security.
        7. Go to Authentication and protection and select request:token_auth.
        8. Click Apply.
        9. Go to Callback handler.
        10. Enter the WebSphere Commerce administrator user name and password for the Administration Console and click OK.
        11. Save the WebSphere Enterprise Service Bus configuration changes.
      5. Feature Pack 3Set up the CSV_DIR environment variable:
        1. Start the WebSphere Enterprise Service Bus integrated solutions console and logon.
        2. Go to Environment > WebSphere variables
        3. Select New, set the Name as CSV_DIR and value as a directory to point to.
        4. Click OK.
        5. Save the WebSphere Enterprise Service Bus configuration changes.
      6. Adjust the Sterling Selling and Fulfillment Suite Organization Code in the Mediation Flows.

        Most calls to the Sterling Selling and Fulfillment Suite APIs require an Organization Code. As this code is global in nature, specify it in the WebSphere Enterprise Service Bus mediation module. To change this code to fit your environment:

        1. Open the WCToSSFSMediationModule component in WebSphere Integration Developer.
        2. For each of the following services that are listed, adjust the value that is set in the OrganizationCodeSetter element:
          • ProcessOrder
          • GetInventoryAvailability
          • ProcessInventoryRequirement
        3. Enable/Disable Mediation Flow Tracing

          Trace primitives are used all over the mediation flows. These primitives are used to log messages in the server's SystemOut.log. For example, the incoming GetInventoryAvailability BOD and the resulting findInventory input message. In WebSphere Integration Developer, you can enable and disable these traces by opening the mediation flows. The enablement of these traces is also set as promoted properties with aliases in the form of *Trace.enabled. For example, GetInventoryAvailabilityTrace.enabled and FindInventoryInputTrace.enabled. They can be enabled and disabled in WebSphere Enterprise Service Bus by using the Administration Console. For more information, see Promoted properties.

  4. Deploy the Mediation Module to WebSphere Enterprise Service Bus:

    After you make and test your changes with WebSphere Integration Developer and the WebSphere Enterprise Service Bus test environment, you can export the mediation module as a deployable resource. You can then deploy the ear into a stand-alone WebSphere Enterprise Service Bus installation.

    To export a deployable resource from WebSphere Integration Developer:

    1. Right-click the WCToSSFSMediationModule project and click Export.
    2. Select Integration Modules and Libraries.
    3. Ensure Files for Server Deployment is selected and click Next.
    4. Select the location of the generated EAR file and click Finish.
    To install the generated EAR into a WebSphere Enterprise Service Bus server:
    1. Log in to the WebSphere Enterprise Service Bus administration console.
    2. Go to Applications > SCA Modules.
    3. Click Install.
    4. Click Browse and select the mediation module EAR.
    5. Select the server or cluster to install the module into and click Next.
    6. When the installation completes, click Save.
    For more information, see the WebSphere Integration Developer and WebSphere Enterprise Service Bus documentation:
  5. Configure JMS for WebSphere Enterprise Service Bus:

    As WebSphere Enterprise Service Bus communicates to Sterling Selling and Fulfillment Suite that uses JMS, the environment must be configured to enable this communication. In this case, you are using the default messaging implementation of the WebSphere Enterprise Service Bus server as the JMS provider. When the WebSphere Enterprise Service Bus mediation module is deployed to the server, most of the necessary configuration is completed automatically. After the module is deployed, create a JMS Queue Connection factory:

    1. Log in to the WebSphere Enterprise Service Bus administration console.
    2. Go to Resources > JMS > Queue Connection Factories.
    3. Select New.
    4. Select Default Messaging Provider and click Next.
    5. Enter the following information:
      Name
      WCToSSFSMediationModule.SSFSAPIsImport_QCF
      JNDI Name
      WCToSSFSMediationModule/SSFSAPIsImport_QCF
      Bus Name
      SCA.APPLICATION.CELL_NAME.Bus
      Provider Endpoints
      SERVER_HOSTNAME:7276:BootstrapBasicMessaging, SERVER_HOSTNAME:5557:BootstrapSecureMessaging
    6. Click OK, then click Save.

What to do next

Installing, configuring and deploying: SSFS