Deploying Unica Plan on WebSphere

You can deploy the Unica Plan application from a WAR file or an EAR file on the WebSphere® Application Server (WAS).

Before you begin

Consider the following points before you deploy Unica Plan on Websphere:
  • Verify that your version of WebSphere® meets the requirements that are described in the Recommended Software Environments and Minimum System Requirements document, including any necessary fix packs or upgrades.
  • You use the WebSphere® Integrated Solutions console to configure your WebSphere® Application Server. The steps that follow provide guidance for setting specific controls.
  • Ensure that you add javax.el-3.0.1-b11.jar in WAS server lib directory. You can download javax.el-3.0.1-b11.jar from https://mvnrepository.com/artifact/org.glassfish/javax.el/3.0.1-b11.
Note: Different versions of WebSphere® Application Server present user interface controls in varying sequences and with alternative labels.

About this task

Complete the following steps to set up the environment for deploying Unica Plan:

Procedure

  1. Define a custom property: On the Application servers > <servers> > Web container > Custom properties form, click New and enter following values:
    • Name:com.ibm.ws.webcontainer.invokefilterscompatibility
    • Value: true
  2. Create the JDBC provider: On the Resources > JDBC > JDBC providers form, click New. Complete the Create a new JDBC provider wizard, including the following fields:

    Datasource creation in the web app server can be skipped if you configure through the installer.

    1. For Implementation type, select Connection pool data source.
    2. Specify the native library path of the database driver JAR file on your server.
      For example, db2jcc4.jar / ojdbc6.jar / sqljdbc4.jar / mariadb-java-client-2.4.1 / onedb-jdbc-8.0.0.1-complete.jar.
    3. For MariaDB, provide Implementation class name as org.mariadb.jdbc.MariaDbDataSource
  3. Create the data source: On the Resources > JDBC > Data sources form, click New. Complete the Create a data source wizard by completing the following actions:

    Datasource creation in the web app server can be skipped if you configure through the installer.

    1. Specify a data source name.
    2. For JNDI name, enter plands.
    3. Select the JDBC provider that you created in step 2.
    4. Specify the database name and server name.
    5. For Mapping-configuration alias select WSLogin.
  4. Define custom properties for the data source: On the JDBC providers > <database provider> > Data sources > Custom properties form click New to add two properties:
    • Name: user
    • Value: <user_name>
    • Name: password
    • Value: <password>

    If your Unica Plan system tables are in DB2®, locate the resultSetHoldability property and set its value to 1. If this property does not exist, add it.

  5. Create new custom properties for MariaDB data source.
    • Port: <portnumber>
    • databaseName: <database name>
    • serverName: <server name>
    • driverType : 4
  6. Configure the JVM: On the Application servers > <server> > Process definition > Java Virtual Machine form, identify the Classpath then add the following entries as Generic JVM arguments, separated by a space:
    • -Dplan.home=<installation_directory>\<Plan_Home>

      where <Plan_Home> is the path to the directory where you installed Unica Plan. Typically this path is HCL_Unica/Plan.

    • -Dclient.encoding.override=UTF-8
    • Make sure that the following JVM parameters are present. If not add them:
      • For version 12.1.0, 12.1.0.1, 12.1.0.2, and 12.1.0.3, add the following parameters:
        • -Dlog4j2.contextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector
        • -Dlog4j2.configurationFile=file:///<Plan_home>\conf\plan_log4j.xml (in case of fresh install of 12.1)
        • -Dlog4j.configurationFile=file:///<Plan_home>\conf\plan_log4j.xml (in case of fresh install of 12.1)
      • For version 12.1.0.4 or later, if you are installing, add the following parameters. If you are upgrading from version 12.1.0 or later, remove the parameters mentioned earlier, and add the following parameters:
        • -Dlog4j.configuration=file:///<Plan_home>\conf\plan_log4j_1x.xml
        • -Dplan.log4j.config=<Plan_home>\conf\plan_log4j.xml
        • -Dplan.log4j.async=true (If not set, deafults to true)
      Note:
      • For version 12.1.0, 12.1.0.1, 12.1.0.2, and 12.1.0.3, if you have customized the plan_log4j.xml and made some changes to suit your organization, then ensure that you make those settings in the plan_log4j.xml specified here as per the -Dlog4j2.configurationFile and the -Dlog4j.configurationFile that has been deployed.
      • For version 12.1.0.4 or later, if you have customized the plan_log4j.xml and made some changes to suit your organization, then ensure that you make those settings in the plan_log4j.xml specified here as per the -Dplan.log4j.config file that has been deployed.
      • For version 12.1.0, 12.1.0.1, 12.1.0.2, and 12.1.0.3, ensure that the xml file pointed by log4j2.configurationFile and log4j.configurationFile is the same and follows the log4j2 syntax. The file should contain the following two lines at the top:
         <?xml version="1.0" encoding="UTF-8"?>
        <Configuration packages="com.unica.afc.logger" monitorInterval="60">
      • For version 12.1.0.4 or later, ensure that the xml file pointed by -Dplan.log4j.config file follows the log4j2 syntax. The file should contain the following two lines at the top:
         <?xml version="1.0" encoding="UTF-8"?>
        <Configuration packages="com.unica.afc.logger" monitorInterval="60">
      • See the log4j2 documentation for details by referring to the link: https://logging.apache.org/log4j/2.0/manual/configuration.html
      • In Windows, the file path contains a back slash. Whereas, in UNIX, it must contain a forward slash.
      • The path separator in the log4j configuration file name should be set as Windows style() or UNIX (/ ) style based on the underlying operating system.
  7. In the <Plan_home>/conf/ location, the 12.1.2 installer creates a back up of the existing files:
    File name before backup File name after backup
    plan_log4j.xml plan_log4j.xml_pre_12.1.2
    plan_log4j_client.xml plan_log4j_client.xml_pre_12.1.2
    plan_log4j_socket_server.xml plan_log4j_socket_server.xml_pre_12.1.2

    If the backed up files contain custom settings, you must ensure that the custom settings are copied to the newly added configuration files by the 12.1.2 installer.

  8. Set the JSP Compilation level in the WebSphere application server to 18.

Deploying the WAR or EAR file

When you deploy a new enterprise application, the WebSphere® Integrated Solutions Console presents a series of forms. The steps that follow provide guidance for setting specific controls on these forms. Different versions of WebSphere® can present controls in another sequence or with other labels.

About this task

Complete the following steps to deploy the WAR or EAR file:

Procedure

  1. Select Applications > New Application > New Enterprise Application.
  2. On the initial form, select Remote file system and then Browse to the plan.war file or your EAR file.
  3. On the next Preparing for the Application Installation window:
    • Select Detailed.
    • Select Generate Default Bindings.
    • Select Override existing bindings.
  4. On the Select Installation Options window, complete the following actions:
    • Select Precompile JavaServer Pages files.
    • For Application name, enter plan.
    • Select Override class reloading settings for Web and EJB modules.
    • For Reload interval in seconds, enter an integer such as 4.
  5. On the Map Modules to Servers window, select the Module. If you deployed an EAR, select every WAR file.
  6. On the Provide Options to Compile JSPs window, select the Web module. If you deployed an EAR, select every WAR file.
  7. Set the JDK Source Level to 18.
  8. On the JSP reloading options for Web modules form, select JSP enable class reloading and for JSP reload interval in seconds enter 5.
  9. On the Map shared libraries window, select the Application and the Module.
  10. On the Map shared library relationships window, select the Application and the Module.
  11. On the Map resource references to resources window, select the module and for Target Resource JNDI Name enter plands.
  12. On the Map context roots for Web modules window, for Context Root enter /plan.
  13. Review and save your settings.

Defining class loader policy

Class loader policy defines how the application is configured on WAS. You must change some of the default settings on WAS before you deploy Unica Plan.

About this task

Complete the following steps to define the class loader policy:

Procedure

  1. On the Enterprise Applications > plan > Class loader, select Override class reloading settings for Web and EJB modules.
  2. For Class loader order, select Classes loaded with local class loader first (parent last).
  3. For WAR class loader policy, select Single class loader for application.
  4. Click Apply and Save Settings.

Defining settings for cookies

You must define and set settings for cookies by using Session Management option on the Websphere Enterprise Applications.

About this task

Complete the following steps to define the settings for cookies:

Procedure

  1. Go to the Enterprise Applications > plan > Session management.
  2. Select Override session management.
  3. Select Enable cookies.
  4. Click Apply, then go to the Enterprise Applications > plan > Session management > Cookies.
  5. Change the Unica Plan Cookie name from JSESSIONID to UMOSESSIONID.
  6. Click Apply and Save Settings.

Defining EAR module settings

If you deployed an EAR file, you must define settings for the individual WAR files that are contained by the EAR files.

About this task

Complete the following steps to define EAR file module settings:

Procedure

  1. Go to Enterprise Applications and select the EAR file.
  2. On the Manage Modules form, select one of the WAR files; for example, MktOps.war.
  3. On the Enterprise Applications > EAR > Manage Modules > WAR form, complete the following substeps:
    1. Set Starting weight to 10000.
    2. For Class loader order, select Classes loaded with application class loader first.
  4. On the Enterprise Applications > EAR > Manage Modules > WAR > Session management, select Enable cookies.
  5. On the Enterprise Applications > EAR > Manage Modules > WAR > Session Management > Cookies, complete the following steps:
    1. Set the Cookie name to CMPJSESSIONID.
    2. For the Cookie maximum age, select Current browser session.
  6. On the Enterprise Applications > EAR > Manage Modules > WAR > Session management, enter the following information:
    1. Select Allow overflow.
    2. For Maximum in-memory sessions, enter 1000.
    3. For Session timeout, select Set timeout and enter 30.
  7. Define the same settings for each of the other WAR files, including unica.war and plan.war.
    Note: If the Campaign.war file also exists in the EAR file and you plan to integrate Unica Plan with Unica Campaign, define the same settings for the Campaign.war file.