Deploying Sterling Order Management System Software on WAS Liberty

The procedure to deploy Sterling Order Management System Software and its applications.

Before you begin

  • Download the correct version of WebSphere Application Server Liberty. For detailed information about your software and the download process, see the Download document.
  • Download and install the correct version of Java as required by the WebSphere Application Server Liberty. For detailed information about the supported Java version, generate the system requirements report by using the Software Product Compatibility Reports tool.
Note: If you are using OracleJDK8 or OpenJDK8 for deploying Sterling Order Management System Software on WAS Liberty, the following error occurs.
java.util.ServiceConfigurationError: javax.xml.datatype.DatatypeFactory: Provider org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl could not be instantiated
Solution:

Navigate to <Runtime>/jdk/jre/lib, create a - jaxp.properties file, and add the following line.

javax.xml.datatype.DatatypeFactory=com.sun.org.apache.xerces.internal.jaxp.datatype.DatatypeFactoryImpl

Also add this jaxp.properties file in the <JDK_installedfolder>jdk/jre/lib.

Procedure

  1. Extract the Liberty .zip file to a directory.
  2. Open a command line and change the directory as follows:
    cd path_to_liberty/wlp/bin. Where path_to_liberty is the location you installed Liberty on your operating system.
  3. Run the following command to create a server:
    ./server create server_name. Where, server_name is the name to identify your server. If you do not specify a server name, defaultServer is used.
    If the server is created successfully, you receive a message: Server server_name created.
  4. Edit the server.xml file present in the path_to_liberty/wlp/usr/servers/<server_name> folder. Here, server_name is the name you would have assigned in the previous step.
    Refer the comments included in following XML snippet for more information about the configuration element.
    <?xml version="1.0" encoding="UTF-8"?>
    <server description="server_name">
    
        <!-- Enable features -->
        <featureManager>
            <feature>webProfile-7.0</feature>
        </featureManager>
    
        <!-- To access this server from a remote client, add a host attribute to the following element, e.g. host="*" -->
        <httpEndpoint id="defaultHttpEndpoint" host="*" httpPort="9080"
                    httpsPort="9443" />
                  
        <!-- Automatically expand WAR files and EAR files -->
        <applicationManager autoExpand="true"/>
    <application context-root="smcfs" type="ear" id="smcfs"
                    location="<path_to_smcfs.ear>" name="smcfs">
            </application>
    
    </server>
    
    Note: After installing Sterling Order Management System Software, you must first include the wsc.war in the smcfs.ear so that the Sterling Store Engagement (Legacy) application is available.
  5. Create the jvm.options file in the path_to_liberty/wlp/usr/servers/server_name folder and add the following information:
    
    -Dvendor=shell
    -DvendorFile=servers.properties
    -Xms1024m
    -Xmx2048m
    -Xdebug
    -Xnoagent
    -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7777
    -Duser.language=en
    -Dprod=Y
    -Dwufdevmode=true
    To deploy IBM® Omni-Configurator, follow steps 6-9.
  6. Create a server to deploy IBM Omni-Configurator.
  7. Edit the server.xml file inside the server directory created in the previous step.
    Refer the comments included in following XML snippet for more information about the configuration element.
    <?xml version="1.0" encoding="UTF-8"?>
    <server description="server_name">
    
        <!-- Enable features -->
        <featureManager>
            <feature>webProfile-7.0</feature>
        </featureManager>
    
        <!-- To access this server from a remote client add a host attribute to the following element, e.g. host="*" -->
        <httpEndpoint id="defaultHttpEndpoint" host="*" httpPort="9081"
                    httpsPort="9444" />
                  
        <!-- Automatically expand WAR files and EAR files -->
    
    <applicationManager autoExpand="true" />
            <application context-root="configurator" type="war" id="configurator"
                    location="<path_to_configurator.war>" name="configurator">
            </application>
    
         <applicationManager autoExpand="true" />
            <application context-root="ConfiguratorUI" type="war" id="ConfiguratorUI"
                    location="<path_to_ConfiguratorUI.war>" name="ConfiguratorUI">
            </application>
    
    </server>
    
  8. Create the jvm.options file in the path_to_liberty/wlp/usr/servers/server_name folder and add the following information:
    
    -Dvendor=shell
    -DvendorFile=servers.properties
    -Xms1024m
    -Xmx2048m
    -Xdebug
    -Xnoagent
    -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7778
    -Duser.language=en
    -Dprod=Y
    -Dwufdevmode=true

What to do next

Run the following command to start or stop the Liberty server from the path_to_liberty/wlp/bin:
./server start server_name
./server stop server_name
*server_name is the name of the server to start or stop.