Configuration properties for federated systems

Draft comment:
This topic only applies to BAW, and is located in the BAW repository. Last updated on 2025-03-13 12:15
The server.xml configuration file on Process Federation Server contains properties for each business process management system in the federated environment and its associated index.
The following set of elements in the server.xml configuration file contain configuration properties for a federated system.

The ibmPfs_federatedSystem element

The ibmPfs_federatedSystem element contains general configuration properties for the federated system and its index. Configure an ibmPfs_federatedSystem element for each federated system.
Table 1. Configuration properties for the ibmPfs_federatedSystem element
Property Default value Description
id None Required.

Unique identifier for the federated system. Use this property to refer to a specific system and for linking it to other indexing elements in the server.xml file. In a cluster of process federation servers, each server must use the same identifier for a given federated system.

If there are multiple unique process federation server environments (unique clusters), the identifier must be unique across the process federation server environments, even if they are connected to a common federated system.

The identifier also determines which consumer column is used in the change log tables; one consumer column is used for each identifier. Therefore, for example, two unique federated environments act as separate change log consumers and each federated environment requires its own unique identifier.

Attention: If an index name is not specified, the value of the id property must conform to the rules for the indexName property.
displayName None Optional.

The name that is used for Process Federation Server in user interfaces and messages. The value can be any combination of characters. It is returned to clients in the displayName attribute in the federationResponse object.

Attention: If a display name is not specified, the value of the property is set to the value of the id property.
indexName None Optional.
The name of the Process Federation Server index. The following rules apply to the name:
  • It must be all lowercase.
  • It must not start with an underscore.
  • It must not include commas or other special characters that are not allowed in file names on your operating system.

If an index name is not specified, the value of the property is set to the value of the id property.

Important: For Case systems, the index name is predefined and must be set as the identifier of the target object store for the federated case system. This 36-lowercase-character identifier can be retrieved from the target object store details in the Administration Console for Content Platform Engine (ACCE). The ACCE might display the identifier in uppercase characters. However, for Process Federation Server configuration you must use only lowercase characters. For example, if the identifier is displayed as 93844FD1-5A75-4809-9369-EA9C6AOC96F6 in ACCE, use 93844fd1-5a75-4809-9369-ea9c6a0c96f6 instead, like the federated system index name in the Process Federation Server server.xml configuration file.
restUrlPrefix None Required.

The base URL that is used by business-user clients to access the federated system. It is returned to clients in the federationResponse object so that they can call REST services on the federated system.

If the federated system has an HTTP Server or reverse proxy server that is configured in front of the system, clients must use the URL of the HTTP Server or reverse proxy server.

Example for process systems:
https://bpmHost.mycompany.com:9443/rest/bpm/wle
Example for BPEL systems:
https://bpmHost.mycompany.com:9443/rest/bpm/htm
Example for Case systems:
https://bpmHost.mycompany.com:9443/CaseManager/
taskCompletionUrlPrefix None Required. This property applies only to process and BPEL systems.

The base URL that is used by business-user clients for task completion on the federated process or BPEL system (it does not apply to Case systems). It is returned to clients in the federationResponse object so that they can complete tasks on the federated system.

If the federated system has an HTTP Server or reverse proxy server that is configured in front of the system, clients must use the URL of the HTTP Server or reverse proxy server.

Example for process systems:
https://bpmHost.mycompany.com:9443/teamworks
Example for BPEL systems:
https://bpmHost.mycompany.com:9443/rest/bpm/htm
portalSupportUrlPrefix None Optional. This property applies only to process systems.

The base URL that is used by business-user clients for portal support actions, such as viewing the audit history, on the federated system. The URL must end with /portal.

The URL is returned to clients in the federationResponse object so that they can perform actions on the federated system. If the federated system has an HTTP Server or reverse proxy server that is configured in front of the system, clients must use the URL of the HTTP Server or reverse proxy server.

Example:
https://bpmHost.mycompany.com:9443/portal
index.number_of_shards 3 Optional. This property applies only to process and BPEL systems when indexing is done from Process Federation Server.

The number of shards for the index. This property is passed directly to the Federated Data Repository when creating an index for the federated system (which is why it does not apply to Case systems, as Case indexes are not created by Process Federation Server). For more information, see the documentation of your Federated Data Repository, Elasticsearch External link opens a new window or tab or Opensearch External link opens a new window or tab.

Each node of the federated data repository maintains one or more of the index shards. The default value of 3 provides optimal performance when you have three to six nodes in your cluster. With three nodes, each server handles one primary shard and one replica shard. As you add more nodes, the replica shards move to the new servers. To distribute indexing and query workload in environments with more than six nodes, you might want to increase the number of shards, too.

You cannot change this value after the index is created. If you need to change the value later, you must shut down the federated environment, and rebuild the index. For more information, see Maintaining the Process Federation Server index.

The default setting is used if a value is not set.

index.number_of_replicas 1 Optional. This property applies only to process and BPEL systems when indexing is done from Process Federation Server.

The number of index replicas. This property is passed directly to the Federated Data Repository when creating an index for the federated system (which is why it does not apply to Case systems, as Case indexes are not created by Process Federation Server). Use replicas to provide the federated environment with fault tolerance so that you can distribute queries across multiple servers. A value of 1 indicates 1 primary index and 1 replica per shard. With three nodes and one replica, a node can go offline without affecting operations.

Tip: If you have five nodes in a cluster, consider increasing the number of replicas to 2 for better fault tolerance. With 2 replicas, you can lose any 2 nodes without affecting operations.

The default setting is used if a value is not set.

indexRefreshIntervalForClients 2s Optional.

Indicates the amount of time that it takes for actions on the federated system to be reflected in the index and to be available for queries by clients. The value is returned to clients in the indexRefreshInterval attribute in the federationResponse object as the result of a task query or system request but has no impact on the actual refresh interval of the data in the federated data repository.

Specify a positive integer followed by the unit of time, which can be seconds (s). For example, specify 3 seconds as 3s.

Calculate this value by combining the values of the current index.refresh_interval External link opens a new window or tab setting of the federated system index, the indexingInterval property of the indexing service that you use (ibmPfs_bpdIndexer or ibmPfs_bpelIndexer), and any other latency time for the federated system.

The default setting is used if a value is not set.

allowedOrigins null Required.

A comma-separated list of servers, which host business user clients that are authorized to query the federated system by using the REST APIs. The configured value must match exactly the value in the client’s ‘Origin’ header in the REST request. Often the client communicates with an HTTP Server instead of the application server that hosts the web application. In this case, use the HTTP Server value instead of the application server value.

If you set the value of the property to "*" (asterisk), clients from all originating servers are allowed to query the index.

This property is used to determine authorization as follows:
  • Authorization to make REST calls from web applications that are hosted by other servers (CORS). The originating web server must be trusted by at least 1 federated system. If the web server is not trusted, the client receives a CORS error.
  • Authorization to query each federated system.
Example:
https://server1:9443, https://server2:9443
launchListPriority 1000 Optional.

If a process application is deployed on multiple federated systems, use this property to determine which system takes priority when the launch list is returned. A low value indicates a high priority.

Note: Set a value higher than 0. Otherwise, if you specify a value that is less than or equal to 0, Process Federation Server sets a default value of 1000 instead.

If you want to route all new instances to a specific system, then give that system a lower priority, for example 1. The Process Federation Server launch list API returns the URL for this federated system in the launch list. If the federated system with the highest priority is down, the federated system that is available and with the next highest priority is returned. Use this technique to indicate a preferred federated system and backup systems for routing new work.

To load balance new instances across all federated systems, set the same value for each system. The Process Federation Server launch list API returns a URL for only one of the federated systems that is chosen at random. In this way, the workload is load balanced.

indexProcessInstances

true

This property applies only to process systems when indexing is done from Process Federation Server.

When set to false, disables the process instance indexing.
ibmPfs_federatedSystem element example
The following code snippet is an example of a configured ibmPfs_federatedSystem element:
<ibmPfs_federatedSystem
     id="bpm1" 
   index.number_of_shards="3"
   index.number_of_replicas="1"
   allowedOrigins="*"
   restUrlPrefix="https://bpmHost.mycompany.com:9443/rest/bpm/wle"
   taskCompletionUrlPrefix="https://bpmHost.mycompany.com:9443/teamworks"
   />

The ibmPfs_bpdIndexer element

The ibmPfs_bpdIndexer element contains configuration properties for indexing process-related data on a federated system.
Note: Federating a Business Automation Workflow 24.0.0.0 process system by configuring the <ibmPfs_bpdIndexer> element in Process Federation Server configuration is deprecated. However, you can upgrade your Business Automation Workflow federated system to 24.0.0.0 as usual, and then disable the indexer in Process Federation Server to replace it with the new Federated Data Repository process indexing as documented in Enabling the Federated Data Repository process indexing.
Table 2. Configuration properties for the ibmPfs_bpdIndexer element
Property Default value Description
federatedSystemRef none Required.

Refers to the id property in the associated ibmPfs_federatedSystem element.

dataSourceRef none Required.

The data source for the Workflow Server or IBM® Process Server database on the federated system. This property refers to the data source ID that is set in the dataSource element in the server.xml file. The indexing service uses this data source to connect to the Workflow Server or Process Server database to index tasks.

schemaName none Required.

The name of the schema that contains the tables with the process-related data.

executorServiceRef Default executor service Optional.

The executor service that provides the threads for the indexing service.

indexingInterval 1s Optional.

The duration between index updates.

Specify a positive integer followed by the unit of time, which can be seconds (s). For example, specify 3 seconds as 3s.

If you change the value of this property, also consider changing the value of the indexRefreshIntervalForClients property in the ibmPfs_federatedSystem element to reflect the change. For example, if you increase the value of this property by 1s, also increase the value of the indexRefreshIntervalForClients property by 1s.

The default setting is used if a value is not set.

numberOfRetries -1 Optional.

The number of times the process indexing service attempts to update the index. If the retry limit is reached, indexing stops.

A value of -1 indicates that index updates are retried indefinitely.

The default setting is used if a value is not set.

scheduledSyncTasks true This Boolean value specifies whether Process Federation Server is running a synchronization of tasks with the change log at a regular interval (defined by the synchronizeTasksInterval property), or if this operation must be manually triggered by using the Process Federation Server MBeans (see Monitoring indexers with MBeans).

scheduledSyncInstances

true

This Boolean value specifies whether Process Federation Server is running a synchronization of instances with the change log at a regular interval (defined by the synchronizeInstancesInterval property), or if this operation must be manually triggered by using the Process Federation Server MBeans (see Monitoring indexers with MBeans).

scheduledSyncTaskDeletes true This Boolean value specifies whether Process Federation Server is checking the Workflow Server or Process Server database on the federated system for deleted tasks at regular interval (defined by the synchronizeTasksDeleteInterval property), or if this operation must be manually triggered by using the Process Federation Server MBeans (see Monitoring indexers with MBeans).

scheduledSyncInstanceDeletes

true

This Boolean value specifies whether Process Federation Server regularly checks the Workflow Server or Process Server database on the federated system for deleted process instances (as defined by the synchronizeInstancesDeleteInterval property), or if this operation must be manually triggered by using the Process Federation Server MBeans (see Monitoring indexers with MBeans).

scheduledIndexLogTrim true This Boolean value specifies whether Process Federation Server is checking the age of the entries in the audit log table for removal at a regular interval (defined by the indexLogTrimInterval property), or if this operation must be manually triggered by using the Process Federation Server MBeans (see Monitoring indexers with MBeans).
scheduledCompaction true This Boolean value specifies whether Process Federation Server is compacting the change log at a regular interval (defined by the changeLogCompactionInterval property), or if this operation must be manually triggered by using the Process Federation Server MBeans (see Monitoring indexers with MBeans).
synchronizeTasksInterval 1h Optional.

The duration between each synchronization of tasks with the change log for indexing. If change logging is enabled for process tasks, they are automatically indexed at run time. For information about enabling change logging, see Enabling indexing of process-related data in a federated environment.

Specify a positive integer followed by a unit of time, which can be hours (h) or minutes (m). For example, specify 1 hour as 1h and 1 hour and 30 minutes as 90m (90 minutes).

If change logging is not enabled, or if tasks were not indexed at run time, use this synchronization utility to get the system into a consistent state. The synchronization utility also runs when the indexer first starts to initialize the index on a new system in the federated environment.

The default setting is used if a value is not set.

synchronizeInstancesInterval

1h Optional.

The duration between each synchronization of instances with the change log for indexing. If change logging is enabled for process instances, they are automatically indexed at run time. For information about enabling change logging, see Enabling indexing of process-related data in a federated environment.

Specify a positive integer followed by a unit of time, which can be hours (h) or minutes (m). For example, specify 1 hour as 1h and 1 hour and 30 minutes as 90m (90 minutes).

If change logging is not enabled, or if instances were not indexed at run time, use this synchronization utility to get the system into a consistent state. The synchronization utility also runs when the indexer first starts to initialize the index on a new system in the federated environment.

The default setting is used if a value is not set.

synchronizeTasksDeleteInterval 1h Optional.

The duration between checking the Workflow Server or Process Server database on the system for deleted tasks. If tasks were deleted, this utility marks them as deleted in the change log so that they can be deleted from the index.

Specify a positive integer followed by a unit of time, which can be hours (h) or minutes (m). For example, specify 1 hour as 1h and 1 hour and 30 minutes as 90m (90 minutes).

The default setting is used if a value is not set.

synchronizeInstancesDeleteInterval

1h Optional.

The duration between checking the Workflow Server or Process Server database on the system for deleted process instances. If process instances were deleted, this utility marks them as deleted in the change log so that they can be deleted from the index.

Specify a positive integer followed by a unit of time, which can be hours (h) or minutes (m). For example, specify 1 hour as 1h and 1 hour and 30 minutes as 90m (90 minutes).

The default setting is used if a value is not set.

maintenanceProcessingBatchSize 1000 Optional.
The batch size used by maintenance operations:
  • when processing the synchronization of tasks with the change log
  • when checking the Workflow Server or Process Server database on the system for deleted process tasks

Smaller batch sizes can help prevent the transaction timeout that occurs with slow databases.

synchronizeTasksAtStartup true Optional.

If set to false, disables the automatic synchronization of tasks with the change log for indexing when Process Federation Server starts. In that case, this synchronization is delayed by the amount of time that is specified by the value synchronizeTasksInterval.

This attribute is used only if the quick start mode is enabled.

Note: In a Process Federation Server cluster environment, you must set the same value for this property across all the Process Federation Server cluster members.

The default setting is used if a value is not set.

synchronizeInstancesAtStartup

true Optional.

If set to false, disables the automatic synchronization of instances with the change log for indexing when Process Federation Server starts. In that case, this synchronization is delayed by the amount of time that is specified by the value synchronizeInstancesInterval.

This attribute is used only if the quick start mode is enabled.

Note: In a Process Federation Server cluster environment, you must set the same value for this property across all the Process Federation Server cluster members.

The default setting is used if a value is not set.

indexLogTrimInterval 1h Optional.

The duration between checking the age of the entries in the audit log table, PFS_BPD_CHANGE_LOG_CONSMR_LOG, for the Process Federation Server. Old entries are automatically purged after 1 week.

Specify a positive integer followed by a unit of time, which can be hours (h) or minutes (m). For example, specify 1 hour as 1h and 1 hour and 30 minutes as 90m (90 minutes).

The default setting is used if a value is not set.

changeLogCompactionInterval 1h Optional.

The duration between compacting the change log. Over time, the task change log can build up redundant data. This compaction utility removes redundant data.

Specify a positive integer followed by a unit of time, which can be hours (h) or minutes (m). For example, specify 1 hour as 1h and 1 hour and 30 minutes as 90m (90 minutes).

Important: As indexing is suspended during change log compaction, which can take a long time to run, it is recommended to run pre-production tests on the system to determine the best interval setting to use.

The default setting is used if a value is not set.

compactionProcessingBatchSize 50000 Optional.

The batch size used by the compaction maintenance operation.

Smaller batch sizes can help prevent the transaction timeout that occurs with slow databases.

bpdServerTimezone none Optional.

The federated server's timezone setting. Timestamps are stored in the Workflow Server or Process Server database in the federated server's timezone. To ensure that the process data is indexed correctly, set a value for the bpdServerTimezone property by using a valid Java™ timezone.

Example:
bpdServerTimezone="America/Chicago"
Note: The value that is provided for this attribute has no impact on the Process Federation Server quick start mode.

If the value is not set, it is assumed that Process Federation Server and the federated server are in the same timezone.

skipChangeLogEntriesOlderThan none Optional.
A date that must be in the format yyyy-MM-dd HH:mm:ss where:
  • yyyy is a four-digit year
  • MM is a two-digit month
  • dd is a two-digit day of the month
  • HH is a two-digit hour in a 24-hour format
  • mm is a two-digit minute
  • ss is a two-digit second
A date that matches this format enables the quick start mode that indexes or re-indexes tasks based on change log entries newer than this date.
Note: The date must be specified in UTC time, regardless of the federated system timezone that the indexer element refers to.
Note: In a Process Federation Server cluster environment, you must set the same value for this property across all the Process Federation Server cluster members.

If the value is not set, the quick start mode is disabled.

dbIndexLogBatchSize 1 Optional.

The number of entries in the PFS_BPD_CHANGE_LOG_CONSMR_LOG audit log table that must be kept in memory before these entries are effectively persisted.

Increasing the value of this property can help improve performance by reducing database access calls.

If a value is not set or is less than 1, the default value is used.
useIndexLogFile false Optional.

If set to true: writes audit log entries that are by default written to table PFS_BPD_CHANGE_LOG_CONSMR_LOG to file PFS_BPD_CHANGE_LOG_CONSMR_LOG.log located in directory ${server.output.dir}/logs. This file is in CSV format and uses the semi-colon character as a field separator.

If no value is set, the default value is used.
maxBackupIndexLogFiles 1 Optional.
Note: This attribute must be used along with attribute useIndexLogFile, otherwise it is silently ignored.

The maximum number of backup files that can exist for the PFS_BPD_CHANGE_LOG_CONSMR_LOG.log audit log file in directory ${server.output.dir}/logs before the oldest is erased.

Each backup file is named after the audit log file name followed by a dot and a sequential number starting with 1. When the number of backup files is exceeded, the oldest backup file is deleted from that directory.

If no value is set, the default value is used.
indexLogFileBackupInterval 24h Optional.
Note: This attribute must be used along with attribute useIndexLogFile, otherwise it is silently ignored.

When the property useIndexLogFile is set to true, checks each entry added to the audit log file, PFS_BPD_CHANGE_LOG_CONSMR_LOG.log in directory ${server.output.dir}/logs and compares it to the start time of the first entry recorded in the file. If the time difference between those two values is greater than or equal to the value specified by this property or if the file size gets greater than or equal to the value specified with property maxIndexLogFileSize, then the file is backed up. All subsequent entries are written to a new PFS_BPD_CHANGE_LOG_CONSMR_LOG.log file in the same directory.

If no value is set, the default value is used.
maxIndexLogFileSize 200M Optional.
Note: This attribute must be used along with attribute useIndexLogFile, otherwise it is silently ignored.

Specifies the maximum size of the PFS_BPD_CHANGE_LOG_CONSMR_LOG.log audit log file and creates a new backup of the file when the size of this file reaches or exceeds the value of this property so that this file is renamed and new entries are written to a new PFS_BPD_CHANGE_LOG_CONSMR_LOG.log file.

The value set for this property is a number of bytes. It is possible to add a suffix K, M, or G to this amount to specify a value in Kilobytes, Megabytes, or Gigabytes.

If this value is set to 0, the file might grow indefinitely.

If no value is set, the default value is used.
useMBean true

Automatically registers a MBean for this indexer when the value is set to true. If this value is set to false, the MBean is unregistered if the server is running, or not registered if the server has not started yet.

If no value is set, the default value is used.
ibmPfs_bpdIndexer element example
The following code snippet is an example of a configured ibmPfs_bpdIndexer element:
<ibmPfs_bpdIndexer
   federatedSystemRef="bpm1"
   dataSourceRef="bpm_db2"
   schemaName="DB2ADMIN"/>    

The ibmPfs_bpdRetriever element

The ibmPfs_bpdRetriever element contains configuration properties for retrieving process-related data from a federated system by using REST services.
Table 3. Configuration properties for the ibmPfs_bpdRetriever element
Property Default value Description
internalRestUrlPrefix none Required.

The REST service location that is used for communicating between Process Federation Server and the federated system.

If the federated system has an HTTP Server or reverse proxy server that is configured in front of the system, the URL is for the HTTP Server or reverse proxy server that is used by internal components. This URL might be different from the restUrlPrefix that is used by clients.

Example:
https://bpmHost.mycompany.com:9443/rest/bpm/wle
federatedSystemRef none Required.

Refers to the id property in the associated ibmPfs_federatedSystem element.

connectTimeout 10s Optional.

The maximum length of time during which the retrieval service waits to connect to the federated system.

Specify a positive integer followed by the unit of time, which can be seconds (s). For example, specify 30 seconds as 30s.

The default setting is used if a value is not set.

readTimeout 10s Optional.

The maximum length of time during which the retrieval service waits to read data from the federated system.

Specify a positive integer followed by the unit of time, which can be seconds (s). For example, specify 30 seconds as 30s.

The default setting is used if a value is not set.

cacheCookieNames JSESSIONID Optional.

A comma-separated list of HTTP cookie names that is used for session management between Process Federation Server and the federated system. These cookies are cached for each user from the responses to outbound requests from Process Federation Server to the federated system. The cookies are then included in subsequent outbound requests to the same federated system.

The JSESSIONID default setting is used if a value is not set. This setting maintains the session between Process Federation Server and the federated system and avoids the overhead of creating a session for every new request.

cacheCookieInactiveTimeout 30m Optional.

The time during which a user's session can be inactive and still send the cookies that are defined in the cacheCookieNames property to the federated system. After this time, outbound requests no longer include these cookies and the user's session is reestablished with the federated system. Subsequent responses from the federated system include new cookie values that are cached so that they can be included in new outbound requests to the federated system.

Specify a positive integer followed by a unit of time, which can be minutes (m). For example, specify 45 minutes as 45m.

The default setting is used if a value is not set.

propagateCookieNames LtpaToken2 Optional.

A comma-separated list of HTTP cookie names that is forwarded to the federated system. These names are propagated from the incoming REST requests to Process Federation Server to the outbound requests to the federated system.

The LtpaToken2 default setting is used if a value is not set. This setting supports single sign-on to most federated configurations. If you use LTPA tokens for single sign-on and you update the value of the ssoCookieName property in the webAppSecurity element in the server.xml file, you must also update the propagateCookieNames property with the same value.

propagateHeaderNames none Optional.

A comma-separated list of HTTP header names that is forwarded to the federated system. These names are propagated from the incoming REST requests to Process Federation Server to the outbound requests to the federated system.

If you have a third-party authentication solution that uses a Trust Association Interceptor (TAI) on the federated system, you can propagate HTTP headers from the incoming REST request to the federated system to meet the expectations of the TAI.

useMBean true

Automatically registers a MBean for this retriever when the value is set to true. If this value is set to false, the MBean is unregistered if the server is running, or not registered if the server has not started yet.

If no value is set, the default value is used.

additionalHeaders none List of HTTP headers to add to queries issued by PFS when performing requests against the federated system. The list must be a colon-separated list of headers. For example, X-PFS-ID=defaultPFS,FOO=bar
ibmPfs_bpdRetriever element example
The following code snippet is an example of a configured ibmPfs_bpdRetriever element:
<ibmPfs_bpdRetriever
    internalRestUrlPrefix="https://bpmHost.mycompany.com:9443/rest/bpm/wle"
    federatedSystemRef="bpm1" 
    connectTimeout="10s"
    readTimeout="10s"/>

The ibmPfs_bpelIndexer element

The ibmPfs_bpelIndexer element contains configuration properties for indexing BPEL-related data on a federated system.
Table 4. Configuration properties for the ibmPfs_bpelIndexer element
Property Default value Description
federatedSystemRef none Required.

Refers to the id property in the associated ibmPfs_federatedSystem element.

dataSourceRef none Required.

The data source for the Workflow Server or IBM Process Server database on the federated system. This property refers to the data source ID that is set in the dataSource element in the server.xml file. The indexing service uses this data source to connect to the Workflow Server or Process Server database to index tasks.

schemaName none Required.

The name of the schema that contains the tables for the BPEL-related data.

executorServiceRef Default executor service Optional.

The executor service that provides the threads for the indexing service.

indexingInterval 1s Optional.

The duration between index updates.

Specify a positive integer followed by the unit of time, which can be seconds (s). For example, specify 3 seconds as 3s.

If you change the value of this property, also consider changing the value of the indexRefreshIntervalForClients property in the ibmPfs_federatedSystem element to reflect the change. For example, if you increase the value of this property by 1s, also increase the value of the indexRefreshIntervalForClients property by 1s.

The default setting is used if a value is not set.

numberOfRetries -1 Optional.

The number of times the BPEL indexing service attempts to update the index. If the retry limit is reached, indexing stops.

A value of -1 indicates that index updates are retried indefinitely.

The default setting is used if a value is not set.

scheduledSyncTasks true This Boolean value specifies whether Process Federation Server is running a synchronization of tasks with the change log at regular interval (defined by the synchronizeTasksInterval property), or if this operation must be manually triggered by using the Process Federation Server MBeans (see Monitoring indexers with MBeans).
scheduledIndexLogTrim true This Boolean value specifies whether Process Federation Server is checking the age of the entries in the audit log table for removal at a regular interval (defined by the indexLogTrimInterval property), or if this operation must be manually triggered by using the Process Federation Server MBeans (see Monitoring indexers with MBeans).
synchronizeTasksInterval 1h Optional.

The duration between each synchronization of tasks with the change log for indexing. If change logging is enabled for BPEL tasks, they are automatically indexed at run time. For information about enabling change logging, see Enabling indexing of BPEL-related data in a federated environment.

Specify a positive integer followed by a unit of time, which can be hours (h) or minutes (m). For example, specify 1 hour as 1h and 1 hour and 30 minutes as 90m (90 minutes).

If change logging is not enabled, or if tasks were not indexed at run time, use this synchronization utility to get the system into a consistent state. The synchronization utility also runs when the indexer first starts to initialize the index on a new system in the federated environment.

The default setting is used if a value is not set.

maintenanceProcessingBatchSize 1000 Optional.

The batch size used by the maintenance operation, which performs the synchronization of tasks with the change log for indexing.

Smaller batch sizes can help preventing transaction timeout that occurs with slow databases.

synchronizeTasksAtStartup true Optional.

If set to false, disables the automatic synchronization of tasks with the change log for indexing when Process Federation Server starts. In that case, this synchronization is delayed by the amount of time specified by the value synchronizeTasksInterval.

This attribute is used only if the quick start mode is enabled.

Note: In a Process Federation Server cluster environment, you must set the same value for this property across all the Process Federation Server cluster members.

The default setting is used if a value is not set.

indexLogTrimInterval 1h Optional.

The duration between checking the age of the entries in the audit log table, PFS_BPEL_CHANGE_LOG_CONSMR_LOG, for the Process Federation Server. Old entries are automatically purged after 1 week.

Specify a positive integer followed by a unit of time, which can be hours (h) or minutes (m). For example, specify 1 hour as 1h and 1 hour and 30 minutes as 90m (90 minutes).

The default setting is used if a value is not set.

skipChangeLogEntriesOlderThan none Optional.
A date that must be in the format yyyy-MM-dd HH:mm:ss where:
  • yyyy is a four-digit year
  • MM is a two-digit month
  • dd is a two-digit day of the month
  • HH is a two-digit hour in a 24-hour format
  • mm is a two-digit minute
  • ss is a two-digit second
A date that matches this format enables the quick start mode that indexes or re-indexes tasks based on change log entries newer than this date.
Note: The date must be specified in UTC time, regardless of the federated system timezone that the indexer element refers to.
Note: In a Process Federation Server cluster environment, you must set the same value for this property across all the Process Federation Server cluster members.

If the value is not set, the quick start mode is disabled.

dbIndexLogBatchSize 1 Optional.

The number of entries in the PFS_BPEL_CHANGE_LOG_CONSMR_LOG audit log table that must be kept in memory before these entries are effectively persisted.

Increasing the value of this property can help improve performance by reducing database access calls.

If a value is not set or is less than 1, the default value is used.
useIndexLogFile false Optional.

If set to true: writes audit log entries that are by default written to table PFS_BPEL_CHANGE_LOG_CONSMR_LOG to file PFS_BPEL_CHANGE_LOG_CONSMR_LOG.log located in directory ${server.output.dir}/logs. This file is in CSV format and uses the semi-colon character as a field separator.

If no value is set, the default value is used.
maxBackupIndexLogFiles 1 Optional.
Note: This attribute must be used along with attribute useIndexLogFile, otherwise it is silently ignored.

The maximum number of backup files that can exist for the PFS_BPEL_CHANGE_LOG_CONSMR_LOG.log audit log file in directory ${server.output.dir}/logs before the oldest is erased.

Each backup file is named after the audit log file name followed by a dot and a sequential number starting with 1. When the number of backup files is exceeded, the oldest backup file is deleted from that directory.

If no value is set, the default value is used.
indexLogFileBackupInterval 24h Optional.
Note: This attribute must be used along with attribute useIndexLogFile, otherwise it is silently ignored.

When the property useIndexLogFile is set to true, checks each entry added to the audit log file, PFS_BPEL_CHANGE_LOG_CONSMR_LOG.log in directory ${server.output.dir}/logs and compares it to the start time of the first entry recorded in the file. If the time difference between those two values is greater than or equal to the value specified by this property or if the file size gets greater than or equal to the value specified with property maxIndexLogFileSize, then the file is backed up. All subsequent entries are written to a new PFS_BPEL_CHANGE_LOG_CONSMR_LOG.log file in the same directory.

If no value is set, the default value is used.
maxIndexLogFileSize 200M Optional.
Note: This attribute must be used along with attribute useIndexLogFile, otherwise it is silently ignored.

Specifies the maximum size of the PFS_BPEL_CHANGE_LOG_CONSMR_LOG.log audit log file and creates a new backup of the file when the size of this file reaches or exceeds the value of this property so that this file is renamed and new entries are written to a new PFS_BPEL_CHANGE_LOG_CONSMR_LOG.log file.

The value set for this property is a number of bytes. It is possible to add a suffix K, M, or G to this amount to specify a value in Kilobytes, Megabytes, or Gigabytes.

If this value is set to 0, the file might grow indefinitely.

If no value is set, the default value is used.
useMBean true

Automatically registers a MBean for this indexer when the value is set to true. If this value is set to false, the MBean is unregistered if the server is running, or not registered if the server has not started yet.

If no value is set, the default value is used.

The ibmPfs_bpelRetriever element

The ibmPfs_bpelRetriever element contains configuration properties for retrieving BPEL-related data from a federated system by using REST services.
Table 5. Configuration properties for the ibmPfs_bpelRetriever element
Property Default value Description
internalRestUrlPrefix none Required.

The REST service location that is used for communicating between Process Federation Server and the federated system.

If the federated system has an HTTP Server or reverse proxy server that is configured in front of the system, the URL is for the HTTP Server or reverse proxy server that is used by internal components. This URL might be different from the restUrlPrefix that is used by clients.

federatedSystemRef none Required.

Refers to the id property in the associated ibmPfs_federatedSystem element.

connectTimeout 10s Optional.

The maximum length of time during which the retrieval service waits to connect to the federated system.

Specify a positive integer followed by the unit of time, which can be seconds (s). For example, specify 30 seconds as 30s.

The default setting is used if a value is not set.

readTimeout 10s Optional.

The maximum length of time during which the retrieval service waits to read data from the federated system.

Specify a positive integer followed by the unit of time, which can be seconds (s). For example, specify 30 seconds as 30s.

The default setting is used if a value is not set.

cacheCookieNames JSESSIONID Optional.

A comma-separated list of HTTP cookie names that is used for session management between Process Federation Server and the federated system. These cookies are cached for each user from the responses to outbound requests from Process Federation Server to the federated system. The cookies are then included in subsequent outbound requests to the same federated system.

The JSESSIONID default setting is used if a value is not set. This setting maintains the session between Process Federation Server and the federated system and avoids the overhead of creating a session for every new request.

cacheCookieInactiveTimeout 30m Optional.

The time during which a user's session can be inactive and still send the cookies that are defined in the cacheCookieNames property to the federated system. After this time, outbound requests no longer include these cookies and the user's session is reestablished with the system. Subsequent responses from the federated system include new cookie values that are cached so that they can be included in new outbound requests to the federated system.

Specify a positive integer followed by a unit of time, which can be minutes (m). For example, specify 45 minutes as 45m.

The default setting is used if a value is not set.

propagateCookieNames LtpaToken2 Optional.

A comma-separated list of HTTP cookie names that is forwarded to the federated system. These names are propagated from the incoming REST requests to Process Federation Server to the outbound requests to the federated system.

The LtpaToken2 default setting is used if a value is not set. This setting supports single sign-on to most federated configurations. If you use LTPA tokens for single sign-on and you update the value of the ssoCookieName property in the webAppSecurity element in the server.xml file, you must also update the propagateCookieNames property with the same value.

propagateHeaderNames none Optional.

A comma-separated list of HTTP header names that is forwarded to the federated system. These names are propagated from the incoming REST requests to Process Federation Server to the outbound requests to the federated system.

If you have a third-party authentication solution that uses a Trust Association Interceptor (TAI) on the federated system, you can propagate HTTP headers from the incoming REST request to the federated system to meet the expectations of the TAI.

useMBean true

Automatically registers a MBean for this retriever when the value is set to true. If this value is set to false, the MBean is unregistered if the server is running, or not registered if the server has not started yet.

If no value is set, the default value is used.

additionalHeaders none List of HTTP headers to add to queries issued by PFS when performing requests against the federated system. The list must be a colon-separated list of headers. For example, X-PFS-ID=defaultPFS,FOO=bar
ibmPfs_bpelRetriever element example
The following code snippet is an example of a configured ibmPfs_bpelRetriever element:
<ibmPfs_ibmPfs_bpelRetriever
    internalRestUrlPrefix="https://bpmHost.mycompany.com:9443/rest/bpm/htm"
    federatedSystemRef="bpel1" 
    connectTimeout="10s"
    readTimeout="10s"/>

The ibmPfs_caseRetriever element

The ibmPfs_caseRetriever element contains configuration properties to retrieve Case-related data from a federated system by using REST services.
Table 6. Configuration properties for the ibmPfs_caseRetriever element
Property Default value Description
internalRestUrlPrefix none Required.

The REST service location that is used for communication between Process Federation Server and the federated system.

To form this URL, retrieve the 36-lowercase-character identifier of the target object store for the federated case system from the target object store details in the Administration Console for Content Platform Engine (ACCE), and append it to: base URL/CaseManager/CASEREST/v1/

For example, if the target object store identifier is displayed as 93844FD1-5A75-4809-9369-EA9C6AOC96F6 in ACCE, the internalRestUrlPrefix to use is as follows:

https://bpmHost.mycompany.com:9443/CaseManager/CASEREST/v1/93844fd1-5a75-4809-9369-ea9c6a0c96f6

The lowercase-character identifier is also the name of the index that is created and populated by the Case system in the Process Federation Server federated data repository.

If the federated system has an HTTP Server or reverse proxy server that is configured in front of the system, the URL is for the HTTP Server or reverse proxy server that is used by internal components. This URL might be different from the restUrlPrefix that is used by clients.

federatedSystemRef none Required.

Refers to the id property in the associated ibmPfs_federatedSystem element.

connectTimeout 10s Optional.

The maximum length of time during which the retrieval service waits to connect to the federated system.

Specify a positive integer followed by the unit of time, which can be seconds (s). For example, specify 30 seconds as 30s.

The default setting is used if a value is not set.

readTimeout 10s Optional.

The maximum length of time during which the retrieval service waits to read data from the federated system.

Specify a positive integer followed by the unit of time, which can be seconds (s). For example, specify 30 seconds as 30s.

The default setting is used if a value is not set.

cacheCookieNames JSESSIONID Optional.

A comma-separated list of HTTP cookie names that is used for session management between Process Federation Server and the federated system. These cookies are cached for each user from the responses to outbound requests from Process Federation Server to the federated system. The cookies are then included in subsequent outbound requests to the same federated system.

The JSESSIONID default setting is used if a value is not set. This setting maintains the session between Process Federation Server and the federated system and avoids the overhead of creating a session for every new request.

cacheCookieInactiveTimeout 30m Optional.

The time during which a user's session can be inactive and still send the cookies that are defined in the cacheCookieNames property to the federated system. After this time, outbound requests no longer include these cookies and the user's session is reestablished with the system. Subsequent responses from the federated system include new cookie values that are cached so that they can be included in new outbound requests to the federated system.

Specify a positive integer followed by a unit of time, which can be minutes (m). For example, specify 45 minutes as 45m.

The default setting is used if a value is not set.

propagateCookieNames LtpaToken2 Optional.

A comma-separated list of HTTP cookie names that is forwarded to the federated system. These names are propagated from the incoming REST requests to Process Federation Server to the outbound requests to the federated system.

The LtpaToken2 default setting is used if a value is not set. This setting supports single sign-on to most federated configurations. If you use LTPA tokens for single sign-on and you update the value of the ssoCookieName property in the webAppSecurity element in the server.xml file, you must also update the propagateCookieNames property with the same value.

propagateHeaderNames none Optional.

A comma-separated list of HTTP header names that is forwarded to the federated system. These names are propagated from the incoming REST requests to Process Federation Server to the outbound requests to the federated system.

If you have a third-party authentication solution that uses a Trust Association Interceptor (TAI) on the federated system, you can propagate HTTP headers from the incoming REST request to the federated system to meet the expectations of the TAI.

useMBean true

Automatically registers a MBean for this retriever when the value is set to true. If this value is set to false, the MBean is unregistered if the server is running, or not registered if the server has not started yet.

If no value is set, the default value is used.

additionalHeaders none List of HTTP headers to add to queries issued by PFS when performing requests against the federated system. The list must be a colon-separated list of headers. For example X-PFS-ID=defaultPFS,FOO=bar
ibmPfs_caseRetriever element example
The following code snippet is an example of a configured ibmPfs_caseRetriever element:
<ibmPfs_ibmPfs_caseRetriever
    internalRestUrlPrefix="https://bpmHost.mycompany.com:9443/CaseManager/CASEREST/v1/93844fd1-5a75-4809-9369-ea9c6a0c96f6"
    federatedSystemRef="case1" 
    connectTimeout="10s"
    readTimeout="10s"/>

The ibmPfs_restConfig element

Table 7. Configuration properties for the ibmPfs_restConfig element
Property Default value Description
userGroupCheckInterval 300s Optional.

The duration between requests to the federated systems to refresh the user's cached group information. All federated systems must respond before a user's REST request can be completed.

Specify a positive integer followed by a unit of time, which can be seconds (s). For example, specify 100 seconds as 100s.

userGroupPercentPrefetch 75 Optional.

The percentage of the elapsed userGroupCheckInterval time that triggers asynchronous requests to all federated systems for user group information. The user’s current REST request uses the cached information; it does not wait for the asynchronous requests to return and update the cache.

systemStatusCheckInterval 60s Optional.

The duration between requests to federated systems to refresh system status information. All federated systems must respond before a user's REST request can be completed.

Specify a positive integer followed by a unit of time, which can be seconds (s). For example, specify 40 seconds as 40s.

systemStatusPercentPrefetch 75 Optional.

The percentage of the elapsed systemStatusCheckInterval time that triggers asynchronous requests to all federated systems for status information. The user’s current REST request uses the cached information; it does not wait for the asynchronous requests to return and update the cache.

userAuthCheckInterval 30m Optional.

After a user REST request to check system status or group information on a federated system returns an authorization error, the time before the user can request the information again. If a user is not authorized for a system, query results for that system are not returned.

Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), or seconds (s). For example, specify 45 minutes as 45m.

authorizationExpirationWindow 5m Optional.

After a REST request to a federated system returns an authorization expiration error, the time before a user's security credentials expires on Process Federation Server. During the expiration window, the user's credentials are still valid on Process Federation Server. However, they are no longer valid on one or more of the federated systems. This situation usually indicates that the system clocks on Process Federation Server and the failing federated system are out of sync. Process Portal detects this type of error and forces the user to log in, results in resetting the expiration time.

Specify a positive integer followed by a unit of time, which can be minutes (m), or seconds (s). For example, specify 10 minutes as 10m.

bdFieldsCheckInterval 300s Optional.

The duration between requests to the federated systems to refresh the cached meta business data fields information.

Specify a positive integer followed by a unit of time, which can be seconds (s). For example, specify 100 seconds as 100s.

ibmPfs_restConfig element example
The following code snippet is an example of a configured ibmPfs_restConfig element:
<ibmPfs_restConfig
    userGroupCheckInterval="300s"
    systemStatusCheckInterval="60s"/>