The topics listed here provide links to task, conceptual and reference information for configuring environment components for the Sun Business Process Manager (BPM). If you have any questions or problems, see the Java CAPS web site at http://goldstar.stc.com/support.
BPM provides graphical editors to help you design and configure the models that depict your Business Processes (BPs) using simple drag and drop procedures. These topics provide the background information and instructions you need to configure BP environment components.
When configured for persistence, Sun Business Process Manager (BPM) stores information about Business Process instances and activities for recovery and monitoring. Once the data is persisted, you can use Enterprise Manager to monitor Business Process instances. The level of detail you can view depends on whether you have configured a Business Process for reporting persistence and have configured the tables specific to that Business Process.
The database scripts for the monitoring and recovery database are accessed from the Java CAPS Repository, and include scripts to create, drop, purge, and archive database tables. They are located in the Sun BPM node. There are two sets of scripts you can use to create the database tables. One set of database scripts is located under Run Database Scripts, which only contains the scripts to create or drop the database tables. These scripts can be modified and run from NetBeans.
The second set of scripts is located under Download Database Scripts and are contained in .zip files specific to each database vendor. You can download these scripts, and then modify and run them from a local directory. These files contain the scripts to create or drop database tables, as well as additional purge and archive scripts that you can use to manage aging information stored in your database.
Database scripts are also generated in the Project Explorer under the Business Process node for each Business Process configured for reporting persistence. Configuring a Business Process for persistence allows you to collect and monitor more detailed data for that process than would be collected in the standard database.
The BPM Engine must be configured for persistence in order to access and store information in the monitoring and recovery database. When you configure the BPM Engine for persistence, data is stored for all Business Process instances running on the associated application server. You configure specific Business Processes to persist more detailed information for reporting and monitoring in the properties for each Business Process. When you configure a Business Process for persistence, additional database scripts are automatically created under that process. These scripts need to be run in order to enable the more detailed level of persistence.
The Environment represents the physical configuration of the Business Process Project. This section outlines how to create Environments for basic Business Process Projects and for Business Processes that include a user activity. In a production environment, the Java CAPS Environment is like to be more complex than the examples shown here. Once you create an Environment for BPM, you must configure the BPM Engine properties, located on the Properties window of the application server.
The components in a Project that contains a basic Business Process will vary depending on the external systems and other components used in the Project.
In NetBeans, click the Environment Explorer tab.
Right-click the Repository name and then click New Environment.
Name the Environment.
Right-click the Environment, point to New, and then click Logical Host.
Name the Logical Host.
Right-click the Logical Host, point to New, and then click the type of application server on which you are deploying.
Name and configure the application server.
Add and configure any necessary external systems to the Environment.
Configure the BPM Engine properties described in Configuring the BPM Engine.
Click Save All.
The components in a Project that contains a basic Business Process will vary depending on the external systems and other components used in the Project.
In the Environment Explorer, expand Environment1.
Right-click the Repository name and then click New Environment.
Name the Environment.
Right-click the Environment, point to New, and then click Logical Host.
Name the Logical Host.
Right-click the Logical Host, point to New, and then click the type of application server on which you are deploying.
Name and configure the application server.
Add and configure any necessary external systems to the Environment.
To access the Worklist Manager for task completion, you need to add and configure a Worklist Manager External System. If the user activity includes eVision web pages, you need to add an eVision External System as well.
Configure the Worklist Manager.
Configure the BPM Engine properties described in Configuring the BPM Engine.
Click Save All.
In BPM you can expose a Business Process as a web service and you can invoke web services from a Business Process. The Environment for each type of web service Business Process require different components.
The Properties window for the BPM Engine configures several aspects of the BPM Engine, including debugging, database connection, load balancing, failover and recovery, and so on. Table 1 lists and describes each property.
Table 1 BPM Engine Properties
Description |
|
---|---|
An indicator of whether the Business Process Debugger is enabled. This is not recommended for production environments because it impacts performance. |
|
The port on which the Business Process Debugger starts. |
|
An indicator of whether you are balancing processes across multiple BPM Engines. Select from the following options: |
|
The number of milliseconds to wait to process a message that has been placed in waiting. Messages are placed in waiting for various reasons, such as when the maximum number of concurrent instances is reached. |
|
An indicator of whether instance data is persisted to the monitoring and recovery database.
|
|
An indicator of whether data can be recovered to a previous state in case of failure. Persistence must be enabled in the Persistance Mode and Application Mode properties for recovery to be enabled. |
|
The number of seconds for the BPM Engine to wait to register itself as alive. For more information, see Configuring Failover. |
|
The elapsed time period before moving running Business Process instances from an unavailable engine to an available engine. This is used in conjunction with the Engine Expiry Interval property for configuring failover. |
|
The number of records to recover at one time. Sun does not recommend setting this higher than 100. |
|
The type and version of database you are using for monitoring and recovery. If you are using an Oracle 10g database, select Oracle 9i. |
|
The name of the machine on which the database resides. |
|
The port number on which the database is listening. |
|
The name for the connect descriptor (for Oracle databases only). This is the TNS name of the database, and is required to access the database using the OCI driver to access the database. If you are not using the OCI driver, leave this property blank. |
|
The name of the database. For Oracle, this is the SID name. |
|
The login ID for the monitoring and recovery database owner. The user name is defined in the database scripts you ran when creating the database tables (by default, bpm6user). |
|
The password for the monitoring and recovery database owner. The password is defined in the database scripts you ran when creating the database tables (by default, bpm6user). |
|
The maximum number of physical connections the pool should keep available at all times. 0 (zero) indicates that there is no maximum. The pool size depends on the transaction volume and response time. If the pool size is too big, you may end up with too many connections with the database. Sun recommends setting this no higher than 60. |
|
The number of retries to establish a connection with the database. |
|
The number of milliseconds to wait between each attempt to access the database. This property is used in conjunction with Database Connection Retries. |
|
The initial and minimum number of physical connections the pool should keep available at all times. 0 (zero) indicates that there should be no physical connections in the pool and the new connections should be created as needed. If the pool size is too small, you might experience longer connection times due to the existing number of physical connections. |
|
The maximum number of seconds that a physical connection will remain unused before it is closed. 0 (zero) indicates that there is no limit. |
|
Enables monitoring of Business Processes through the Enterprise Manager Monitor. If monitoring is enabled, persistence must also be enabled in the Application Mode and Persistence Mode properties. |
|
The time in milliseconds between transfers of data from the monitoring and recovery database tables to the Business Process reporting tables. |
|
The number of records at which the buffer contents is transferred to the database (if the thread buffer time lag is not expired). Monitoring data is collected in a memory buffer and is transferred to the monitoring tables based on either the buffer size or the buffer time lag, whichever occurs first. |
|
The time in seconds between transfers of data from the buffer to the monitoring table (if the buffer has not reached the thread buffer size). |
|
The time in milliseconds between transfers of data from the buffer to activity monitoring table. |
|
The maximum number of work items the BPM Engine can submit to the integration server at a given time for execution. A work item is an activity or group of activities in a Business Process submitted as a single unit of work to be run on an integration server thread. |
|
Specifies the percentage of the total Work Item Submit Limit threads that can be used for invoke activities, as opposed to other types of activities. Setting this ratio to 100% can cause a deadlock. |
|
Specifies whether database scripts will be run automatically. |
When a Business Process needs to be scaled to meet heavier processing needs, you can distribute the Business Process across multiple engines to increase throughput. BPM’s load balancing algorithm automatically distributes processing across multiple engines; however, BPM cannot load balance correlated messages.
The File Adapter is not designed to work in an BPM load-balancing scenario. Using a File Adapter will result in all instances being sent to one engine rather than being distributed.
For each affected Business Process, enable persistence.
In the Environment Explorer, right-click the application server and then click Properties.
In the BPM Engine Configuration properties, do the following:
Configure all BPM Engines to share the same database.
When the Business Process is configured for load balancing, BPM’s failover capabilities ensure throughput of running Business Process instances. When Business Process instances encounter an engine failure, BPM load balances those instances across all available engines. As with load balancing, BPM’s failover capabilities are limited to non-correlated messages.
In the Environment Explorer, right-click the application server and then click Properties.
In the BPM Engine Configuration properties, set the Engine Expiry Interval property to register itself as alive frequently enough to meet the demands of your system.
In the BPM Engine Configuration properties, set the Failover Grace Period property to the optimal elapsed time period before moving running Business Process instances from an unavailable engine to an available engine.
Optimizing these two property setting might require some testing. The Engine Expiry Interval property also applies to the interval for the recovery of dangling instances.
A basic Java CAPS deployment with BPM Business Processes leverages the runtime monitoring and management features of Enterprise Manager Monitor. In order to monitor and manage your runtime deployments, you must configure the BPM Engine to enable persistence and to connect to the monitoring and recovery database. For more information about the BPM Engine properties, see Configuring the BPM Engine.
In the Environment Explorer, expand the Environment in which the Business Process will run, and then expand the Logical Host.
Right-click the application or integration server, and then click Properties.
Click BPM Engine Configuration.
The properties for the BPM Engine appear.
To configure the connection to the monitoring and recovery database, enter the following:
Database Host - The name of the machine on which the database resides.
Database Instance/Schema - The database instance, schema, or SID.
Database User - The user name for the database. This is the user name defined in the database scripts you ran when creating the database tables.
Database Password - The password for the database user. This is the password defined in the database scripts you ran when creating the database tables.
To enable persistence and recovery without load balancing and failover, enter the following:
To enable monitoring with Enterprise Manager, set Enable Monitoring to true.
To enable the automatic execution of the database scripts, set Automatic Execution of Database Scripts to true.
Until you are ready to optimize the BPM Engine for performance, scalability, and reliability, do not change the default settings for any other BPM Engine configuration properties.
Click OK.
The Worklist Manager is a web-based interface that allows you to view, assign, escalate, and execute the tasks generated from user activities. The functions that can be performed in the Worklist Manager are based on user hierarchy. BPM supports the definition of organization hierarchies and user roles for task assignment. Tasks can be escalated and delegated by users from custom worklists and activity processing windows. The Worklist Manager requires an LDAP directory to define users, their roles, and their hierarchy.
When you create the Environment for a user activity Business Process, you need to create and configure a Worklist Manager External System. The properties you configure for the external system define the Worklist Manager database connectivity, LDAP server and directory information, and custom labels for flex attributes. Perform the following steps to configure the Worklist Manager.
In addition, you must perform one of the following tasks:
The Worklist Manager External System is created from the Environment Explorer.
In the Environment Explorer, right-click the Environment for the user activity Project.
Point to New, and then click Worklist Manager.
Enter a name for the Worklist Manager External System, and then click OK.
The Properties window appears.
Configure the Worklist Manager, as described in the following sections.
The configuration properties of the Worklist Manager define information about the Worklist Manager database and application.
On the Worklist Manager Properties window, click WLMConnector External System Configuration.
Enter values for the properties described in the following table.
Click OK.
Flex attributes are customizable attributes that aid in task assignment. The attributes appear in the Business Rule Designer as well as in columns of the Worklist Manager.
You can map values to these attributes in the Business Rule Designer so the values appear in the Worklist Manager. You can also label the attributes to make them easy to identify in the Worklist Manager.
From the Environment Explorer, right-click the Worklist Manager External System.
Click Properties.
The Properties dialog box appears.
Click Custom Attribute Labels.
Define labels for as many attributes as necessary.
Click OK.
If you defined email notifications on the Worklist Manager window for a user activity, you need to define the connection properties for the email server in the Worklist Manager External System properties. You also need to modify the LDAP properties for the directory server you are using by specifying the name of the attribute that contains the users’ email addresses.
On the Worklist Manager Properties window, click Email Server Connection Parameters.
Enter values for the properties.
Click OK.
Property |
Description |
---|---|
The name of the email server on which the Worklist Manager email notifications are sent. |
|
The login ID for the email account used by the Worklist Manager. |
|
The password for the email account. |
|
The name that should appear in the email as the sender. This property is used to create a URL, so it cannot contain any spaces. |
|
A footer for the email notifications. |
|
A second footer or disclaimer for the email notifications. |
To use OpenLDAP with the Worklist Manager, you must specify certain information about the LDAP directory structure so the Worklist Manager knows where to find the user information defined in the directory. You can use your existing directory structure as long as there is a mechanism for defining a user reporting hierarchy.
The Worklist Manager uses an anonymous bind with OpenLDAP, so you do not need to specify credentials for the security principal.
From the Environment Explorer tab, right-click the Worklist Manager External System, and then click Properties.
On the properties page that appears, verify that the Connection Parameters property is set to OpenLdapConnection.
Expand WLMConnector External System Configuration, and then click Open Ldap Parameters.
The Properties dialog box appears.
Enter values for the properties.
The default values for these properties are based on the values for the user activity sample and the and audit processing tutorial. Modify these values to suit your existing directory structure and attributes.
Click OK.
To use the Sun Java System Directory Server with the Worklist Manager, you must specify certain information about the LDAP directory structure so the Worklist Manager knows where to find the user information defined in the directory. You can use your existing directory structure as long as there is a mechanism for defining a user reporting hierarchy.
From the Environment Explorer tab, right-click the Worklist Manager External System, and then click Properties.
On the properties page that appears, verify that the Connection Parameters property is set to Sun Java System Directory Server.
Expand WLMConnector External System Configuration, and then click Sun Java System Directory Server/ADS.
The Properties dialog box appears.
Enter the property values for the properties described in the following table.
Depending on how your LDAP directory is set up, not all of these fields are required. The default configuration is not necessarily illustrative of an actual implementation.
Click OK to close the Properties dialog box.
To use Microsoft Active Directory with the Worklist Manager, you must specify certain information about the LDAP directory structure so the Worklist Manager knows where to find the user information defined in the directory. You can use your existing directory structure as long as there is a mechanism for defining a user reporting hierarchy.
From the Environment Explorer tab, right-click the Worklist Manager External System, and then click Properties.
On the properties page that appears, verify that the Connection Parameters property is set to ActiveDirectoryConnection.
Expand WLMConnector External System Configuration, and then click Sun Java System Directory Server/ADS.
The Properties dialog box appears.
Enter the property values for the properties described in the following table.
Depending on how your LDAP directory is set up, not all of these fields are required. The default configuration is not necessarily illustrative of an actual implementation.
Click OK to close the Properties dialog box.