Following an upgrade from iPE 11.3.1 to 11.6.0, we see the following properties added to the eaijavaplugin properties file: eaijava.db_use_new_mechanism=true eaijava.db_use_bw_config=true
Since we don't have these flags in iPE 11.3.1, we set the following flag to "false" and was able to successfully integrate with BW. eaijava.db_use_new_mechanism=false
Queries on the new feature follow.
1). Based on the installation document, we could see that this feature is to support calling the iProcess SQL SP in case of error in the delayed release. What is the need for this? Does this only help if there is an issue with the Object server process in iProcess not able to accept the acknowledgement (delayed release)?
2). Is there any need for the below flag? eaijava.db_use_bw_config=true
3). In order to configure for the TIBCO BW service involving iProcess service agent, does the BW code requires any changes post running the BWC tool?
Environment
TIBCO iProcess Engine (SQL Server) 11.6.0
TIBCO iProcess Technology Plug-in 11.6.0
Windows Server 2012 R2
Originally the iProcess Technology plug-in only had one mechanism, to put the message on the queue and wait for a reply message from the iProcess Service Agent. This was used for both Immediate and Delayed Release EAI_BW steps. iProcess would fail the EAI_BW step if the reply did not come back within the timeout values.
To continue with this mechanism use the settings: eaijava.db_use_new_mechanism=false eaijava.db_use_bw_config=false
The settings: eaijava.db_use_new_mechanism=true eaijava.db_use_bw_config=true
alters the way iProcess communicates over EMS.
The Delayed Release invocation is fire and forget – iProcess does not wait for a reply message. In both Immediate and Delayed Release EAI_BW steps the iProcess node and server name is passed over in the EMS messages. e.g., phil1160!hapi
The iProcess Service Agent uses this to perform a lookup in the BWCTool.cfg file to get the iProcess database details. This enables the iProcess service agent to update the iProcess database. e.g. in the event of a failure.
You must use the BWCTool (in BW) to configure the iProcess database details before running EAI_BW setps. The BWCTool is a new command line tool and is located under TIBCO_HOME/bw/plugins/iprocess/bin .
- Run the BWCTool. - Select option [1] Add a new configuration. - Enter all the required details.
You will need to know the database details of the iProcess database including the database username and password. The EAI_BW steps will work once the configuration exists in the BWCTool configuration file. The configuration details are stored in the file TIBCO_HOME/bw/plugins/lib/palettes/BWCTool.cfg . All passwords are encrypted.
A BWCTool entry must be created for each iProcess node that will communicate with the iProcess Service Agent in the BusinessWorks installation. If a Delayed Release BW process competes successfully then the process will update iProcess using the “iProcess Complete Delayed Release” activity. Ensure that the configured database user has execute permission on the SSOLIte stored procedure in the iProcess database.
The setting eaijava.db_use_bw_config is only used when eaijava.db_use_new_mechanism is set to "true".
If eaijava.db_use_new_mechanism is set to "false" then the plug-in will use the old mechanism and no database information is sent in the EMS message from iProcess to BW.
If eaijava.db_use_new_mechanism is set to "true" then the iProcess database information is sent in the EMS message from iProcess to BW .
The setting of eaijava.db_use_bw_config determines how the database information is sent to BusinessWorks.
With: eaijava.db_use_new_mechanism=true eaijava.db_use_bw_config=false T
The database details from the eaijavaplugin.properties file is sent in the EMS message. The password is encrypted. The Database URL must be in the form that BW can use to access the iProcess database. No need to use the BWCTool in BW The following details are included in the EMS message: Database JDBC URL Database Username Database Password (encrypted)
The database details are not contained in the EMS message. Instead, the EMS message contains the node name / server name Example: <property> <name>NodeName</name> <value>phil1160!amunra</value> <type>string</type> </property>
On the BW side, you need to use the BWCTool to create an entry for the iProcess node name (in this case phil1160!amunra) and provide the database URL, user and password. At run time the plug-in (on the BW side) will perform a lookup using the iProcess node name to retrieve database details and connect to the iProcess database.
Issue/Introduction
Following an upgrade from iPE 11.3.1 to 11.6.0, we could see the following properties added to the eaijavaplugin properties,
eaijava.db_use_new_mechanism=true
eaijava.db_use_bw_config=true
Since, we don't have these flags in iPE 11.3.1, I have set the below flag to false and was able to successfully integrate with BW.
eaijava.db_use_new_mechanism=false