You are here: Configure the Application Server

Configure WebSphere Server

This section is applicable, if you use WebSphere as the J2EE Web container for the setup.

After making the necessary modifications to Kony Fabric Engagement Services files, configure Websphere. Perform the following tasks using Websphere Administration Console. You need to log in to the Administration Console to perform these operations:

Configure the Application Server

You need to log in to the Websphere Administration Console to perform these operations.

To configure the server, follow these steps:

  1. Log in to Websphere Administration Console.
  2. Select Servers > Application Servers from the left menu.
  3. Click Server1 link and select the Configuration tab.
  4. Navigate to Server Infrastructure section and click Java and Process Management > Process Definition.
  5. On Additional Properties, click Java Virtual Machine.
  6. Select the Configuration tab.
  7. In the Generic JVM arguments field, enter the system properties as mentioned below:

    ParametersRequiredDescription
    -Xms2048mYesMinimum heap size: 2GB
    -Xms2048mYesMaximum heap size: 2GB
    -XX:UseParallelGC NoRecommended setting
    -Dkpns.configLocationYes

    This is the directory where the ConfigResource.properties, database.properties and kms-log4j2.xml files must be placed.

    For example, if the location is /data/kpns-config, then you must specify the property as -Dkpns.configLocation=/data/kpns-config

    -Dhibernate.dialect Enable hibernate dialet configuration for Oracle database.

    DB2=org.hibernate.dialect.DB2Dialect- per database

    SQL= com.kony.kms.dialect.KMSSQLServerDialect

    Oracle= org.hibernate.dialect.Oracle10gDialect

    MYSQL= org.hibernate.dialect.MySQLDialect

    Sample arguments for a server would look like:

    -Xms2048m -Xmx2048m -Dkpns.configLocation=/data/kpns-config.

  8. Click OK and save the configuration.

Configure Database

Setup MySQL database driver

Ignore this section if the database driver is already configured. The assumption is that you use MySQL database.

To setup MySQL database driver, follow these steps:

  1. In the Administration Console, select Resources > JDBC > JDBC Provider from the left menu.
  2. On the right pane, click New, to navigate to configure new JDBC provider.
  3. Select the following information:
    1. Database type: User-defined.
    2. Implementation class name:

      com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource

    3. Name: Enter a name for the resource, for example MySQL_JDBC_Provider.
  4. Click Next.
  5. Provide the classpath for the driver library. For example, enter the value${WAS_INSTALL_ROOT}/lib if the MySQL connector jar is placed here.
  6. Copy mysql-connector-java-5.1.26-bin.jar to the aforesaid path.
  7. Click Finish and Save the configuration.

Setup Oracle database driver

Ignore this section if the database driver is already configured. The assumption is that you use an Oracle database.

To setup Oracle database driver, follow these steps:

  1. In the Administration Console, select Resources> JDBC>JDBC Provider from the left menu.
  2. On the right pane, click New, to navigate to configure new JDBC provider.
  3. Select the following information:
    1. Database type: Oracle.
    2. Provider type = Oracle JDBC Driver
    3. Implementation type: Connection pool data source
  4. Click Next.
  5. Provide the absolute path to the JDBC driver library. For example, enter the value${ORACLE_JDBC_DRIVER_PATH} if the ojdbc6.jar is placed here.
  6. Click Next and verify the Summary.
  7. Click Finish and Save the configuration.

Setup DB2 database driver

Ignore this section if the database driver is already configured. The assumption is that you use a DB2 database.

To setup a DB2 driver, follow these steps:

  1. In the Administration Console, select Resources > JDBC > JDBC Providers from the left menu.
  2. On the right pane, select the scope as cell.
  3. Click New, to navigate to configure the new JDBC provider.
  4. Select the following information:
    1. Database TypeDB2
    2. Provider TypeDB2 Using IBM JCC Driver
    3. Implementation Type: Connection pool data source
    4. The Name field is populated as DB2 Using IBM JCC Driver(Optional) by default.
  5. Click Next.
  6. In the Directory location for "db2jcc4.jar, db2jcc_license_cisuz.jar" that is saved as WebSphere variable ${DB2UNIVERSAL_JDBC_DRIVER_PATH} field, provide the path where the DB2 driver files are located.For example, /opt/db2jars.

    Note: Ensure that the following DB2 driver files db2jcc4.jar, db2jcc_license_cisuz.jar and db2jcc_license_cu.jar are downloaded and copied to the file system - /opt/db2jars.

  7. Click Next.
  8. Verify the implementation class name and click Finish.

Setup Microsoft SQL database driver

Ignore this section if the database driver is already configured. The assumption is that you use a Microsoft SQL database.

To setup Microsoft SQL database driver, follow these steps:

  1. In the Administration Console, select Resources > JDBC > JDBC Provider from the left menu.
  2. On the right pane, click New, to navigate to configure new JDBC provider.
  3. Select the following information:
    1. Database type: SQL Server
    2. Provider Type: Microsoft SQL Server JDBC Driver
    3. Implementation type: Connection pool data source
  4. Click Next.
  5. Provide the absolute path to the JDBC driver library. For example, enter the value${MICROSOFT_JDBC_DRIVER_PATH} and ${MICROSOFT_JDBC_DRIVER_NATIVEPATH}.
  6. Click Next and verify the Summary.
  7. Click Finish and Save the configuration.

Configure Datasource for MySQL

Execute the following steps to configure Datasource.

To configure the J2C Authentication entry, follow these steps:

  1. In the Administration Console, select Security > Global Security from the left menu.
  2. In the right side pane, under Authentication, click Java Authentication and Authorization Service > J2C authentication data.
  3. Click New and enter the following properties:
    1. Alias: Enter Alias. This is an alias name for the authentication entry, for example MySQLAdmin.
    2. User ID: Enter the username to connect to the database.
    3. Password: Enter the password for the entered username.
  4. Click Apply and Save the configuration.

To create a Datasource, follow these steps:

  1. In the Administration Console, select Resources > JDBC > Data sources from the left menu.
  2. In the right side pane, click New to create a new datasource.
  3. In the Step-1 of Create a datasource wizard, enter the following:
    1. Data source name: Enter the datasource name, for example kpnsdb.
    2. JNDI Name: jdbc/kpnsdb (For push notifications)
  4. Click Next.
  5. In Step-2 of the wizard, choose Select an existing JDBC provider and select the driver created using a Setup MySQL database driver, from the drop-down.
  6. Click Next.
  7. Click Next with default configurations in Step-3 of the wizard.
  8. In Step-4, Setup security aliases, select the J2C Authentication entry created above.
  9. Click Finish and Save the configuration.

To complete the configuration of the created datasource, follow these steps:

  1. In the Administration Console, select Resources > JDBC > Data sources from the left menu.
  2. Select the datasource just created (kpnsdb).
  3. Select Additional Properties > Custom properties.
  4. Edit the following properties and set the appropriate values:
    1. serverName: Provide the hostname or IP address of the database host.
    2. port: Enter the port number to be used to connect to the database.
    3. databaseName: Enter the name of the database to be used.
  5. Save the configuration.
    NameCustom Properties
    databaseNameKPNSDB
    portUser-defined. For MySQL the port number is 3306
    serverNameURL of the MySQL Server

Configure Datasource for Oracle

Execute the following steps to configure Datasource.

To configure the J2C Authentication entry, follow these steps:

  1. In the Administration Console, select Security > Global Security from the left menu.
  2. In the right side pane, under Authentication, click Java Authentication and Authorization Service > J2C authentication data.
  3. Click New and enter the following properties:
    1. Alias: Some alias name for the authentication entry, for example client1 credentials.
    2. User ID: Enter the username to connect to the database.
    3. Password: Enter the password for the entered username.
  4. Click Apply and Save the configuration.

To create a Datasource, follow these steps:

  1. In the Administration Console, select Resources > JDBC > Data sources from the left menu. In the page that appears, click New. Enter the following information:
    • Create Data source name as: kpnsdb
    • JNDI Name: jdbc/kpnsdb (For push notifications)
    • Click Next.
  2. In the page that appears:
    • Choose Select an existing JDBC provider and select an Oracle driver from the drop-down.
    • Click Next.
  3. In the page that appears:
    •  Enter the following information:
      • url: jdbc:oracle:thin:@[ip address]:[Oracle port (1521)]:[Oracle database name (orcl)]
      • Data store helper class name: Oracle 10g data store helper.
      • Proceed to the next page.
      • In the page that appears, for the fields Component-managed authentication alias and Container-managed authentication alias, select kpnsdbAuth. Here kpnsdbAuth will be pre-appended with node name.
      • Click Next and click Finish
      • Save the configuration.
    •  In the Data source page, click kpnsdb
    •  Select Connection Pool properties and change the values:
      •  30 for maximum connections
      •  10 for minimum connections
    • Click OK and save the configuration. You are directed to the Data source page.
    • Select kpnsdb and click Test Connection to ensure data source setup is correct.
    • Click Save to save configurations.

Configure Datasource for Microsoft SQL

Execute the following steps to configure Datasource.

To configure the J2C Authentication entry, follow these steps:

  1. In the Administration Console, select Security > Global Security from the left menu.
  2. In the right side pane, under Authentication, click Java Authentication and Authorization Service > J2C authentication data.
  3. Click New and enter the following properties:
    1. Alias: Some alias name for the authentication entry, for example client1 credentials.
    2. User ID: Enter the username to connect to the database.
    3. Password: Enter the password for the entered username.
  4. Click Apply and Save the configuration.

To create a Datasource, follow these steps

  1. In the Administration Console, select Resources > JDBC > Data sources from the left menu. In the page that appears, click New. Enter the following information:
    • Data source name: kpnsdb
    • JNDI Name: jdbc/kpnsdb(For push notifications).
    • Click Next.
  2. In the page that appears:
    • Choose Select an existing JDBC provider and select a Microsoft SQL Server JDBC Driver for Microsoft SQL from the drop-down menu.
    • Click Next.
  3. In the page that appears,enter the following information:
    •  Database Name: kpnsdb
    •  Server Name: <Name of the server>
    • Port Number: 1433
    • Click Next
    • In the Security Aliases page, select the Global J2C authentication alias. A new window for J2C authentication window appears.

      • Component-managed authentication alias: User-defined
      • Container-managed authentication alias: User-defined
      • Click Next and Finish.
    • Click the name of the created datasource in the main pane.
    • In the left pane, navigate to Connection pool properties, select Connection Pool properties and change the values:
      • 30 for maximum connections.
      • 10 for minimum connections.
    • Select the Microsoft SQL data source and go to >Custom Properties >New ,then enter name as sendStringParametersAsUnicode and value as true.

Configure Datasource for DB2

To configure the J2C Authentication entry, follow these steps:

  1. In the Administration Console, select Security > Global Security from the left menu.
  2. In the right side pane, under Authentication, click Java Authentication and Authorization Service > J2C authentication data.
  3. Click New and enter the following properties:
    1. Alias: Some alias name for the authentication entry, for example client1 credentials.
    2. User ID: Enter the username to connect to the database.
    3. Password: Enter the password for the entered username.
  4. Click Apply and Save the configuration.

To create a Datasource, follow these steps:

  1. In the Administration Console, select Resources > JDBC > Data sources from the left menu.
  2. In the page that appears, click New. Enter the following information:
    DataDescription
    Data source namekpnsdb
    JNDI Name jdbc/kpnsdb(For push notifications).
  3. Click Next.
  4. In the page that appears,select an existing JDBC provider and select a DB2 Using IBM JCC Driver from the drop-down menu.
  5. Click Next.
  6. In the page that appears,enter the following information:
    DataDescription
    Driver type4
    Database Name<DB2 databasename>
    Server Name <Server hostname/ip>
    Port number<port>
  7. Click Next.

  8. In the Security Aliases page, select the Global J2C authentication alias. A new window for J2C authentication window appears.
    • Component-managed authentication alias: User-defined
    • Container-managed authentication alias: User-defined
  9. Click Next and finish.
  10. Click the name of the created datasource in the main pane.
    • 30 for maximum connections.
    • 10 for minimum connections.
  11. Select the DB2 data source and go to Custom Properties >New.
  12. Create following two properties if they do not exist:
    • currentSchema
    • progressiveStreaming
  13. Set currentSchema value as KPNSDB (case sensitive)
  14. Set progressiveStreaming value as 2.

Configure Shared Libraries for WebSphere 8 and 8.5

These steps are mandatory to configure shared libraries for WebSphere 8 and 8.5 versions.

  1. Extract all libraries from sharedlib.tar to your local system.
  2. Create a directory path in the server with the name sharedlib/lib. For example, /home/core/install/kpns_sharedlib
  3. Copy the JAR files from the Step 1 to  /home/core/install/kpns_sharedlib location.
  4. Login to the Websphere Admin Console.
    1. Click Environment in the left pane to view sections. Click Shared libraries. Shared Libraries section appears in the right pane.
    2. Based on your environment, choose the specific scope or Node under Shared libraries section.
    3. Click the New button.
  5. A shared Libraries page appears. Enter the following details:
    1. Name: kpns-shared-lib
    2. Description: isolated jar files are from kpns.war file
    3. Classpath: /home/core/install/kpns_sharedlib
  6. Select the Use an isolated class loader for this shared library check box.
  7. Click Ok and save the changes.
  8. Click Save to apply the changes to the master configuration.

Deploy Engagement Services

To deploy KPNS, follow these steps:

  1. In the Administration Console, navigate to Applications > Install New Application.
  2. From the right side, select the kpns.war to install.
  3. Click Next. The Install New Application wizard appears
  4. Click Next and finish the deployment.
  5. Save the configuration and start the application.
  6. Click on kpns link in Applications. KPNS Application Configuration page appears.
  7. Click the Shared library reference link under References, and select the KPNS Application Configuration page.
  8. On Shared library references page, check kpns.war/ WEB-INF/web.xml.
  9. Click the Reference Shared Libraries button.
  10. Select the added shared library from the Available list box and use the single arrow icon to move it to Selected list box.
  11. Click OK to save the changes.The Reference Shared Libraries list view appears.
  12. Click OK.
  13. Click Save to apply the changes to the master configuration.
  14. Restart the server.

Post Installation Validation

  1. For post installation validation, do the following:

    1. Check the SystemOut.log file for the successful kpns validation message. If the log displays FATAL ERRORS, verify the setup.
    2. Check the kpns.log file. It should show a successful license validation message.
    3. Open the browser and enter– http://<ipaddress> or <hostname>:<port>/kpns. It should display log in page with a username as admin and a password as admin.

    Websphere Unrestricted JCE Policy JAR Files for iPhone Push Notifications and Nexmo SMS gateway configuration

    While sending a push message for iPhone, if it results with a push failure, you see the following exception.

    "java.io.IOException: Error in loading the keystore: Private key decryption 
    error: (java.security.InvalidKeyException: Illegal key size)" 

    Or while sending SMS with Nexmo provider, if it results with a SMS failure, you see the following exception.

    IO Exception occurred

    javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated

    at com.ibm.jsse2.SSLSessionImpl.getPeerCertificates(SSLSessionImpl.java:79)

    at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:126)

    at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:572)

    at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection

    To fix this exception, you need to use the unrestricted policy files: local_policy.jar, US_export_policy.jar by replacing the existing jar files in %WAS_HOME%\java\jre\lib\security location, and then restart your Websphere.

    Note: The unrestricted policy files provided here will work with all IBM Java SDKs version 1.4.2 and higher.

    You can download the unrestricted.zip file with your IBM login credentials:

    https://www14.software.ibm.com/webapp/iwm/web/preLogin.do?source=jcesdk

    Contact Kony technical support for any technical questions.

    Troubleshoot GCM Connectivity Issues

    KPNS connects to GCM server using  HTTPS connectivity. During this connection, KPNS downloads required certificates into "cacerts" file.

    However, if KPNS fails to download the required certificates from GCM cloud, you will not able to send Push notifications. You may encounter below exception in  kpns.log file.

    22:12:04,155 ERROR MessagingThread - Push Id: 7507098635507597314 type: 
    AndroidGCMPushService-MessageExecutor:31 - The push task failed to execute.
    java.lang.NullPointerException
    
    at com.kony.pns.commons.HttpConnectionManager.executeRequest(HttpConnectionManager.java:109)
    at com.kony.pns.service.message.processor.AndroidGCMPushService.push(AndroidGCMPushService.java:99)
    at com.kony.pns.service.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:61)
    at com.kony.pns.beans.monitor.MessageExecutor$MessageTask.run(MessageExecutor.java:463)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:908)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:931)
    at java.lang.Thread.run(Thread.java:773)

    To resolve this error, follow the command to import GCM certificate manually to cacerts file:

    $ openssl s_client -connect android.googleapis.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,
    /-END CERTIFICATE-/p'
    depth=3 /C=US/O=Equifax/OU=Equifax Secure Certificate Authority
    verify return:1
    depth=2 /C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
    verify return:1
    depth=1 /C=US/O=Google Inc/CN=Google Internet Authority G2
    verify return:1
    depth=0 /C=US/ST=California/L=Mountain View/O=Google Inc/CN=*.googleapis.com
    verify return:1
    

    Copy the certificate starting from "-----BEGIN CERTIFICATE-----" to -----END CERTIFICATE----- without giving any additional spaces and save in to a file called  gcmcert.crt

    Now import the cert in to cacerts as shown in the below example commands.

    [root@plqa1was-1 tmp]# /data/bharath/IBM/WebSphere/AppServer/java/bin/keytool -import -alias 
    "gcmcert" -keystore /data/bharath/IBM/WebSphere/AppServer/java/jre/lib/security/cacerts -file
    /tmp/gcmcert.crt
    Enter keystore password:
    Owner: CN=*.googleapis.com, O=Google Inc, L=Mountain View, ST=California, C=US
    Issuer: CN=Google Internet Authority G2, O=Google Inc, C=US
    Serial number: 66a0f2f133449076
    Valid from: 10/23/13 8:49 PM until: 10/23/14 5:30 AM
    Certificate fingerprints:
             MD5:  88:6E:93:FB:BE:43:B7:75:6E:ED:7B:ED:DF:A3:44:E9
             SHA1: 2E:36:85:62:B7:A6:0B:97:D2:65:6A:70:B6:0E:FB:20:B0:9A:87:85
    Trust this certificate? [no]:  yes
    Certificate was added to keystore
    

    Restart Websphere and retry to send push notifications.

Configure WebSphere Network Deployment (8.5) - Multi-node

Configure WebSphere ND, before you proceed with the necessary modifications to Kony Server files. Perform the following tasks using WebSphere Administration Console. You need to log in to the Administration Console to perform these operations.

Configure Cluster in WebSphere Application Server

Configuring Vertical Cluster

You can enable multiple appservers on a single machine to increase the capacity of your installation.

Vertical clustering is only supported within the WebSphere Application Server environment. The following parameters must be met:

Federating app server nodes to the Network Deployment Manager

  1. Log in to the remote server with SSH and navigate to profiles/AppServer01/bin directory.
  2. To add to the DMGR cluster, ensure that you execute ./addNode.sh script as shown below:

    Syntax:

    ./addNode.sh deployment_manager_host deployment_manager_SOAP_port -username <userID_for_authentication> -password <password_for_authentication> -localusername <localuserID_for_authentication> -localpassword <localpassword_for_authentication>

    For example:

    #./addNode.sh dmgrmachine1 8879 -username wasadm -password kony123

    Note: Before you run the above command to federate, ensure that the node is up.

  3. Restart Node Agent with the below command by navigating to ../profiles/AppServer01/bin location

    Note: Avoid starting node agent if the new profile node and DMGR  are on the same physical box and there is already an attached profile running along with node agent.

    If during the fresh installation only DMGR is installed, then Restart the node is mandatory for each profile node.

    # ./startNode.sh
  4. Restart DMGR to view the newly added servers in the DMGR profile.

Configuring Horizontal Cluster

Horizontal clusters are meant for multiple app server nodes, which are deployed on remote machines to increase the capacity of your system installation, and also to achieve high availability.

Once you create profiles on remote machines by using profile management tool, go to the each AppServer bin directory and run the below command as shown example:

Ensure that you are using hostnames instead of IP address of the DMGR node. If the hostnames are not available, you can edit /etc/hosts file until the node federation is completed.

You need to repeat the above steps for each app server node to federate to DMGR.

To create a cluster, follow these steps:

  1. Create a cluster definition.
    1. Log in to WebSphere Administration Console.
    2. Select the Servers from the left menu and then select the Clusters.
    3. Select the WebSphere application server clusters. The WebSphere application server clusters screen appears in the right pane.
  2. Create cluster members.
    1.  Click the New button from the right pane. The Create a new cluster screen appears.
    2.  Enter cluster name as KonyCluster.
    3.  Click Next. The Create first cluster member screen appears.

      Note: During this process:
      You can use the Previous button to navigate to previous screens, if you wish to make any changes.
      Click the Cancel button if you wish to ignore the process.

    4.  Enter the details about the cluster members in the Member name field as cl_appsevrer1.
    5.  Define the node on which the cluster member resides from the Select Node drop-down list.
    6.  Define whether the server to be generated is based on a server template by selecting the Generate unique HTTP ports check box.
    7.  Click the Next button. The Create additional cluster members screen appears.
  3. Follow below steps to create an additional cluster members to the cluster.
    1. Enter the cluster member name in the Member name field as cl_appsevrer2, cl_appsevrer3 and so on
    2. Click the Add Member button. The newly created member is added to the grid.
    3. Define the node on which the cluster member resides from the Select Node drop-down list.
    4. Click the Next button. The Summary screen appears.
    5. Click the Finish button. The system displays the WebSphere application server clusters screen including newly created clusters.

    Note: Once the cluster is created successfully, the cluster is in unavailable (stopped) state by default. You can change the status to Started if required.

  4. Start the node agent.
    1. Go to the System administration > Node agents from left panel.
    2. Check the Status from the right panel.
    3. If the node agent is not started, execute the below script to start the same.
      WAS_HOME/profiles/YOUR_PROFILE_NAME/bin/startNode.sh
  5. Start the cluster.
    1. From the left panel, select the Servers > Clusters > WebSphere application server clusters. The WebSphere application server clusters screen appears in the right pane.
    2. Select the appropriate cluster check box.
    3. Click the Start button. The system changes the status of the cluster as Started.

Deploy Kpns.war

To deploy kpns.war, follow these steps:

  1. In WebSphere Administration Console, go to Application > New Application.
  2. In the New Application page that appears, click the NewEnterprise Applications.

    Path to the new application pane appears.

  3. Select Local file system and browse for kpns.war file. Click Next.

    We assume that the kpns.war file is located on the local file system.

  4. In the How do you want to install the application? pane that appears, select the Fast Path and click the Next.
  5. Once you reach the Map modules to the servers page, under the Clusters and servers, select WebSphere:Cell=localhostCell01,cluster=KonyCluster,then select the check box for Push Notification Server, and then click the Apply button.
  6. Click Next until you proceed to the Summary page.
  7. Verify the information and click the Finish.
  8. Click Save to save the configuration to the master configuration.
  9. Click on kpns link in Applications. The KPNS Application Configuration page appears.
  10. Click the Shared library reference link under References, and select the KPNS Application Configuration page.
  11. On Shared library references page, check kpns.war/ WEB-INF/web.xml.
  12. Click the Reference Shared Libraries button.
  13. Select the added shared library from the Available list box and use the single arrow icon to move.it to the selected list box.
  14. Click OK to save the changes.The Reference Shared Libraries list view appears.
  15. Click OK.
  16. Click Save to apply the changes to the master configuration.
  17. Restart the server.
  18. If you notice any synchronization errors, log in to the machines with SSH, navigate to each app server node bin directory and run following commands to make force deployment and configuration synchronization between node and cell.

    Note: Before running syncNode.sh, ensure that  the node agent must be stopped.

    # ./stopNode.sh
    # ./syncNode.sh dmgrmachine1 8879 -username wasadm -password kony123

Configure Database

Ignore this section if database driver is already configured. The assumption is that you are using MySQL database.

To setup MySQL database driver, follow these steps:

  1. In the Administration Console, select Resources > JDBC > JDBC Provider from the left menu.
  2. On the right pane, click New, to navigate to configure new JDBC provider.
  3. Select the following information:
    1. Database type: User-defined.
    2. Implementation class name:

      com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource

    3. Name: Enter a name for the resource, for example MySQL_JDBC_Provider.
  4. Click Next.
  5. Provide the classpath for the driver library. For example, enter the value${WAS_INSTALL_ROOT}/lib if the MySQL connector jar is placed here.
  6. Click Finish and Save the configuration.
  7. In the Application server console, navigate to JDBC>Data Sources
  8. From the right pane, select the name of the datasource defined.
  9. Navigate to Additional Properties>Custom properties.
  10. Search for Custom properties and define a value for each of the custom properties.The custom properties are as follows:

    NameCustom Properties
    databaseNameKPNSDB
    password user-defined
    portuser-defined. For MySQL the port number is 3306
    serverName URL of the MySQL Server
    userDatabase user name

Setup Oracle database driver

Ignore this section if database driver is already configured. The assumption is that you are using an Oracle database.

To setup Oracle database driver, follow these steps:

  1. In the Administration Console, select Resources> JDBC>JDBC Provider from the left menu.
  2. On the right pane, click New, to navigate to configure new JDBC provider.
  3. Select the following information:
    1. Database type: Oracle.
    2. Provider type = Oracle JDBC Driver
    3. Implementation type: Connection pool data source
  4. Click Next.
  5. Provide the absolute path to the JDBC driver library. For example, enter the value${ORACLE_JDBC_DRIVER_PATH} if the ojdbc6.jar is placed here.
  6. Click Next and verify the Summary.
  7. Click Finish and Save the configuration.

Setup DB2 database driver

Ignore this section if database driver is already configured. The assumption is that you are using a DB2 database.

To setup a DB2 driver, follow these steps:

  1. In the Administration Console, select Resources > JDBC > JDBC Providers from the left menu.
  2. On the right pane, select the scope as cell.
  3. Click New, to navigate to configure new JDBC provider.
  4. Select the following information:
    1. Database TypeDB2
    2. Provider TypeDB2 Using IBM JCC Driver
    3. Implementation Type: Connection pool data source
    4. The Name field is populated as DB2 Universal JDBC Driver Provider (Optional) by default.
  5. Click Next.
  6. In the Directory location for "db2jcc4.jar, db2jcc_license_cisuz.jar" ,which is saved as WebSphere variable ${DB2UNIVERSAL_JDBC_DRIVER_PATH} field, provide the path where the DB2 driver files are located.For example, /opt/db2jars.

    Note: Ensure that the following DB2 driver files db2jcc4.jar, db2jcc_license_cisuz.jar and db2jcc_license_cu.jar are downloaded and copied to the file system - /opt/db2jars.

  7. Click Next.
  8. Verify the implementation class name and click Finish.

Setup Microsoft SQL database driver

Ignore this section if database driver is already configured. The assumption is that you are using an Microsoft SQL database.

To setup Microsoft SQL database driver, follow these steps:

  1. In the Administration Console, select Resources > JDBC > JDBC Provider from the left menu.
  2. On the right pane, click New, to navigate to configure new JDBC provider.
  3. Select the following information:
    1. Database type: SQL Server
    2. Provider Type: Microsoft SQL Server JDBC Driver
    3. Implementation type: Connection pool data source
  4. Click Next.
  5. Provide the absolute path to the JDBC driver library. For example, enter the value${MICROSOFT_JDBC_DRIVER_PATH} and ${MICROSOFT_JDBC_DRIVER_NATIVEPATH}.
  6. Click Next and verify the Summary.
  7. Click Finish and Save the configuration.

Configure Datasource for MySQL

Execute the following steps to configure Datasource.

To configure the J2C Authentication entry, follow these steps:

  1. In the Administration Console, select Security > Global Security from the left menu.
  2. In the right side pane, under Authentication, click Java Authentication and Authorization Service > J2C authentication data.
  3. Click New and enter the following properties:
    1. Alias: Some alias name for the authentication entry, for example MySQLAdmin.
    2. User ID: Enter the username to connect to the database.
    3. Password: Enter the password for the entered username.
  4. Click Apply and Save the configuration.

To create a Datasource, follow these steps:

  1. In the Administration Console, select Resources > JDBC > Data sources from the left menu.
  2. In the right side pane, click New to create a new datasource.
  3. In the Step-1 of Create a datasource wizard, enter the following:
    1. Data source name: Enter the datasource name, for example kpnsdb.
    2. JNDI Name: jdbc/kpnsdb (For push notifications)
  4. Click Next.
  5. In Step-2 of the wizard, choose Select an existing JDBC provider and select the driver created using a Setup MySQL database driver, from the drop-down.
  6. Click Next.
  7. Click Next with default configurations in Step-3 of the wizard.
  8. In Step-4, Setup security aliases, select the J2C Authentication entry created above.
  9. Click Finish and Save the configuration.

To complete the configuration of the created datasource, follow these steps:

  1. In the Administration Console, select Resources > JDBC > Data sources from the left menu.
  2. Select the datasource just created (kpnsdb).
  3. Select Additional Properties > Custom properties.
  4. Edit the following properties and set the appropriate values:
    1. serverName: Provide the hostname or IP address of the database host.
    2. port: Enter the port number to be used to connect to the database.
    3. databaseName: Enter the name of the database to be used.
  5. Save the configuration.

Configure Datasource for Oracle

Execute the following steps to configure Datasource.

To configure the J2C Authentication entry, follow these steps:

  1. In the Administration Console, select Security > Global Security from the left menu.
  2. In the right side pane, under Authentication, click Java Authentication and Authorization Service > J2C authentication data.
  3. Click New and enter the following properties:
    1. Alias: Some alias name for the authentication entry, for example client1 credentials.
    2. User ID: Enter the username to connect to the database.
    3. Password: Enter the password for the entered username.
  4. Click Apply and Save the configuration.

To create a Datasource, follow these steps:

  1. In the Administration Console, select Resources > JDBC > Data sources from the left menu. In the page that appears, click New. Enter the following information:
    • Create Data source name as: kpnsdb
    • JNDI Name: jdbc/kpnsdb (For push notifications)
    • Click Next.
  2. In the page that appears:
    • Choose Select an existing JDBC provider and select an Oracle driver from the drop-down.
    • Click Next.
  3. In the page that appears:
    • Enter the following information:
      • url: jdbc:oracle:thin:@[ip address]:[Oracle port (1521)]:[Oracle database name (orcl)]
      • Data store helper class name: Oracle 10g data store helper.
      • Proceed to the next page.
      • In the page that appears, for the fields Component-managed authentication alias and Container-managed authentication alias: Select kpnsdbAuth. Here kpnsdbAuth will be pre-appended with node name.
      • Click Next and click Finish
      • Save the configuration.
    • In Data sources page, click kpnsdb
    • Select Connection Pool properties and change the values:
      • 30 for maximum connections
      • 10 for minimum connections
    • Click OK and save the configuration. You are directed to the Data source page.
    • Select kpnsdb and click Test Connection to ensure data source setup is correct.
    • Click Save to save configurations.

Configure Datasource for Microsoft SQL

Execute the following steps to configure Datasource.

To configure the J2C Authentication entry, follow these steps:

  1. In the Administration Console, select Security > Global Security from the left menu.
  2. In the right side pane, under Authentication, click Java Authentication and Authorization Service > J2C authentication data.
  3. Click New and enter the following properties:
    1. Alias: Some alias name for the authentication entry, for example client1 credentials.
    2. User ID: Enter the username to connect to the database.
    3. Password: Enter the password for the entered username.
  4. Click Apply and Save the configuration.

To create a Datasource, follow these steps

  1. In the Administration Console, select Resources > JDBC > Data sources from the left menu. In the page that appears, click New. Enter the following information:
    • Data source name: kpnsdb
    • JNDI Name: jdbc/kpnsdb(For push notifications).
    • Click Next.
  2. In the page that appears:
    • Choose Select an existing JDBC provider and select a Microsoft SQL Server JDBC Driver driver for MSSQL from the drop-down.
    • Click Next.
  3. In the page that appears:
    • Enter the following information:
      • Database Name: kpnsdb
      • Server Name: <Name of the server>
      • Port Number: 1433
      • Click Next
    • In the Security Aliases page, select the Global J2C authentication alias. A new window for J2C authentication appears.
    • In the page that appears, enter the following information:
      • Component-managed authentication alias: User-defined
      • Container-managed authentication alias: User-defined
      • Click Next and Finish.
    • Click the name of the created datasource in the main pane.
    • In the left pane, navigate to Connection pool properties.
      • Select Connection Pool properties and change the values:
        • 30 for maximum connections.
        • 10 for minimum connections.
      • Select the Microsoft SQL data source and go to >Custom Properties >;New then enter name as sendStringParametersAsUnicode and value is true.

Configuring Shared Libraries for WebSphere 8 and 8.5 versions - Cluster

These steps are mandatory to configure shared libraries for WebSphere 8 and 8.5 versions.

  1. Extract  all libraries from sharedlib.tar to your local system.
  2. Create a directory path in the server with the name sharedlib/lib. For example, /home/core/install/kpns_sharedlib.
  3. Create a directory path in the server with the name sharedlib/lib. For example, /home/core/install/kpns_sharedlib.
  4. Copy the JAR files from the Step 1 to  /home/core/install/kpns_sharedlib location.
  5. Login to the IBM console and stop and un-install  kpns.war if already exists.
  1. Login to Websphere Admin Console.
    1. Click Environment in the left pane to view sections. Click the Shared libraries.Shared Libraries section appears in the right pane.
    2. As per your environment, choose the specific scope or Node under Shared libraries section.
    3. Click New.
  2. Shared Libraries page appears. Enter following details:
    1. Name: kpns-shared-lib
    2. Description: isolated jar files are from kpns.war file
    3. Classpath: /home/core/install/sharedlib/lib
  3. Select the Use an isolated class loader for this shared library check box.
  4. Click Ok and save the changes.
  5. Click Save to apply the changes to the master configuration.
  6. Click the WebSphere Enterprise Application under Application Types in the left pane. The Enterprise Applications section appears in the right pane.
  7. Click the kpns link in the Applications. KPNS Application Configuration page appears.
  8. Click the Shared library reference link under References, and select the KPNS Application Configuration page.
  9. On Shared library references page, check kpns.war/ WEB-INF/web.xml.
  10. Click the Reference Shared Libraries button.
  11. Select the added shared library from the Available list box and use the single arrow icon to move it to the Selected list box.
  12. Click OK to save the changes. The Reference Shared Libraries list view appears.
  13. Click OK.
  14. Click Save to apply the changes to the master configuration.
  15. Restart the server.

Start or Stop the Cluster

  1. From the left panel, select the Servers > Clusters > WebSphere application server clusters. The WebSphere application server clusters screen appears in the right pane.
  2. If the cluster already started, you can stop and start the cluster to apply the new configuration. Click the Start button. The system changes the status of the cluster as Started.

Post Installation Validation

For post installation validation, do the following:

  1. Check the SystemOut.log file for the successful kpns validation message. If the log displays FATAL ERRORS, verify the setup.
  2. Check the kpns.log file. It should show successful license validation message..
  3. Open the browser and enter– http://<ipaddress> or <hostname>:<port>/
    kpns. It should display log in page with username admin and password as admin.
Copyright © 2015 Temenos AG. All rights reserved.