Chapter 45. Configuring IBM WebSphere Application Server for KIE Server

Before you deploy KIE Server with IBM WebSphere Application Server, you must configure system properties, security settings, JMS requirements, and other properties on IBM WebSphere. These configurations promote an optimal integration with KIE Server.

Prerequisites

  • IBM WebSphere Application Server is installed and running.
  • You are logged in to the WebSphere Integrated Solutions Console.

45.1. Enabling administrative security

You must enable administrative security in the WebSphere Integrated Solutions Console so that you have the required permissions to create users and groups.

Procedure

  1. In the WebSphere Integrated Solutions Console, click SecurityGlobal Security and ensure that the option Enable Application Security is selected. This may already be selected and overridden at the server level.
  2. Click Security Configuration Wizard and click Next.
  3. Select the repository that contains the user information. For example, select Federated repositories for local configurations.
  4. Click Next
  5. Enter the Primary administrative user name and Password.
  6. Click Next and then click Finish.
  7. Click Save in the Messages window to save your changes to the primary configuration.

    Figure 45.1. Save security changes

    Save security changes
  8. In your command terminal, navigate to the IBM WebSphere Application Server /bin directory location that you specified during installation, and run the following commands to stop and restart IBM WebSphere to apply the security changes:

    sudo ./stopServer.sh <SERVER_NAME>
    sudo ./startServer.sh <SERVER_NAME>

    Replace <SERVER_NAME> with the IBM WebSphere Application Server name defined in ServersServer TypesIBM WebSphere Application Servers of the WebSphere Integrated Solutions Console.

45.2. Configuring Java Message Service (JMS)

The Java Message Service (JMS) is a Java API that KIE Server uses to exchange messages with other application servers such as Oracle WebLogic Server and IBM WebSphere Application Server. You must configure your application server to send and receive JMS messages through KIE Server to ensure collaboration between the two servers.

45.2.1. Create a service bus and add IBM WebSphere Application Server

You must create a service bus and add the IBM WebSphere Application Server as a member in order to use JMS.

Procedure

  1. In the WebSphere Integrated Solutions Console, navigate to Service IntegrationBusesNew.
  2. Enter a new bus name and clear the Bus Security option.
  3. Click Next and then Finish to create the service bus.
  4. Select the service bus that you created.
  5. Under Topology, select Bus MembersAdd.
  6. In the Add a New Bus Member wizard, choose the IBM WebSphere Application Server and the type of message store for persistence. You can also specify the properties of the message store.
  7. Click Finish to add the new bus member.

45.2.2. Create JMS connection factories

To enable messaging with KIE Server, you must create certain JMS connection factories for sending and receiving messages.

Prerequisites

  • You have created a service bus for IBM WebSphere Application Server.

Procedure

  1. In the WebSphere Integrated Solutions Console, navigate to ResourcesJMSConnection Factories.
  2. Select the correct scope and click New.
  3. Select the Default Messaging Provider option and click OK.
  4. For each of the following required connection factories, enter the name of the connection factory (for example, KIE.SERVER.REQUEST) and the JNDI name (for example, jms/cf/KIE.SERVER.REQUEST), and then select the service bus from the Bus Name drop-down list. Leave the default values for the remaining options.
  5. Click Apply and then click Save to save the changes to the primary configuration, and repeat for each required factory.

45.2.2.1. JMS connection factories for KIE Server

The following table lists the required Java Message Service (JMS) connection factories that enable JMS messaging with KIE Server:

Table 45.1. Required JMS connection factories for KIE Server

NameDefault valueUsed for

KIE.SERVER.REQUEST

jms/cf/KIE.SERVER.REQUEST

Sending all requests to KIE Server

KIE.SERVER.RESPONSE

jms/cf/KIE.SERVER.RESPONSE

Receiving all responses produced by KIE Server

45.2.3. Create JMS queues

JMS queues are the destination end points for point-to-point messaging. You must create certain JMS queues to enable JMS messaging with KIE Server.

Prerequisites

  • You have created a service bus for IBM WebSphere Application Server.

Procedure

  1. In the WebSphere Integrated Solutions Console, navigate to ResourcesJMSQueues.
  2. Select the correct scope and click New.
  3. Select the Default Messaging Provider option and click OK.
  4. For each of the following required queues, enter the name of the queue (for example, KIE.SERVER.REQUEST) and the JNDI name (for example, jms/KIE.SERVER.REQUEST), and then select the service bus from the Bus Name drop-down list.
  5. From the Queue Name drop-down list, select the Create Service Integration Bus Destination, enter a unique identifier, and select the bus member that you created previously.
  6. Click Apply and then click Save to save the changes to the primary configuration, and repeat for each required queue.

45.2.3.1. JMS queues for KIE Server

The following table lists the required Java Message Service (JMS) queues that enable JMS messaging with KIE Server:

Table 45.2. Required JMS queues for KIE Server

NameDefault valueUsed for

KIE.SERVER.REQUEST

jms/KIE.SERVER.REQUEST

Sending all requests to KIE Server

KIE.SERVER.RESPONSE

jms/KIE.SERVER.RESPONSE

Receiving all responses produced by KIE Server

45.2.4. Create JMS activation specifications

A JMS activation specification is required in order to bridge the queue and the message-driven bean that enables JMS.

Prerequisites

  • You have created a service bus for IBM WebSphere Application Server.
  • You have created JMS queues.

Procedure

  1. In the WebSphere Integrated Solutions Console, navigate to ResourcesJMSActivation Specifications.
  2. Select the correct scope and click New.
  3. Select the Default Messaging Provider option and click OK.
  4. For each of the following required activation specifications, enter the name of the activation specification (for example, KIE.SERVER.REQUEST) and the JNDI name (for example, jms/activation/KIE.SERVER.REQUEST), and then select the service bus from the Bus Name drop-down list.
  5. From the Destination Type drop-down list, select Queue and enter the name of the corresponding queue as a Destination lookup (for example, jms/KIE.SERVER.REQUEST).
  6. Click Apply and then click Save to save the changes to the primary configuration, and repeat for each required activation specification.

45.2.4.1. JMS activation specifications for KIE Server

The following table lists the required Java Message Service (JMS) activation specifications that enable JMS messaging with KIE Server:

Table 45.3. Required JMS activation specifications for KIE Server

NameDefault valueUsed for

KIE.SERVER.REQUEST

jms/activation/KIE.SERVER.REQUEST

Sending all requests to KIE Server

KIE.SERVER.RESPONSE

jms/activation/KIE.SERVER.RESPONSE

Receiving all responses produced by KIE Server

45.3. Setting system properties in IBM WebSphere Application Server

Set the system properties listed in this section on your IBM WebSphere Application Server before you deploy KIE Server.

Procedure

  1. In the WebSphere Integrated Solutions Console, navigate to ServersServer TypesIBM WebSphere Application Servers.
  2. In the list of application servers, choose the server on which you are going to deploy KIE Server.
  3. Under the Server Infrastructure, click Java and Process ManagementProcess Definition.

    Figure 45.2. WebSphere configuration page

    WebSphere configuration page
  4. Under Additional Properties, click Java Virtual Machine.

    Figure 45.3. Process definition configuration page

    process definition2

    This opens the configuration properties for the JVM that is used to start IBM WebSphere.

  5. Set both the Initial heap size and Maximum heap size to 2048 and click Apply to increase the Java Virtual Machine (JVM) memory size. KIE Server has been tested with these values. If you do not increase the JVM memory size, IBM WebSphere Application Server freezes or causes deployment errors when deploying KIE Server.
  6. Under Additional Properties, click Custom Properties.
  7. Click NewCustom JVM Properties and add the following properties to IBM WebSphere:

    Table 45.4. System properties for KIE Server

    NameValueDescription

    kie.server.jms.queues.response

    jms/KIE.SERVER.RESPONSE

    The JNDI name of JMS queue for responses used by KIE Server.

    org.kie.server.domain

    WSLogin

    JAAS LoginContext domain used to authenticate users when using JMS.

    org.jbpm.server.ext.disabled

    true

    Disables Business Central features, which are not supported in RHDM. If not set, KIE Server will work, but will show error messages during start up.

    org.jbpm.ui.server.ext.disabled

    true

    Disables Business Central features, which are not supported in RHDM. If not set, KIE Server will work, but will show error messages during start up.

    org.jbpm.case.server.ext.disabled

    true

    Disables Business Central features, which are not supported in RHDM. If not set, KIE Server will work, but will show error messages during start up.

    org.jboss.logging.provider

    jdk

    This property is only required where a CA SiteMinder TAI (SMTAI) is installed in the environment. Using this property forces Hibernate to use JDK instead of log4j for logging within Dashbuilder. CA SiteMinder TAI (SMTAI) contains an old version of log4j, which causes conflicts.

  8. Click Save to save the changes to the primary configuration.

45.4. Stopping and restarting IBM WebSphere Application Server

After you have configured all required system properties in IBM WebSphere Application Server, stop and restart the IBM server to ensure that the configurations are applied.

Procedure

In your command terminal, navigate to the IBM WebSphere Application Server /bin directory location that you specified during installation, and run the following commands to stop and restart IBM WebSphere to apply the configuration changes:

sudo ./stopServer.sh <SERVER_NAME>
sudo ./startServer.sh <SERVER_NAME>

Replace <SERVER_NAME> with the IBM WebSphere Application Server name defined in ServersServer TypesIBM WebSphere Application Servers of the WebSphere Integrated Solutions Console.