15 Extending the Domain with Business Process Management

The procedures described in this chapter guide you through the process of extending the enterprise deployment topology to include Business Process Management (BPM).

15.1 Variables Used When Configuring Business Process Management

As you perform the tasks in this chapter, you will be referencing the directory variables listed in this section.

The values for several directory variables are defined in File System and Directory Variables Used in This Guide.

  • ORACLE_HOME

  • ASERVER_HOME

  • MSERVER_HOME

  • OHS_DOMAIN_HOME

  • JAVA_HOME

In addition, you will be referencing the following virtual IP (VIP) addresses defined in Physical and Virtual IP Addresses Required by the Enterprise Topology:

  • ADMINVHN

Actions in this chapter will be performed on the following host computers:

  • SOAHOST1

  • SOAHOST2

  • WEBHOST1

  • WEBHOST2

15.2 Prerequisites for Extending the SOA Domain to Include Oracle BPM

Before extending the current domain, ensure that your existing deployment meets the necessary prerequisites.

  • Back up the installation - If you have not yet backed up the existing Fusion Middleware Home and domain, Oracle recommends backing it up now.

    To back up the existing Fusion Middleware Home and domain, see Performing Backups and Recoveries in the SOA Enterprise Deployments.

  • Existing WL_HOME and SOA ORACLE_HOME (binaries) are installed in previous chapters on a shared storage and are available from SOAHOST1 and SOAHOST2.

  • Node Manager, Admin Server, SOA Servers and WSM Servers exist and have been configured as described in previous chapters to run a SOA system.

  • You do not need to run RCU to load additional schemas for BPM. These are part of the SOA repository and are loaded into the DB in the SOA chapter

15.3 Installing Oracle Business Process Management for an Enterprise Deployment

The installation of Oracle SOA Foundation and Business Process Management software for an enterprise deployment is a three-step process.

15.3.1 Starting the Installation Program

To start the installation program, perform the following steps.

  1. Log in to the target system.
  2. Make sure certified JDK already exists on your system.

    For more information, see Installing a Supported JDK.

  3. Go to the directory where you downloaded the installation program.
  4. Launch the installation program by running the java executable from the JDK directory on your system, as shown in the examples below.
    JAVA_HOME/bin/java -d64 -jar fmw_12.2.1.2.0_soa.jar
    

    Be sure to replace JDK location in these examples with the actual JDK location on your system.

When the installation program appears, you are ready to begin the installation.

15.3.2 Navigating the Oracle BPM Installation Screens

The installation program displays a series of screens, in the order listed in Table 15-1.

If you need additional help with any of the installation screens, click the screen name.

Table 15-1 Oracle Business Process Management Install Screens

Screen Description

Installation Inventory Setup

On UNIX operating systems, this screen will appear if this is the first time you are installing any Oracle product on this host. Specify the location where you want to create your central inventory. Make sure that the operating system group name selected on this screen has write permissions to the central inventory location.

For more information about the central inventory, see Understanding the Oracle Central Inventory in Oracle Fusion Middleware Installing Software with the Oracle Universal Installer.

Auto Updates

Use this screen to automatically search My Oracle Support for available patches or automatically search a local directory for patches that you’ve already downloaded for your organization.

Installation Location

Use this screen to specify the location of your Oracle home directory. For the Oracle Home, specify /u01/oracle/products/fmwnnnn.

For more information about Oracle Fusion Middleware directory structure, see Selecting Directories for Installation and Configuration in Oracle Fusion Middleware Planning an Installation of Oracle Fusion Middleware.

Installation Type

Use this screen to select the type of installation and consequently, the products and feature sets you want to install.

  • Select BPM

NOTE: The topology in this document does not include the examples, Oracle strongly recommends that you do not install the examples into a production environment.

Prerequisite Checks

This screen verifies that your system meets the minimum necessary requirements.

If there are any warning or error messages, you can refer to one of the following documents in Roadmap for Verifying Your System Environment in Oracle Fusion Middleware Installing and Configuring the Oracle Fusion Middleware Infrastructure.

Installation Summary

Use this screen to verify the installation options you selected. If you want to save these options to a response file, click Save Response File and provide the location and name of the response file. Response files can be used later in a silent installation situation.

For more information about silent or command line installation, see Using the Oracle Universal Installer in Silent Mode in Oracle Fusion Middleware Installing Software with the Oracle Universal Installer.

Click Install to begin the installation.

Installation Progress

This screen allows you to see the progress of the installation.

Click Next when the progress bar reaches 100% complete.

Installation Complete

Review the information on this screen, then click Finish to dismiss the installer.

15.3.3 Verifying the Installation

After you complete the installation, you can verify it by successfully completing the following tasks.

15.3.3.1 Reviewing the Installation Log Files

Review the contents of the installation log files to make sure that no problems were encountered. For a description of the log files and where to find them, see Understanding Installation Log Files in Installing Software with the Oracle Universal Installer.

15.3.3.2 Checking the Directory Structure

The contents of your installation vary based on the options you selected during the installation.

The addition of BPM will add the following directory and sub-directories to the ORACLE_HOME/soa/bpm directory:

composites
helpsets
lib
modules

For more information about the directory structure you should see after installation, see What are the Key Oracle Fusion Middleware Directories? in Oracle Fusion Middleware Understanding Oracle Fusion Middleware.

15.3.3.3 Viewing the Contents of Your Oracle Home

You can also view the contents of your Oracle home using the viewInventory script. For more information, see Viewing the contents of an Oracle home in Oracle Fusion Middleware Installing Software with the Oracle Universal Installer.

15.4 Running the Configuration Wizard on SOAHOST1 to Extend a SOA Domain to Include BPM

Run the Configuration Wizard from the ORACLE_COMMON_HOME directory to extend a domain containing an Administration Server, Oracle Web Services Manager and SOA to support BPM components.

15.4.1 Starting the Configuration Wizard

Note:

If you have added any customizations directly to the start scripts in the domain, those are overwritten by the configuration wizard. To customize server startup parameters that apply to all servers in a domain, you can create a file called setUserOverrides.sh and configure it to, for example, add custom libraries to the WebLogic Server classpath, specify additional java command line options for running the servers, or specify additional environment variables. Any customizations you add to this file are preserved during domain upgrade operations, and are carried over to remote servers when using the pack and unpack commands.

To start the Configuration Wizard:

  1. From the WebLogic Server Console, stop any managed servers that will be modified by this domain extension. Managed Servers that are not effected can remain on-line.

    Note:

    This specific domain extension for Oracle Business Process Management component modifies the WLS_SOAn managed servers. Be sure to shut down these Managed Servers.
  2. Verify the status of the managed servers, and then stop the Administration Server.
  3. Navigate to the following directory and start the WebLogic Server Configuration Wizard.
    cd ORACLE_HOME/oracle_common/common/bin
    ./config.sh -log=bpm.log -log_priority=debug
    

15.4.2 Navigating the Configuration Wizard Screens to Extend the Domain with BPM

In this step, you extend the domain created in Extending the Domain with Oracle SOA Suite , and add the BPM components and Managed Servers.

Follow the instructions in these sections to create and configure the domain for the topology, with static clusters.

15.4.2.1 Extending the Domain with Static Clusters

Follow the instructions in this section to create and configure the domain for the topology with static clusters.

Note:

This procedure assumes you are extending an existing domain. If your needs do not match the instructions given in the procedure, be sure to make your selections accordingly, or refer to the supporting documentation for additional details.

Domain creation and configuration includes the following tasks:

Task 1   Selecting the Domain Type and Domain Home Location

On the Configuration Type screen, select Update an existing domain.

In the Domain Location field, select the value of the ASERVER_HOME variable, which represents the complete path to the Administration Server domain home you created in Creating the Initial Infrastructure Domain for an Enterprise Deployment.

For more information about the directory location variables, see File System and Directory Variables Used in This Guide

Tip:

More information about the other options on this screen can be found in Configuration Type in Oracle Fusion Middleware Creating WebLogic Domains Using the Configuration Wizard.

Task 2   Selecting the Configuration Template

On the Templates screen, make sure Update Domain Using Product Templates is selected, then select the following templates:

  • Oracle BPM Suite - 12.2.1.2.0[soa]

In addition, the following additional templates should already be selected, because they were used to create the initial domain and extend it to SOA:

  • Basic Weblogic Server Domain - 12.2.1.2[wlserver]

  • Oracle SOA Suite 12.2.1.2[soa]

  • Oracle Enterprise Manager - 12.2.1.2[em]

  • Oracle WSM Policy Manager - 12.2.1.2[oracle_common]

  • Oracle JRF - 12.2.1.2[oracle_common]

  • WebLogic Coherence Cluster Extension - 12.2.1.2[wlserver]

The ODSI XQuery 2004 Components - 12.1.3.0 [oracle_common] template will also be selected if you had extended the domain previously with Oracle Service Bus.

Note:

There is no 12.2.1.1.0 template for ODSI. The 12.1.3 template will work for your 12.2.1.1.0 configuration.

Tip:

More information about the options on this screen can be found in Templates in Oracle Fusion Middleware Creating WebLogic Domains Using the Configuration Wizard.

Task 3   Specifying the Datasource Configuration Type

All fields are pre-populated, because you already configured the domain to reference the Fusion Middleware schemas that are required for the Infrastructure domain. BPM uses the existing Datasources for SOA and no new Datasources need to be added to the domain.

Note:

Any custom datasources that were created before the extension (like LEASING datasources) will show up before this screen. Check the Datasources row and click Next. The test datasource screen will verify its validity. Click Next.

Task 4   Selecting Advanced Configuration

To complete domain configuration for the topology, do not select any additional options on the Advanced Configuration screen. Click Next. BPM applications and required artifacts will be targeted automatically to the existing SOA servers.

Task 5   Reviewing your Configuration Specifications and Configuring the Domain

The Configuration Summary screen contains the detailed configuration information for the domain you are about to create. Review the details of each item on the screen and verify that the information is correct.

You can go back to any previous screen if you need to make any changes, either by using the Back button or by selecting the screen in the navigation pane.

Domain creation will not begin until you click Update.

Tip:

More information about the options on this screen can be found in Configuration Summary in Oracle Fusion Middleware Creating WebLogic Domains Using the Configuration Wizard.

Task 6   Writing Down Your Domain Home and Administration Server URL

The Configuration Success screen will show the following items about the domain you just configured:

  • Domain Location

  • Administration Server URL

You must make a note of both items as you will need them later; the domain location is needed to access the scripts used to start Administration Server, and the URL is needed to access the Administration Server.

Click Finish to dismiss the configuration wizard.

If the Admin Server was running during the domain extension process, restart the server before you continue.

Task 7   Start the Administration Server

Start the Administration Server to ensure the changes you have made to the domain have been applied.

15.5 Propagating the Extended Domain to the Domain Directories and Machines

Oracle BPM Suite requires some updates to the WebLogic Server start scripts. Propagate these changes using the pack and unpack commands.

Table 15-2 summarizes the steps required to propagate the changes to all the domain directories and machines.

Note that there is no need to propagate the updated domain to the WEBHOST1 and WEBHOST2 machines, because there are no changes to the Oracle HTTP Server instances on those host computers.

Table 15-2 Summary of Tasks Required to Propagate the Domain Changes to Domain Directories and Machines

Task Description More Information

Pack up the Extended Domain on SOAHOST1

Use the Pack command to create a new template jar file that contains the new Oracle BPM Suite Managed Servers configuration.

When you pack up the domain, create a template jar file called soadomaintemplateExtSOABPM.jar.

Packing Up the Extended Domain on SOAHOST1

Unpack the Domain in the Managed Servers Directory on SOAHOST1

Unpack the template jar file in the Managed Servers directory on SOAHOST1 local storage.

Unpacking the Domain in the Managed Servers Domain Directory on SOAHOST1

Unpack the Domain on SOAHOST2

Unpack the template jar file in the Managed Servers directory on the SOAHOST2 local storage.

Unpacking the Domain on SOAHOST2

15.6 Updating SOA BPM Servers for Web Forms

Oracle BPM Web Forms define the interface that enables users to interact with your application. For business applications created with Oracle BPM, these forms are displayed in Oracle Business Process Management Workspace.

For web form to work properly in a highly available environment, perform the following steps:

  1. Edit the MSERVER_HOME/bin/startWebLogic.sh file.

    Note:

    If you perform a domain extension, the script is overwritten by the unpack command. Therefore, you have to apply the changes again in the startWebLogic.sh file. You can also copy the changes from the backup file that the unpack command creates before you overwrite the script.

  2. Insert the following code in the startWebLogic.sh file. Use a different port than the server listen port:

         if [ "${SERVER_NAME} = "WLS_SOA1" ]; then 
            export cache_port=7801 
            export host_bind=SOAHOST1 
         fi 
         if [ "${SERVER_NAME}"  = "WLS_SOA2" ]; then 
            export cache_port=7801 
            export host_bind=SOAHOST2
         fi 
            JAVA_OPTIONS="${JAVA_OPTIONS} -Djgroups.tcpping.bind_port=${cache_port} 
            -Djgroups.tcpping.initial_hosts=SOAHOST1[7801],SOAHOST2[7801]
            -Dfrevvo.metadata.cache-config=/WEB-INF/cache-clustered.xml 
            -Dfrevvo.cache.config.file=cache-tcp.xml 
            -Dfrevvo.cluster=SOA_Cluster 
            -Djgroups.tcpping.num_members=2 
            -Djgroups.bind_addr=${host_bind}  
            -Djava.net.preferIP4Stack=true 
    

    Note:

    Servers, hosts, and ports are updated in scale scenarios.
        
    

15.7 Restarting the WLS_SOA Managed Servers with Business Process Management

For configuration changes and start scripts to be effective, you must restart the WLS_SOAn server to which BPM has been added.

Because BPM extends an already existing SOA system, the Administration Server and respective Node Managers are already running in SOAHOST1 and SOAHOST2.

To restart the WLS_SOA1 Managed Server:

  1. Enter the following URL into a browser to display the Fusion Middleware Control login screen:
    http://ADMINVHN:7001/em
    
  2. Log in to Fusion Middleware Control using the Administration Server credentials.
  3. In the Target Navigation pane, expand the domain to view the Managed Servers in the domain.
  4. Select the WLS_SOA1 Managed Server and click Shut Down on the Oracle WebLogic Server toolbar.

    Note:

    SOA Servers depend on the policy access service to be functional, so the WSM-PM Managed Servers in the domain need to be up and running and reachable before the SOA servers are started.

  5. When the shutdown operation is complete, make sure the server is still selected, and then click Start Up in the toolbar.
  6. Repeat steps 4 and 5 for the WLS_SOA2 Managed Server.
  7. When the startup operation is complete, navigate to the Domain home page and verify that the WLS_SOA1 and WLS_SOA2 Managed Servers are up and running.

15.8 Adding the Enterprise Deployment Administration User to the Oracle BPM Administrators Group

Before you validate the Oracle Business Process Management configuration on the Managed Server, add the enterprise deployment administration user (weblogic_soa) to the Business Process Management Administrators group in the LDAP directory.

To perform this task, refer to Configuring Roles for Administration of Oracle SOA Suite Products.

Note that the first time you log in to the Business Process Management Composer or Business Process Management Worklist applications, you must log in as a user that is a member of the Administrators group. After the initial login, any user can be an administration user, as long as they are granted the following roles:

OracleBPMComposerRolesApp/BPMComposerAdmin

Also, after the first login, any authenticated user should be able to access the Business Process Management applications.

15.9 Configuring the Web Tier for the Extended Domain

Configure the Web server instances on the Web tier so that the instances route requests for both public and internal URLs to the proper clusters in the extended domain.

For additional steps in preparation for possible scale-out scenarios, see Updating Cross Component Wiring Information.

15.9.1 Configuring Oracle Traffic Director for the Extended Domain

If you have configured Oracle Traffic Director for this domain, you might be required to add additional origin server pools, virtual servers, or routes to the Oracle Traffic Director configuration. To understand the Oracle Traffic Director requirements for each Oracle Fusion Middleware product and for instructions on adding origin server pools, virtual servers, and routes, see Defining Oracle Traffic Director Virtual Servers for an Enterprise Deployment.

15.9.2 Configuring Oracle HTTP Server for Oracle Business Process Management

Make the following modifications to the Oracle HTTP Server instance configuration files to ensure that the Oracle HTTP Server instances in the Web tier can route Oracle Business Process Management requests correctly to the Oracle Business Process Management software.

To enable Oracle HTTP Server to route requests to the BPM Composer and BPM Workspace console:

  1. Log in to WEBHOST1 and change directory to the configuration directory for the first Oracle HTTP Server instance (ohs1):
    cd OHS_DOMAIN_HOME/config/fmwconfig/components/OHS/ohs1/moduleconf
    
  2. Add the following directives inside the <VirtualHost> tag in the soa_vh.conf file:
    # BPM
    <Location /bpm/composer>
      WLSRequest ON
      WebLogicCluster SOAHOST1:8001,SOAHOST2:8001
      WLProxySSL ON
      WLProxySSLPassThrough ON
    </Location>
    
    # BPM
    <Location /bpm/workspace>
      WLSRequest ON
      WebLogicCluster SOAHOST1:8001,SOAHOST2:8001
      WLProxySSL ON
      WLProxySSLPassThrough ON
    </Location>
    
    <Location /frevvo>
        WLSRequest ON
        WebLogicCluster SOAHOST1:8001,SOAHOST2:8001 
        WLProxySSL ON
        WLProxySSLPassThrough ON
    </Location>
    </VirtualHost>
    
  3. Change directory to the following location so you can update the configuration file for the second Oracle HTTP Server instance (ohs2):
    cd OHS_DOMAIN_HOME/config/fmwconfig/components/OHS/ohs2/moduleconf
    
  4. Open the soa_vh.conf file and add the Oracle Business Process Management directives to the <VirualHost> tag.
  5. Restart Oracle HTTP Servers on WEBHOST1 and WEBHOST2.

15.10 Enabling SSL Communication Between Business Process Management Servers and the Hardware Load Balancer

After you extend the domain with Business Process Management, you must ensure that the Administration Server and Managed Servers can access the front-end, SSL URL of the hardware load balancer.

This will allow Business Process Management to use Web services to invoke callbacks and other communications with the front-end, secure URL.

If you already configured this communication for the Oracle SOA Suite (WLS_SOA) Managed Servers, then you should be able to validate this configuration using the validation procedures in Validating Access to Business Process Management Through the Hardware Load Balancer.

If you have not yet configured SSL communication with the hardware load balancer, then see Enabling SSL Communication Between the Middle Tier and the Hardware Load Balancer before you proceed to the validation steps.

15.11 Validating Access to Business Process Management Through the Hardware Load Balancer

Because the cluster address for the SOA_Cluster has already been set in the previous chapter, the Business Process Management system can be verified only after the Oracle HTTP Server configuration files have been modified to route the Business Process Management context URLs to the WebLogic Servers.

Use the following procedure to verify the Business Process Management URLs to ensure that appropriate routing and failover is working from the hardware load balancer to the Oracle HTTP Server instances to the Business Process Management Managed Servers:

  1. While the WLS_SOA2 Managed Server is running, stop the WLS_SOA1 Managed Server using the Oracle WebLogic Server Administration Console.
  2. Use your Web browser to access the following URLs:
    https://soa.example.com/bpm/composer/
    https://soa.example.com/bpm/workspace/
    
  3. Log in using the weblogic_soa administration credentials.

    You should see the BPM Composer and BPM Workspace applications (Figure 15-1 and Figure 15-2)

  4. Start WLS_SOA1 from the Oracle WebLogic ServerAdministration Console.
  5. Stop WLS_SOA2 from the Oracle WebLogic Server Administration Console.
  6. Access the same URLs to verify that the load balancer and Oracle HTTP Server instances can route the requests to the other Managed Server.

Figure 15-1 Oracle BPM Composer

Description of Figure 15-1 follows
Description of "Figure 15-1 Oracle BPM Composer"

Figure 15-2 Oracle BPM Workspace

Description of Figure 15-2 follows
Description of "Figure 15-2 Oracle BPM Workspace"

15.12 Configuring BPMJMSModule for the Oracle BPM Cluster

The BPMJMSModule JMS Module is deployed automatically when you configure Oracle Business Process Management in a Oracle WebLogic Server domain.

However, when you deploy Oracle Business Process Management Server as part of a Oracle WebLogic Server cluster, you must modify the default values for the quota and redelivery limits for specific JMS resources within the BPMJMSModule JMS module.

Specifically, you must modify the JMS topic resources listed in the following table.

JMS Resource Property Description Recommended Setting

Measurement distributed topic in a cluster configuration:

dist_MeasurementTopic_auto

Quota

This setting causes issues if a large number of messages are published to the measurement JMS topic and the message consumption is relatively slow.

When the JMS default threshold of maximum message size is reached, then additional messages cannot be published and any attempt at publishing fails with the following exception:

ResourceAllocationException

Set Quota to MeasurementQuota

Measurement distributed topic in a cluster configuration:

dist_MeasurementTopic_auto

Redelivery Limit

In a cluster configuration, this property is set to -1 by default.

This setting causes JMS to retry sending the message until it is successfully acknowledged.

If the measurement topic consumers cannot process messages due to a system error that causes the transaction to rollback, then the system can experience performance issues and the filling up of logs with repeated exceptions.

Set the redelivery limit to three (3).

Measurement distributed topic in a cluster configuration:

dist_MeasurementTopic_auto

Forwarding Policy

A distributed measurement topic in a cluster installation is configured by default with the Forwarding Policy set to Replicated, even though this is not the best performance option for BPM analytics.

For more information, see Tuning Oracle Business Process Management in Oracle Fusion Middleware Tuning Performance.

For more information on partitioned and replicated forwarding policies, see Configuring Partitioned Distributed Topics in Oracle Fusion Middleware Administering JMS Resources for Oracle WebLogic Server.

Change the Forwarding Policy to Partitioned.

To modify the BPMJMSModule Resource settings:

  1. Log in to the Oracle WebLogic Server Administration Console.
  2. Select Services > Messaging > JMS Modules in the left navigation pane.
  3. Click BPMJMSModule in the list of JMS Modules.
  4. Select dist_MeasurementTopic_auto in the Summary of Resources table.
  5. Click the Thresholds and Quotas tab.
  6. Click Lock and Edit.
  7. From the Quota drop-down menu, select MeasurementQuota and click Save.
  8. Click the Delivery Failure tab.
  9. Verify that the following fields are set to 3:
    • Redelivery Delay Override

    • Redelivery Limit

  10. Click the General tab.
  11. From the Forwarding Policy menu, select Partitioned.
  12. Click Save.
  13. Restart all SOA BPM cluster nodes for the changes to take effect.

15.13 Backing Up the Oracle BPM Configuration

It is an Oracle best practices recommendation to create a backup after successfully extending a domain or at another logical point. Create a backup after verifying that the installation so far is successful. This is a quick backup for the express purpose of immediate restoration in case of problems in later steps.

The backup destination is the local disk. You can discard this backup when the enterprise deployment setup is complete. After the enterprise deployment setup is complete, you can initiate the regular deployment-specific Backup and Recovery process.

For information about backing up your configuration, see Performing Backups and Recoveries in the SOA Enterprise Deployments.

15.14 Enabling Automatic Service Migration and JDBC Persistent Stores for Oracle Business Process Management

To ensure that Oracle Business Process Management is configured for high availability, configure the Managed Servers with automatic service migration for failover and zero data loss.

For more information on enabling server migration, see Configuring Automatic Service Migration in an Enterprise Deployment.

Note that if you have already configured automatic service migration for the WLS_SOA Managed Servers, then this step is not necessary.

For additional high availability, you can also configure your transaction logs store and JMS store in a database. For more information, see Using Persistent Stores for TLOGs and JMS in an Enterprise Deployment.