Adapter for JDBC 10.3 | webMethods Adapter for JDBC Documentation | webMethods Adapter for JDBC Installation and User’s Documentation | Adapter for JDBC Connections | Configuring Adapter for JDBC Connections
 
Configuring Adapter for JDBC Connections
When you configure Adapter for JDBC connections, you specify information that Integration Server uses to connect to a JDBC system. You can configure Adapter for JDBC connections either manually using the Integration Server Administrator screen or programmatically using the pub.jdbcAdapter:createConnectionNodes service.
Note:
If you use Oracle JDBC OCI drivers with Adapter for JDBC, you must add an environment variable setting before you configure adapter connections. For details, see Setting the Environment Variable for Oracle JDBC OCI Drivers.
*To configure an adapter connection
1. In the Adapters menu in Integration Server Administrator's navigation area, click webMethods Adapter for JDBC.
2. On the Connections screen, click Configure New Connection.
3. On the Connection Types screen, select the Connection Type:
*webMethods Adapter for JDBC Connection
*webMethods Adapter for JDBC SSL Connection
4. In the Configure Connection Type > webMethods Adapter for JDBC section, configure the following fields:
Field
Description/Action
Package
Package in which to create the connection. Use Designer to create the package before specifying the value in this field. For general information about creating packages, see the webMethods Service Development Help for your release.
Note:
Configure the connection in a user-defined package rather than in the adapter's package. For other important considerations when creating packages for Adapter for JDBC, see Adapter for JDBC Package Management.
Folder Name
Folder in which to create the connection.
Connection Name
Name you want to give to the connection. Connection names cannot have spaces or use special characters reserved by Integration Server and Designer. For more information about the use of special characters in package, folder, and element names, see the webMethods Service Development Help for your release.
5. In the Connection Properties section, use the following fields:
Note:
The following table shows suggested values for these parameters as guidance only. For more information about what values to assign to these parameters, see your JDBC driver documentation.
a. Specify the Transaction Type, Driver Group, and DataSource Class fields as follows:
Field
Description/Action
Transaction Type
Type of transaction support that the connection provides. Select one of the following transaction types:
*NO_TRANSACTION: Connection automatically commits operations.
*LOCAL_TRANSACTION: Connection uses local transactions. If you plan to use the connection with BatchInsertSQL or BatchUpdateSQL adapter services, you must specify LOCAL_TRANSACTION type.
Note:
If you are configuring a Basic Notification and using the Exactly Once Notification and Delete selected records options, you must configure the notification to use a LOCAL_TRANSACTION connection. For information about these specific configuration options, see Configuring BasicNotifications.
*XA_TRANSACTION: Connection uses XA transactions.
For a more detailed description of the transaction support provided by Adapter for JDBC, see Transaction Management of Adapter Connections.
Driver Group
Enables you to use multiple versions of the JDBC driver JAR file(s) which are used to connect to different versions of the database.
*The Driver Group field lists the Default and the user created folders located at Integration Server_directory/instances/instance_name/packages/WmJDBCAdapter/code/jars.
*Default or Single Version: If you want to use a single version of JDBC driver, then place the JAR file(s) in the Integration Server_directory/instances/instance_name/packages/WmJDBCAdapter/code/jars folder which is the represented by the Default value in the Driver Group field. This is the default and existing behavior.
*Multiple Version: If you want to use multiple versions of JDBC drivers, then perform the following for each version:
1. Create a new folder in Integration Server_directory/instances/instance_name/packages/WmJDBCAdapter/code/jars folder.
2. Place the respective JDBC driver JAR file(s) in this folder.
Note:
Ensure that none of the related driver JAR file(s) of other versions are placed inside any of the classpaths of Integration Server:
*Default driver group classpath: Integration Server_directory/instances/instance_name/packages/WmJDBCAdapter/code/jars
*Static folder classpath: Integration Server_directory/instances/instance_name/packages/WmJDBCAdapter/code/jars/static
*Integration Server common library classpath: Integration Server_directory/common/lib
Warning:
The Default or Single Version and Multiple Version modes are mutually exclusive. At any given point of time, you can use the JDBC driver(s) in one mode only.
DataSource Class
Name of the JDBC driver's DataSource or XADataSource class. Type the DataSource or XADataSource class names, depending on the JDBC driver and transaction type that the connection will use. For more information about the datasource for different databases, see JDBC Driver Specific Properties.
b. Depending on the driver type, some or all of the following fields are required.
Note:
If you use a DataDirect Connect for JDBC driver you must create the package and port information you enter from this tab. For details, see DataDirect Connect documentation.
Field
Description/Action
Server Name
Name of the server that hosts the database.
User*
Username that the connection will use to connect to the database.
Password*
Password for the database user name specified in user.
Note:
You can also update the password programmatically using the pub.jdbcAdapter:updateConnectionPassword service.
Retype Password
Retype the password you just entered.
Database Name
Database to which the connection will connect.
Port Number
Port number that the connection must use to connect to the database.
Network Protocol
A standard JDBC DataSource property to indicate the name of the network protocol that the connection will use when connecting to the database.
Other Properties
Property specific to the database. You can specify database specific property settings, table filter property settings, transaction isolation level settings, and driver-dependent property settings in this field.
*Use ; (semi-colons) to delimit multiple property settings: TableFilter settings, transaction isolation level settings, and driver-dependent settings.
TableFilter=‘<current catalog>'.‘Accounting'.‘Finance';
selectMethod=cursor;transactionIsolation=2
*Use { } to delimit a combination of multiple key value pairs that use ; (semi-colons) as delimiters.
TableFilter='<current catalog>'.'Accounting';driverType=oci;
connectionProperties={oracle.jdbc.V8Compatible=true,includeSynonymns=true};
transactionIsolation=2
Note:
Do not enter spaces after the semi-colon.
c. Complete the following fields that appear only if you select webMethods Adapter for JDBC SSL Connection as the Connection Type.
Field
Description/Action
TrustStore Alias/File Path
Alias for the truststore file or the fully qualified file name of the SSL truststore.
TrustStore Password*
Password for the SSL truststore.
Retype TrustStore Password
Retype the password you just entered.
KeyStore Alias/File Path
Alias for the keystore file or the fully qualified file name of the SSL keystore.
KeyStore Password
Password for the SSL keystore.
Retype KeyStore Password
Retype the password you just entered.
For more information about configuring keystore aliases and truststore aliases for securing communication with Integration Server, see webMethods Integration Server Administrator’s Guide.
For more information about JDBC driver specific connection properties, see JDBC Driver Specific Properties.
6. In the Connection Management Properties section, use the following fields:
Field
Description/Action
Enable Connection Pooling
Enables the connection to use connection pooling. For more information about connection pooling, see Adapter Connections.
Note:
If you plan to enable connection pooling in a clustered environment, consider the connection pool size. For details, see Considerations When Configuring Connections with Connection Pooling Enabled.
Minimum Pool Size
If connection pooling is enabled, this field specifies the number of connections to create when the connection is enabled. The adapter will keep open the number of connections you configure here regardless of whether these connections become idle.
Maximum Pool Size
If connection pooling is enabled, this field specifies the maximum number of connections that can exist at one time in the connection pool.
Pool Increment Size
If connection pooling is enabled, this field specifies the number of connections by which the pool will be incremented if connections are needed, up to the maximum pool size.
Block Timeout
If connection pooling is enabled, this field specifies the number of milliseconds that Integration Server will wait to obtain a connection with the database before it times out and returns an error. For example, you have a pool with Maximum Pool Size of 20. If you receive 30 simultaneous requests for a connection, 10 requests will be waiting for a connection from the pool. If you set the Block Timeout to 5000, the 10 requests will wait for a connection for 5 seconds before they time out and return an error. If the services using the connections require 10 seconds to complete and return connections to the pool, the pending requests will fail and return an error message stating that no connections are available. If you set the Block Timeout value too high, you may encounter problems during error conditions. If a request contains errors that delay the response, other requests will not be sent. This setting must be tuned in conjunction with the Maximum Pool Size to accommodate such bursts in processing.
Expire Timeout
If connection pooling is enabled, this field specifies the number of milliseconds that an inactive connection can remain in the pool before it is closed and removed from the pool. The connection pool will remove inactive connections until the number of connections in the pool is equal to the Minimum Pool Size. The inactivity timer for a connection is reset when the connection is used by the adapter.
If you set the Expire Timeout value too high, you may have a number of unused inactive connections in the pool. This consumes local memory and a connection on your backend resource. This could have an adverse effect if your resource has a limited number of connections.
If you set the Expire Timeout value too low, performance could degrade because of the increased activity of creating and closing connections. This setting must be tuned in conjunction with the Minimum Pool Size to avoid excessive opening/closing of connections during normal processing.
Startup Retry Count
Number of times that the system must attempt to initialize the connection pool at startup if the initial attempt fails. The default is 0.
Startup Backoff Timeout
Number of seconds that the system must wait between attempts to initialize the connection pool.
Heart Beat Interval
If the connection pooling is enabled and the minimum pool size is more than zero, the Heart Beat Interval is applicable. The connection pool checks the connectivity of the connections that are idle for the value of Heart Beat Interval. The default value for Heart Beat Interval is zero and it is mentioned in seconds. For example, if the value of Heart Beat Interval is 25 seconds, connection pool looks for connection that are idle for 25 seconds. If the connection is broken then the connection pool is reset.
The feature is applicable for Integration Server 10.5 and all subsequent versions.
7. Click Save Connection.
The connection you created appears on the adapter's Connections screen and in Designer.
You can enable a connection only if the parameters for the connection are valid.