WebSphere Commerce EnterpriseWebSphere Commerce Professional

Installing WebSphere Application Server Communication Enabled Applications (CEA)

To implement coshopping, install WebSphere Application Server Communication Enabled Applications (CEA) feature pack on a separate WebSphere Application Server cluster.

Important: When setting up a shared configuration, you must manually merge the Web server plugin files (plugin-cfg.xml) for the WebSphere Commerce profile and the CEA profile. Each time WAS regenerates the Web server plugin file, the manual merge is overridden and the CEA server stops working. For example, WAS regenerates the Web server plugin file when you install an interim fix (iFix). To get the CEA server working again, you must redo the manual merge.

Before you begin

Procedure

  1. Install WebSphere Application Server Feature Pack for CEA Fix Pack 1.0.0.7 on all the machines that will be included in the CEA clustered environment, including the Deployment Manager server machine. LinuxAIXWindows
    1. Install WebSphere Application Server Feature Pack for CEA Version 1.0.0.0.
    2. Update WebSphere Application Server Feature Pack for CEA to Fix Pack 1.0.0.7.
    3. Install iFix to update CEA Dojo.
  2. Augment the WebSphere Application Server Deployment Manager and managed node profiles with CEA profile templates.
    1. Open a command line.
    2. Go to the WAS_installdir/bin directory.
    3. Determine your profileName. To find a list of possible profileName options, run:
      • LinuxAIXmanageprofiles.sh -listProfiles
      • Windowsmanageprofiles.bat -listProfiles
      This command returns a list of the profileName options that can be augmented. select the WebSphere Application profile.
    4. Run the following command to augment the Deployment Manager profile:
      • LinuxAIXmanageprofiles.sh -augment -profileName profileName -templatePath ../profileTemplates/CEA/dmgr.ceafep
      • Windowsmanageprofiles.bat -augment -profileName profileName -templatePath ..\profileTemplates\CEA\dmgr.ceafep
    5. Run the following command to augment the managed node profile:
      • LinuxAIXmanageprofiles.sh -augment -profileName profileName -templatePath ../profileTemplates/CEA/managed.ceafep
      • Windowsmanageprofiles.bat -augment -profileName profileName -templatePath ../profileTemplates/CEA/managed.ceafep
  3. create a new cluster. Add the cluster members for the CEA server cluster and ensure that the following settings are selected when creating the cluster:
    • Select Configure HTTP session memory-to-memory replication to permit multiple members within the cluster.
    • Select Generate unique HTTP ports.
  4. Enable the communications service and change the virtual host setting to VH_demo. Where VH_demo is the name of the virtual host that processes requests for the Stores application.
    1. Open the WebSphere Application Server Deployment Manager Administrative Console and log on to the console.
    2. Click Servers > Clusters > WebSphere Application Server Clusters > CEA cluster name > Communications Enabled Applications (CEA). Where CEA cluster name is the name for the WebSphere Application Server CEA cluster.
    3. Change virtual host to VH_demo and select Enable communications service; then click OK.
    4. Add the SIP_DEFAULTHOST ports for all of the CEA members to the VH_demo virtual host group.
      • Click Environment > Virtual hosts > VH_demo > Host Aliases. Add the ports to the virtual host. You can check what the ports are for the SIP_DEFAULTHOST by selecting Servers > Server Type > WebSphere Application Server > CEA member name > Ports
    For more information about changing the CEA settings, see CEA settings.
  5. Create a proxy, or a proxy cluster, with SIP and HTTP:
    1. Click Servers > Server Types > WebSphere proxy servers > New.
    2. Select the node for the CEA server.
      Note: Proxy servers are not required on every server that is in the cluster.

      For more information about creating a proxy, see Install a Session Initiation Protocol proxy server.

    3. Select HTTP and SIP protocol.
      Note: You can Create a proxy cluster to improve the management of multiple proxy servers. However, there is no failover support between members of a proxy cluster, since there is no option for memory to memory replication. The configuration steps for a proxy cluster are the same as for the single proxy.
  6. Configure the HTTP Proxy Server settings and SIP proxy settings.
    1. Configure the proxy to add the hostname of the web server machine as a trusted security proxy. The plug-in file for the web server adds the trusted proxy private header to the request that it forwards. To permit the proxy server to accept requests from the web server plug-in, specify that the web server is trusted proxy:
      1. Go to Servers > Server Types > WebSphere Proxy server > Proxy_server_name > HTTP Proxy Server Settings > Proxy settings.
      2. Enter the hostname for the web server machine in the Trusted security proxies table. Select All for Generate Plugin Configuration; then click OK to save the configuration
    2. Expand Servers > Server Types > WebSphere proxy servers > proxy_server_name > SIP proxy settings.
      The SIP proxy settings page is displayed.
    3. Set the CEA cluster as the Default Cluster. The Default cluster indicates which cluster of application servers receive SIP traffic.
    4. Apply and save the changes.
    5. Restart the proxy server.

    For more information about the HTTP Proxy Server settings, see HTTP proxy settings

    For more information about the SIP proxy settings, see SIP proxy settings.

  7. Modify the plugin-cfg.xml for your web server to route HTTP requests to the proxy server. If you modify the virtual_host or port number perform the following step again to re-configure your web server.
    1. Back up the plugin-cfg.xml file for your web server.
    2. Open the plugin-cfg.xml file for the proxy server generated in step 6.
    3. Copy the block between <ServerCluster name=" and </TrustedProxyGroup>". The content to copy should look something like this:
      <!-- Server Clusters -->
      <ServerCluster Name="ODRCluster" 
           CloneSeparatorChange="false" 
           LoadBalance="Round Robin" 
           PostSizeLimit="-1" 
           RemoveSpecialHeaders="true" 
           RetryInterval="60">
      <Server Name="MyProxyServer" 
           ConnectTimeout="0" 
           ExtendedHandshake="false" 
           MaxConnections="-1" 
           WaitForContinue="false" 
           LoadBalanceWeight="1">
      <Transport Hostname="hostname.mycompany.com" Port ="1024" Protocol ="http"/>
      <Transport Hostname="hostname.mycompany.com" Port ="1025" Protocol ="https">
      <Property Name="keyring" Value="/opt/WebSphere/AppServer/profiles/demo/etc/plugin-key.kdb"/>
      <Property Name="stashfile" Value="/opt/WebSphere/AppServer/profiles/demo/etc/plugin-key.sth"/>
      </Transport>
      </Server>
      </ServerCluster>
      <!-- Trusted Proxy Groups -->
      <TrustedProxyGroup>
      <TrustedProxy name="hostname.mycompany.com"/>
      </TrustedProxyGroup>
      <!-- Virtual Host Groups -->
    4. Copy the content to the plugin-cfg.xml file for your web server, right before the </config> tag.
    5. Add the following content to the plugin-cfg.xml file for your web server, right before the </config> tag:
      <UriGroup Name="MyGroupName">
      <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/commsvc.rest/*"/>
      </UriGroup>
      
      <Route ServerCluster="ODRCluster" UriGroup="MyGroupName" VirtualHostGroup="default_host"/> 
    For more information about modifying the plugin-cfg.xml file, see plugin-cfg.xml .
    Note: If you are installing CEA and coshopping on a SunOne web server, a shopper can be required to enter a username and password when creating or ending a coshopping session. SunOne web servers do not allow DELETE/PUT requests by default, which coshopping uses when creating or ending a session. When you are installing CEA and coshopping on a SunOne web server, add write/delete permission to the access control file for DELETE/PUT requests. Refer to the SunOne documentation for instructions.
  8. Restart all clusters, the proxy server, and the web server.
  9. Publish the Madisons-FEP.sar store archive to each node of your clustered environment.
  10. Publish the MadisonsEnhancements.sar file to each node of your clustered environment.
  11. Enable the coshopping store function.
  12. Integrate the CEA dojo library with the WebSphere Commerce EAR file. LinuxAIXWindows
    1. Go to WC_installdir/bin directory.
    2. Run the following script:
      • Windows config_ant.bat -DinstanceName=commerce_instance_name -DceadojoLocation=path_to_ceadojo -buildfile ..\components\store-enhancements\xml\Coshopping.xml
      • LinuxAIXconfig_ant.sh -DinstanceName=commerce_instance_name -DceadojoLocation=path_to_ceadojo -buildfile ../components/store-enhancements/xml/Coshopping.xml

      The default ceadojo path is WAS_installdir/feature_packs/cea/javascript/ceadojo.

  13. Optional: If your are using a remote web server, copy the WebSphere Commerce Server Stores.war file to the web server.
    1. On the WebSphere Commerce Server go to WAS_installdir/Profiles/instance_name/InstalledApps/WC_instance_name_cell/WC_instance_name.ear/Stores.war. Copy the Stores.war file.
    2. On the web server, add the file to WAS_installdir/Profiles/instance_name/InstalledApps/WC_instance_name_cell/WC_instance_name.ear/Stores.war.
    3. Restart the web server.