Configuring Java CAPS JBI Components for GlassFish Clustering

Configuring the IEP Service Engine for Multiple Standalone Instances

You can deploy the same application across multiple IEP SEs that connect to the same database. In a standalone environment, an event processor is owned by the IEP instance on which it is deployed first. The rest of the processing is similar to that in a clustered environment. All instances can receive the incoming messages, and once a message is received it is inserted into the IEP database. The instance that owns the event processor picks up the event to complete processing and writes the output. If an IEP instance fails, any in-process transactions are taken over by one of the remaining IEP instances and the process is completed. When the failed engine recovers, it continues to process new requests.

ProcedureTo Configure the IEP Service Engine for Multiple Standalone Instances

Before You Begin

If you are using a Derby database, start the database independent of GlassFish. If you are using Oracle, create the database instance for the persistence database.

  1. Install two or more GlassFish v2.1 domains.

  2. Configure the first GlassFish domain by doing the following:

    1. Launch the Admin Console.

    2. Create the database connection pools and JDBC resources as described in Setting Up the IEP Database.

    3. In the left navigation bar, select Application Server.

    4. Click the JVM Settings tab, and then click the JVM Options tab.

    5. Click Add JVM Option, and enter the following in the blank row that appears:

      -Dcom.sun.jbi.iepse.isClustered=true

    6. Click Add JVM Option, and enter the following in the blank row that appears:

      -Dcom.sun.jbi.iepse.instanceName=Name

      Where Name is a unique name for the IEP SE instance.

    7. Restart the application server.

    8. Make sure all necessary components are installed.

    9. Repeat these steps on the subsequent GlassFish domains. Use a unique name for the instance, and point all domains to the same persistence database.

  3. When all domains are configured, start the IEP SE (sun-iep-engine) on all domains.

  4. Configure the following runtime properties for each IEP SE instance, and then stop and restart the IEP SE:

    • Non XA Data Source Name – The non-XA JDBC resource you created earlier.

    • XA Data Source Name – The XA JDBC resource you created earlier.

      lmu

    • Database Schema Name – This matches the username specified in the connection pools.

  5. Check the IEP SE database table named EMS_ENGINE. The ID column should list each instance name you defined.

  6. When you deploy the Service Assembly, deploy it to all standalone GlassFish domains.