9-0 Adapter For JDBC Install and Users Guide
9-0 Adapter For JDBC Install and Users Guide
9-0 Adapter For JDBC Install and Users Guide
Guide
Version 9.0
November 2016
This document applies to webMethods Adapter for JDBC Version 9.0 and to all subsequent releases.
Specifications contained herein are subject to change and these changes will be reported in subsequent release notes or new editions.
Copyright © 2006-2016 Software AG, Darmstadt, Germany and/or Software AG USA Inc., Reston, VA, USA, and/or its subsidiaries and/or
its affiliates and/or their licensors.
The name Software AG and all Software AG product names are either trademarks or registered trademarks of Software AG and/or
Software AG USA Inc. and/or its subsidiaries and/or its affiliates and/or their licensors. Other company and product names mentioned
herein may be trademarks of their respective owners.
Detailed information on trademarks and patents owned by Software AG and/or its subsidiaries is located at
hp://softwareag.com/licenses.
Use of this software is subject to adherence to Software AG's licensing conditions and terms. These terms are part of the product
documentation, located at hp://softwareag.com/licenses and/or in the root installation directory of the licensed product(s).
This software may include portions of third-party products. For third-party copyright notices, license terms, additional rights or
restrictions, please refer to "License Texts, Copyright Notices and Disclaimers of Third Party Products". For certain specific third-party
license restrictions, please refer to section E of the Legal Notices available under "License Terms and Conditions for Use of Software AG
Products / Copyright and Trademark Notices of Software AG Products". These documents are part of the product documentation, located
at hp://softwareag.com/licenses and/or in the root installation directory of the licensed product(s).
Use, reproduction, transfer, publication or disclosure is prohibited except as specifically provided for in your License Agreement with
Software AG.
Table of Contents
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 3
M
Table of Contents
Package Management................................................................................................................... 65
Overview................................................................................................................................... 66
Adapter for JDBC Package Management................................................................................ 66
Package Dependency Requirements and Guidelines.......................................................67
Enabling Packages............................................................................................................68
Disabling Packages........................................................................................................... 69
Importing and Exporting Packages................................................................................... 69
Group Access Control.............................................................................................................. 70
Adapter for JDBC in a Clustered Environment........................................................................ 70
Polling Notification Support in Integration Server Clusters............................................... 71
Considerations for Polling Notifications Executing via Scheduled Tasks................... 71
Adapter Service Support in Clusters.................................................................................72
Replicating Packages to Integration Servers.................................................................... 72
Disabling the Redirection of Administrative Services........................................................72
Clustering Considerations and Requirements...................................................................73
Requirements for Each Integration Server in a Cluster............................................. 73
Considerations When Installing Adapter for JDBC Packages....................................74
Considerations When Configuring Connections with Connection Pooling
Enabled.......................................................................................................................74
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 4
M
Table of Contents
Overview................................................................................................................................... 78
Before Configuring or Managing Adapter Connections............................................................78
Setting the Environment Variable for Oracle JDBC OCI Drivers..............................................79
Installing a JDBC Driver on Integration Server........................................................................ 79
Configuring Adapter for JDBC Connections.............................................................................80
Required Connection Property Fields............................................................................... 93
Dynamically Changing a Service's Connection at Run Time................................................... 95
Dynamically Changing the User Credentials of a Service's Connection at Run Time.............. 96
Viewing Adapter Connection Parameters.................................................................................96
Using Integration Server Administrator to View Adapter Connection Parameters.............96
Using Designer to View Adapter Connection Parameters................................................ 97
Editing Adapter Connections.................................................................................................... 97
Copying Adapter Connections..................................................................................................98
Deleting Adapter Connections..................................................................................................98
Enabling Adapter Connections................................................................................................. 99
Disabling Adapter Connections................................................................................................ 99
Adapter Services..........................................................................................................................101
Overview................................................................................................................................. 102
Before Configuring or Managing Adapter Services................................................................102
Configuring SelectSQL Services............................................................................................ 103
Configuring InsertSQL Services............................................................................................. 107
Configuring UpdateSQL Services...........................................................................................110
Configuring BatchInsertSQL Services.................................................................................... 114
Configuring BatchUpdateSQL Services..................................................................................117
Configuring DeleteSQL Services............................................................................................122
Configuring CustomSQL Services..........................................................................................124
Considerations before using Fill in all rows to the table feature in CustomSQL Adapter
Service............................................................................................................................. 124
Creating a CustomSQL service.......................................................................................126
Configuring DynamicSQL Services........................................................................................ 129
Using Input and Output Parameters............................................................................... 129
Configuring a DynamicSQL Statement........................................................................... 129
Creating a DynamicSQL Service.................................................................................... 130
Configuring StoredProcedure Services.................................................................................. 133
Considerations when Configuring StoredProcedure Adapter Services........................... 133
Creating StoredProcedure Adapter Services.................................................................. 133
Specifying the Maximum Number of Result Set Indexes for a StoredProcedure Adapter
Service............................................................................................................................. 137
Configuring StoredProcedureWithSignature Services............................................................137
Considerations when Configuring StoredProcedureWithSignature Adapter Services..... 138
Creating StoredProcedureWithSignature Adapter Services............................................138
Configuring ExecuteService Services.....................................................................................144
Considerations When Creating a Java or Flow Service that Uses a Connection from the
Connection Pool.............................................................................................................. 145
Testing Adapter Services........................................................................................................146
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 5
M
Table of Contents
Adapter Notifications...................................................................................................................151
Overview................................................................................................................................. 152
Before Configuring or Managing Notifications........................................................................152
Configuring InsertNotifications................................................................................................ 153
Considerations when Configuring InsertNotifications...................................................... 153
Creating an InsertNotification.......................................................................................... 153
Configuring UpdateNotifications............................................................................................. 158
Considerations when Configuring UpdateNotifications................................................... 158
Creating an UpdateNotification....................................................................................... 159
Configuring DeleteNotifications...............................................................................................164
Considerations when Configuring DeleteNotifications.....................................................164
Creating a DeleteNotification...........................................................................................165
Configuring BasicNotifications................................................................................................ 170
Configuring StoredProcedureNotifications..............................................................................175
Configuring StoredProcedureNotificationWithSignature......................................................... 179
Configuring OrderedNotifications............................................................................................184
Considerations when Configuring OrderedNotifications..................................................184
Creating an OrderedNotification......................................................................................185
Managing Polling Notifications............................................................................................... 191
Using the Exactly Once Notification Feature......................................................................... 193
Enabling Exactly Once Notification................................................................................. 193
Exporting Configured Adapter Notifications............................................................................193
Viewing Notifications...............................................................................................................195
Editing Notifications................................................................................................................ 195
Deleting Notifications.............................................................................................................. 196
Validating Adapter Notification Values....................................................................................196
Validate Data for a Single Adapter Notification...............................................................197
Validating Data for All Adapter Notifications................................................................... 197
Reloading Adapter Values...................................................................................................... 197
Reloading the Values for a Single Adapter Notification.................................................. 198
Reloading the Values for All Adapter Notifications..........................................................198
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 6
M
Table of Contents
typeMapping.................................................................................................................... 201
The Database-Specific Data Type Mapping Files.................................................................. 201
extTypeMapping...............................................................................................................201
typeClassName........................................................................................................ 201
columnTypeMapping........................................................................................................201
alternativeName........................................................................................................202
includeColumnSize................................................................................................... 202
resizeFactor.............................................................................................................. 202
includePrecision........................................................................................................202
Support for SQLXML Data Type............................................................................................ 202
Built-In Services...........................................................................................................................227
Overview................................................................................................................................. 228
pub.jdbcAdapter:updateNotificationSchema........................................................................... 228
Configuring the UpdateNotificationSchema Service........................................................230
Setting Input Fields..........................................................................................................230
Setting All Schemas to the <current schema>.........................................................230
Setting All Schemas to Schema A...........................................................................231
Changing Occurrences of the <current schema> to Schema A...............................231
Changing Occurrences of Schema A to the <current schema>...............................232
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 7
M
Table of Contents
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 8
M
Table of Contents
Index.............................................................................................................................................. 273
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 9
M
Even Header
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 10
M
Odd Header
This guide describes how to configure and use webMethods Adapter for JDBC. It
contains information for administrators and application developers who want to
exchange data with relational databases.
To use this guide effectively, you should be familiar with:
The basic concepts and tasks for working with relational databases
Creating flow or Java services
Terminology and basic operations of your operating system
The setup and operation of webMethods Integration Server.
How to perform basic tasks with Software AG Designer.
Documentation Installation
For products that are installed using the Software AG Installer, you can also download
the product documentation using the Software AG Installer. The documentation is
downloaded to a central directory named _documentation in the main installation
directory (SoftwareAG by default).
Online Information
You can find additional information about Software AG products at the locations listed
below.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 11
M
Even Header
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 12
M
Odd Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 13
M
Even Header
Overview of the Adapter
Architecture Overview
Adapter for JDBC provides a set of user interfaces, services, and templates that enable
you to create integrations with databases using a JDBC driver. The adapter is provided
as a single package that must be installed on Integration Server. For detailed installation
instructions, see “Installing, Upgrading, and Uninstalling Adapter for JDBC” on
page 59. For software requirements, see webMethods Adapters System Requirements.
Because Adapter for JDBC uses a JDBC driver to perform operations on databases, the
adapter requires a supported JDBC driver to be installed and loaded in the packages
directory of Integration Server. For more details, see “Installing a JDBC Driver on
Integration Server” on page 79.
Adapter for JDBC enables you to configure the following components:
Adapter connections. Enable Integration Server to connect to database systems at run
time. You must configure an adapter connection before you can configure adapter
services or adapter notifications. For a detailed description of adapter connections,
see “Adapter Connections” on page 18.
Adapter services. Enable Integration Server to initiate and perform database
operations on a database. For example, an adapter service could enable a trading
partner to query your inventory database to determine whether a particular item is
currently in stock. You configure adapter services using adapter services templates,
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 14
M
Odd Header
Overview of the Adapter
which are provided with Adapter for JDBC. For a detailed description of adapter
services, see “Adapter Services” on page 21.
Adapter notifications. Monitor a database and notify Integration Server when an
action (not initiated by Integration Server) occurs on a particular database table. For
example, an adapter notification could notify Integration Server when an update
operation was performed on a particular database table. For a detailed description of
adapter notifications, see “Adapter Notifications” on page 29.
The following diagram shows at a high level how an adapter service uses an adapter
connection and a JDBC driver to connect to and perform an operation on a database.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 15
M
Even Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 16
M
Odd Header
Overview of the Adapter
The next diagram shows a business integration where an adapter service is used to
update a database with employee data. The employee data could be provided by several
different types of external Integration Server (IS) clients.
The architecture for integrations using adapter notifications is similar to the architecture
for integrations using adapter services shown above, but it varies according to the
type of notification. The primary difference between these types of integrations is that
notifications are initiated by events that occur on the database, not by actions that occur
on Integration Server.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 17
M
Even Header
Overview of the Adapter
With adapter notifications, you can capture event data from the database and use it
to initiate another action within Integration Server. For example, you could create an
adapter notification to monitor an employee table within a database and whenever an
employee is added to the table, you could post that employee data to a webMethods
Broker. Broker clients could then subscribe to that notification's publishable document.
For more information about the architecture for the different types of adapter
notifications, see “Adapter Notifications” on page 29.
Package Management
Adapter for JDBC is provided as a package called WmJDBCAdapter that you manage
like any package on Integration Server.
There are several considerations regarding how you set up and effectively manage your
packages on Integration Server:
You must create user-defined packages for your connections, adapter services,
and notifications. For details, see “Adapter for JDBC Package Management” on
page 66.
You should understand how package dependencies work so you make the best
decisions regarding how you manage your adapter services and notifications. For
details, see “Package Dependency Requirements and Guidelines” on page 67.
You control which development groups have access to which adapter services and
notifications. For details, see “Group Access Control” on page 70.
You should understand how clustering, an advanced feature of Integration Server,
works to effectively manage your adapter services. For details, see “Adapter for
JDBC in a Clustered Environment” on page 70.
Adapter Connections
Adapter for JDBC connects to a database through a JDBC driver at run time. You
create one or more connections at design time to use in integrations. The number of
connections you create, and the types of those connections, depend on the types of
databases you are connecting to and your integration needs. For example, if you are
connecting to an Oracle database and a DB2 Server database, you will need to create
connections that are unique to those two databases. Additionally, if you have multiple
installations of the same kinds of databases, you access each using different connections.
For example, if you have a data warehouse system and an ERP system that use your
Oracle database, you create a connection for each system.
Adapter for JDBC connections contain parameters that Integration Server uses to
manage connections to the database so that they can be used by the adapter to provide
services. You configure connections using Integration Server Administrator. You
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 18
M
Odd Header
Overview of the Adapter
must have Integration Server Administrator privileges to access Adapter for JDBC's
administrative screens.
For instructions on configuring, viewing, editing, enabling, and disabling Adapter for
JDBC connections, see “Adapter for JDBC Connections” on page 77. For information
about seing user privileges, see the Integration Server administration guide for your
release. See “About this Guide” for specific document titles.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 19
M
Even Header
Overview of the Adapter
When you define a connection, the transaction type that you choose determines the
type of transaction management that the connection's operations use implicitly. Implicit
transactions, which include the transaction types in the preceding table, are managed by
the Integration Server transaction manager.
You can also explicitly manage transactions using built-in services. For information
about, and examples of, explicitly managing transactions, see “Built-In Transaction
Management Services” on page 243.
Connection Pools
Integration Server includes a connection management service that dynamically manages
connections and connection pools based on configuration seings that you specify for
the connection. All adapter services use connection pooling.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 20
M
Odd Header
Overview of the Adapter
Adapter Services
To use Adapter for JDBC, you create adapter services. Adapter services allow you
to connect to the adapter's resource and initiate an operation on the resource from
Integration Server.
You call adapter services from flow or Java services to interact with database tables. The
adapter services perform database operations by calling JDBC APIs. Integration Server
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 21
M
Even Header
Overview of the Adapter
then uses adapter connections that you defined earlier to execute the adapter services.
For details, see “Adapter Service Transaction Processing” on page 27.
Adapter services are based on templates provided with Adapter for JDBC. Each
template represents a specific technique for doing work on a resource, such as using the
SelectSQL template to retrieve specified information from a database.
An adapter service template contains all the code necessary for interacting with the
resource but without the data specifications. You provide these specifications when you
create a new adapter service.
Creating a new service from an adapter service template is straightforward. Using
Software AG Designer, you assign the service a default adapter connection.
After you select the connection for the adapter service, you select the adapter service
template and supply the data specifications using Designer. Some familiarity with using
Designer is required. For more information, see the Designer Service Development
online help for your release. See “About this Guide” for specific document titles.
Adapter for JDBC provides the following adapter service templates:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 22
M
Odd Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 23
M
Even Header
Overview of the Adapter
Stored StoredProcedureWithSignature
Calls a stored procedure to perform
Procedure with database operations. Obtains the
signature stored procedure's parameters by
introspecting and listing the signature
of the stored procedure at the time you
configure the adapter service.
For instructions about configuring
the service, see “Configuring
StoredProcedureWithSignature
Services” on page 137.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 24
M
Odd Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 25
M
Even Header
Overview of the Adapter
For details, see the Integration Server built-in services reference guide for your release.
See “About this Guide” for specific document titles.
Other built-in services enable you to control connections. For more information, see
“Built-In Services for Connections” on page 21.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 26
M
Odd Header
Overview of the Adapter
For more information about overriding a service's default connection at run time, see
“Dynamically Changing a Service's Connection at Run Time” on page 95.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 27
M
Even Header
Overview of the Adapter
Step Description
2 The adapter service gets a connection from the service's connection pool.
Adapter connections contain connection information for the database,
including JDBC driver parameters.
3 The adapter service uses the JDBC driver to connect to the database.
You created and enabled the adapter connection earlier using Integration
Server Administrator.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 28
M
Odd Header
Overview of the Adapter
Step Description
Adapter Notifications
An adapter notification monitors a specified database table for changes, such as an
insert, update, or delete operation, so that the appropriate Java or flow services can
make use of the data, such as sending an invoice or publishing it to Integration Server.
Adapter for JDBC notifications are polling-based. That is, Integration Server will
invoke the notification periodically based on the polling interval that you specify when
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 29
M
Even Header
Overview of the Adapter
Adapter notifications vary somewhat in how they work, depending on the type of
the adapter notification. Be sure to review “Notification Types” on page 32 to
understand how their operations differ.
Note: To use the JMS protocol with asynchronous notifications, you must first
configure a JMS connection alias on Integration Server. For more information,
see the Integration Server administration guide for your release. See “About
this Guide” for specific document titles.
For steps for selecting a publish destination for asynchronous notification messages, see
“Adapter Notifications” on page 151.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 30
M
Odd Header
Overview of the Adapter
Note: Stored Procedure Notifications do not support the Exactly Once notification
feature because they do not use publishable document unique IDs.
For more details, see “Using the Exactly Once Notification Feature” on page 193.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 31
M
Even Header
Overview of the Adapter
Notification Types
There are seven types of notifications: Insert, Update, Delete, Basic, Stored Procedure,
StoredProcedureNotificationWithSignature, and Ordered Notifications. They vary in
how they are structured and operate, as described in the following sections.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 32
M
Odd Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 33
M
Even Header
Overview of the Adapter
5. Manage the notification. For details, see Designer and Integration Server
“Package Management” on page 65, Administrator
“Adapter Notifications” on page 151,
and “Logging and Exception Handling” on
page 203.
Note: The old value is the value that exists before a value is updated in the selected
column of the database table.
You can set the required output value options while configuring the UpdateNotification
in the Select tab of the UpdateNotification template. For more information about seing
the output value options, see the “Configuring UpdateNotifications” on page 158.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 34
M
Odd Header
Overview of the Adapter
Step Description
4 The notification retrieves the rows of data from the buffer table.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 35
M
Even Header
Overview of the Adapter
Step Description
The buffer table holds the data selected by the trigger. While the adapter
notification remains enabled, the trigger continues to monitor the database
table and insert data into the buffer table.
Basic Notifications
In contrast with Insert Notifications, Update Notifications, and Delete Notifications,
Basic Notifications require that you define a buffer table, and a database trigger or other
means of monitoring database changes so that changes are wrien into the buffer table.
To monitor database changes, a Basic Notification queries the buffer table. Basic
Notifications provide you with the flexibility to manage buffer tables, such as a table
with user privileges, and to tailor your own database monitoring methods for producing
notification data. By default, after the data is retrieved and processed, it is deleted from
the buffer table to ensure that the data is not processed multiple times. If you do not
want to delete the data from the buffer table, and you also do not want the adapter to
publish the data more than once, you can mark the processed data as published. The
notification then only processes the data that is not published. To use this option, you
need to:
1. Add a column of CHAR(1) data type with any name in the database table that you
are trying to use. This column is required to hold the status of the data, that is,
whether the data is processed or not processed.
2. While configuring the Basic Notification, select the newly added column in the Mark
ID Column, see step 1. For instructions about configuring the Basic Notification, see
“Configuring BasicNotifications” on page 170.
For more information about how Basic Notifications work, see “Basic Notifications
Transaction Processing” on page 38.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 36
M
Odd Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 37
M
Even Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 38
M
Odd Header
Overview of the Adapter
Step Description
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 39
M
Even Header
Overview of the Adapter
Step Description
database changes. The diagram and steps listed here assume you are
creating your own buffer table and trigger to monitor for changes.
The buffer table you define will hold the data selected by any trigger you
create. The trigger will monitor the database table and insert data into the
buffer table.
5 The notification retrieves the rows of data from the buffer table.
Note: Stored Procedure Notifications do not support the Exactly Once notification
feature because they do not use publishable document unique IDs. For details
about this feature, see “Using the Exactly Once Notification Feature” on
page 193.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 40
M
Odd Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 41
M
Even Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 42
M
Odd Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 43
M
Even Header
Overview of the Adapter
Step Description
5 The notification retrieves each row of data from the stored procedure.
Note: When using the result set that contains nested cursors, the
performance of Adapter for JDBC could degrade. Since the
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 44
M
Odd Header
Overview of the Adapter
Step Description
nested cursors are recursively processed, Adapter for JDBC may
also return data that may not be required.
For more details about the Integration Server publishable documents, see
the Integration Server publish-subscribe developer’s guide for your release.
See “About this Guide” for specific document titles.
Ordered Notifications
You use Ordered Notifications to monitor multiple insert, update, or delete operations
on one or more tables for a given database by creating a single notification using the
same publishable document. Similar to Insert Notifications, Update Notifications, and
Delete Notifications, Ordered Notifications use triggers and buffer tables to capture
events that happen on specific tables in a database.
After you enable the Ordered Notification, the trigger, buffer table, and sequence remain
in the database table when you:
Shut down Integration Server.
Disable the package containing the enabled Ordered Notification.
Reload the package containing the enabled Ordered Notification.
In the meantime, the trigger continues to monitor the table and to insert data into
the buffer table. Integration Server invokes the enabled Ordered Notification when it
restarts, or when it enables or reloads the package that contains this notification.
When you disable a notification, the adapter drops the trigger, the buffer table, and the
sequence.
For more information about how Ordered Notifications work, see “Ordered
Notifications Transaction Processing” on page 50.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 45
M
Even Header
Overview of the Adapter
following diagrams. Examples A and B will process operations in the correct order.
Example C is not guaranteed to process operations in the correct order.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 46
M
Odd Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 47
M
Even Header
Overview of the Adapter
Note: You can create only one trigger for each operation on a table. For each
notification, you can configure only one trigger for each table.
The following table lists the tasks required to use this notification:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 48
M
Odd Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 49
M
Even Header
Overview of the Adapter
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 50
M
Odd Header
Overview of the Adapter
Step Description
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 51
M
Even Header
Overview of the Adapter
Step Description
4 The buffer table holds the data selected by the trigger. While the adapter
remains enabled, the trigger continues to monitor the database table and
insert data into the buffer table.
With Ordered Notifications, the adapter creates the trigger, sequence, and
buffer tables for each operation you want to monitor when you enable
the notification. The database trigger monitors the tables and inserts data
into the buffer table. When Integration Server invokes the notification, the
notification will poll all of the buffer tables and publish the data in the same
order in which the operations occurred. This ensures that the order of the
operations is preserved.
5 The notification retrieves the rows of data from the buffer table.
Each Ordered Notification generates one row for each operation. The
notification uses the Operation ID and an Operation Type field you
specified when you configured the notification to uniquely identify this
row. The Operation ID is user-defined.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 52
M
Odd Header
Overview of the Adapter
Step Description
value is INSERT, the flow service picks up data from the INSERT record as
input and processes accordingly.
For more information about using triggers and flow services with Ordered
Notifications, see “Ordered Notifications” on page 45.
After the data is published, the data is deleted from the buffer table.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 53
M
Even Header
Overview of the Adapter
Important: Not all JDBC drivers for backends that the adapter supports return
synonyms. You can use synonyms only with some of the supported
backends.
For information about working with and creating synonyms, see the documentation of
your database vendor.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 54
M
Odd Header
Overview of the Adapter
Update Notification
Consider the following limitations when using synonyms with adapter services:
If you want to use synonyms for stored procedures, you cannot use the
StoredProcedureWithSignature adapter service. Use the StoredProcedure service
instead.
The SelectSQL, DeleteSQL, InsertSQL, and Update SQL services support synonyms
only for database tables and views.
For information about configuring adapter services, see “Adapter Services” on
page 101. For information about configuring adapter notifications, see “Adapter
Notifications” on page 151.
Update Notification
Consider the following limitations when using synonyms with adapter services:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 55
M
Even Header
Overview of the Adapter
where value is the number of seconds the adapter waits for the service or the notification
to execute before stopping the SQL operation and throwing an exception. For more
information about seing the wa properties, see the Integration Server administration
guide for your release. See “About this Guide” for specific document titles.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 56
M
Odd Header
Overview of the Adapter
Controlling Pagination
When using the adapter on Integration Server 9.0 and later, you can control the number
of items that are displayed on the adapter Connections screen and Notifications screen.
By default, 10 items are displayed per page. Click Next and Previous to move through the
pages, or click a page number to go directly to a page.
To change the number of items displayed per page, set the wa.art.page.size property
and specify a different number of items.
3. Click Save Changes. The property appears in the Extended Seings list.
For more information about working with extended configuration seings, see the
Integration Server administration guide for your release. See “About this Guide” for
specific document titles.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 57
M
Even Header
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 58
M
Odd Header
Installing, Upgrading, and Uninstalling Adapter for JDBC
■ Overview ....................................................................................................................................... 60
■ Requirements ............................................................................................................................... 60
■ The Integration Server Home Directory ....................................................................................... 60
■ Installing Adapter for JDBC ......................................................................................................... 60
■ Upgrading to Adapter for JDBC 9.0 ............................................................................................. 61
■ Migrating adapter services from 6.5 to 9.0 .................................................................................. 63
■ Uninstalling Adapter for JDBC ..................................................................................................... 63
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 59
M
Even Header
Installing, Upgrading, and Uninstalling Adapter for JDBC
Overview
This chapter explains how to install, upgrade, and uninstall webMethods Adapter
for JDBC 9.0. The instructions use the Software AG Installer and the Software AG
Uninstaller wizards. For complete information about the wizards or other installation
methods, or to install other webMethods products, see the webMethods installation
guide for your release. See “About this Guide” for specific document titles.
Requirements
For a list of operating systems, RDBMSs, and webMethods products supported by
Adapter for JDBC, see webMethods Adapters System Requirements.
Adapter for JDBC has no hardware requirements beyond those of its host Integration
Server.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 60
M
Odd Header
Installing, Upgrading, and Uninstalling Adapter for JDBC
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 61
M
Even Header
Installing, Upgrading, and Uninstalling Adapter for JDBC
Archiving
To archive the existing adapter
1. Navigate to Packages >Management in Integration Server Administrator.
2. Locate WmJDBCAdapter and click the icon in the Archive column.
The Archive page is displayed in Integration Server Administrator with the list of all
files to be archived.
By default, Full Archive Type is selected.
3. Click Create Archive.
Integration Server creates a copy of the adapter package in the
Integration Server_directory\replicate\outbound directory.
Upgrading
To upgrade to Adapter for JDBC 9.0
1. Uninstall the existing adapter and delete the package using the instructions in on
page 63“Uninstalling Adapter for JDBC”.
2. Install Adapter for JDBC using the instructions in “Installing Adapter for JDBC” on
page 60.
3. Upgrade the Adapter for JDBC assets. For details, refer to “Migrating adapter
services from 6.5 to 9.0” on page 63.
Reverting
To revert to the earlier adapter
1. Uninstall the existing adapter and delete the package using the instructions in on
page 63“Uninstalling Adapter for JDBC”.
2. Copy the packages_directory \replicate\outbound\WmJDBCAdapter to
packages_directory \replicate\inbound directory.
3. Navigate to Packages >Management in Integration Server Administrator.
4. Click Install Inbound Releases.
The Inbound Releases page is displayed in Integration Server Administrator.
5. Select the Release file name from the drop-down list and click Install Release.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 62
M
Odd Header
Installing, Upgrading, and Uninstalling Adapter for JDBC
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 63
M
Even Header
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 64
M
Odd Header
Package Management
3 Package Management
■ Overview ....................................................................................................................................... 66
■ Adapter for JDBC Package Management .................................................................................... 66
■ Group Access Control .................................................................................................................. 70
■ Adapter for JDBC in a Clustered Environment ............................................................................ 70
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 65
M
Even Header
Package Management
Overview
The following sections describe how to set up and manage your Adapter for JDBC
packages, set up Access Control Lists (ACLs), and use the adapter in a clustered
environment.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 66
M
Odd Header
Package Management
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 67
M
Even Header
Package Management
Enabling Packages
All packages are automatically enabled by default. Use the following procedure when
you want to enable a package that was previously disabled.
To enable a package
1. Open Integration Server Administrator if it is not already open.
2. In the Packages menu of the navigation area, click Management.
3. Click No in the Enabled column. The server displays a and Yes in the Enabled
column.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 68
M
Odd Header
Package Management
Note: Enabling an adapter package will not cause its associated user-defined
packages to be reloaded. For information about reloading packages, see
the Designer Service Development online help for your release. See “About
this Guide” for specific document titles.
Important: Before you manually enable a user-defined package, you must first
enable its associated adapter package (WmJDBCAdapter).
Disabling Packages
When you want to temporarily prohibit access to the elements in a package, disable
the package. When you disable a package, the server unloads all of its elements from
memory. Disabling a package prevents Integration Server from loading that package at
startup.
Important: If your adapter has multiple user-defined packages, and you want to
disable some of them, disable the adapter package first (WmJDBCAdapter).
Otherwise, errors will be issued when you try to access the remaining
enabled user-defined packages.
To disable a package
1. Open Integration Server Administrator if it is not already open.
2. In the Packages menu of the navigation area, click Management.
3. Click Yes in the Enabled column for the package that you want to disable. The server
issues a prompt to verify that you want to disable the package. Click OK to disable
the package. When the package is disabled, the server displays No in the Enabled
column.
A disabled adapter will:
Remain disabled until you explicitly enable it using Integration Server
Administrator.
Not be listed in Designer.
Important: Do not rename packages you export; the rename function is comparable to
moving a package, and when you import the renamed package, you lose any
triggers, connections, and notifications associated with this package.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 69
M
Even Header
Package Management
For details about importing and exporting packages, see the Designer Service
Development online help for your release. See “About this Guide” for specific document
titles.
Note: Integration Server clustering redirects HTTP and HTTPS requests, but
does not redirect FTP or SMTP requests.
Scalability. You can increase your capacity even further by adding new machines
running Integration Server to the cluster.
For details on Integration Server clustering, see the Integration Server clustering guide
for your release. See “About this Guide” for specific document titles.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 70
M
Odd Header
Package Management
Important: Adapter for JDBC supports enabling the same polling notification on
multiple Integration Server instances connecting to the same backend
database to achieve automated failover, only when the multiple Integration
Servers share the same ISInternal database. If you aempt to use the
same polling notification on multiple Integration Servers pointing to the
same backend database but using separate ISInternal databases, you may
encounter abnormal results.
Beginning with Integration Server 9.0, Adapter for JDBC uses Integration Server
Scheduler to support polling notifications. On enabling a polling notification, a new
Integration Server scheduled task is created, which polls the backend resource at the
given interval. Do not manually edit or change scheduled tasks. Each polling notification
creates an Integration Server scheduled task. When a notification is disabled, the
scheduled task in Integration Server is removed.
Important: All adapter polling notifications must be in a disabled state on all nodes in
the Integration Server cluster before you disable the cluster.
Note: You can make scheduled notification tasks visible in the Server
> Scheduler page in Integration Server Administrator by seing
watt.pkg.art.scheduler.notificationtask.display=true
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 71
M
Even Header
Package Management
Configuring this property is required only for debugging or for editing the
polling notification schedule interval.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 72
M
Odd Header
Package Management
Integration Server_directory\config\redir.cnf
3. Add the following line to the file:
<value name="wm.art">false</value>
The following considerations and requirements apply to Adapter for JDBC in a clustered
environment.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 73
M
Even Header
Package Management
For information about replicating adapter packages, connections, adapter services, and
adapter notifications across multiple Integration Servers in a cluster, see “Replicating
Packages to Integration Servers” on page 72.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 74
M
Odd Header
Package Management
Integration Servers, it is possible for the connection pool size on both servers to exceed
the maximum number of database connections that can be open at one time.
For information about configuring connections for Adapter for JDBC, see “Adapter for
JDBC Connections” on page 77.
For more general information about connection pools, see the Integration Server
administration guide for your release. See “About this Guide” for specific document
titles.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 75
M
Even Header
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 76
M
Odd Header
Adapter for JDBC Connections
■ Overview ....................................................................................................................................... 78
■ Before Configuring or Managing Adapter Connections ............................................................... 78
■ Setting the Environment Variable for Oracle JDBC OCI Drivers ................................................. 79
■ Installing a JDBC Driver on Integration Server ............................................................................ 79
■ Configuring Adapter for JDBC Connections ................................................................................ 80
■ Dynamically Changing a Service's Connection at Run Time ....................................................... 95
■ Dynamically Changing the User Credentials of a Service's Connection at Run Time ................. 96
■ Viewing Adapter Connection Parameters .................................................................................... 96
■ Editing Adapter Connections ....................................................................................................... 97
■ Copying Adapter Connections ..................................................................................................... 98
■ Deleting Adapter Connections ..................................................................................................... 98
■ Enabling Adapter Connections .................................................................................................... 99
■ Disabling Adapter Connections .................................................................................................... 99
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 77
M
Even Header
Adapter for JDBC Connections
Overview
This chapter describes how to configure and manage Adapter for JDBC connections. For
more information about how adapter connections work, see “Adapter Connections” on
page 18.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 78
M
Odd Header
Adapter for JDBC Connections
Note: *If you are using Oracle 920 JDBC driver files with an Oracle 920 client to
connect to different Oracle database versions, set the environment variable for
your platform to /ORACLE_HOME/lib32.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 79
M
Even Header
Adapter for JDBC Connections
Note: If you use Oracle JDBC OCI drivers with Adapter for JDBC, you must add an
environment variable seing before you configure adapter connections. For
details, see “Seing the Environment Variable for Oracle JDBC OCI Drivers”
on page 79.
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 80
M
Odd Header
Adapter for JDBC Connections
Field Description/Action
help for your release. See “About this Guide” for specific
document titles.
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.
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 81
M
Even Header
Adapter for JDBC Connections
Field Description/Action
For XA_TRANSACTION:
oracle.jdbc.xa.client.OracleXADataSource
For XA_TRANSACTION:
oracle.jdbc.xa.client.OracleXADataSource
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 82
M
Odd Header
Adapter for JDBC Connections
Field Description/Action
wm.jdbcx.impala.ImpalaDataSource
For XA_TRANSACTION:
com.microsoft.sqlserver.jdbc.SQLServerXADataSource
For XA_TRANSACTION:
com.mysql.jdbc.jdbc2.optional.MysqlXADataSource
For XA_TRANSACTION:
com.ibm.as400.access.AS400JDBCXADataSource
For XA_TRANSACTION:
com.ibm.db2.jcc.DB2XADataSource
For XA_TRANSACTION:
com.sybase.jdbc2.jdbc.SybXADataSource
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 83
M
Even Header
Adapter for JDBC Connections
Field Description/Action
For XA_TRANSACTION:
com.sybase.jdbc3.jdbc.SybXADataSource
For XA_TRANSACTION:
com.informix.jdbcx.IfxXADataSource
For XA_TRANSACTION:
com.edb.xa.PGXADataSource
SAP Hana
com.sap.db.jdbcext.DataSourceSAP
b. Depending on the driver type, some or all of the following fields are required. To
determine whether your driver type requires you to use a field, see “Required
Connection Property Fields” on page 93.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 84
M
Odd Header
Adapter for JDBC Connections
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
your DataDirect Connect documentation.
Field Description/Action
user* The user name that the connection will use to connect to
the database.
portNumber The port number that the connection will use to connect to
the database.
Note: *For Microsoft SQL Server databases, the user name and password you
configure for a connection must be the same as those used to create the
tables you use with a specific notification. Otherwise, an exception will
be generated at run time.
6. You can specify the following seings in the Other Properties field:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 85
M
Even Header
Adapter for JDBC Connections
For DB2 AS/400 and DB2 OS390 databases, specify the clischema property as
follows:
clischema=schema name
With DB2 AS/400, use the clischema property to enable or disable adapter
polling notifications when the systriggers view is not in the default schema.
For example, if you specify clischema=QSYS2, when enabling or disabling a
notification the adapter issues the following query: SELECT trigger_name
FROM QSYS2.systriggers
With DB2 OS390, use the clischema property to enable an adapter polling
notification if the triggers for the notification already exist. First you must
create a systriggers view in the sysibm.systriggers table and then specify the
schema in which the view was created against the clischema property. Thus
the adapter redirects the query for triggers to the appropriate schema.
For a DB2 AS/400 database, if the StoredProcedure adapter service calls a stored
procedure with a procedure name that is different from its specific name, specify
the following property:
metadatasource=1
Specify table filter property seings to limit the list of catalogs, schemas, and
tables you select when you create adapter services and notifications. This seing
is beneficial if you work with large databases.
Use the following format to enter table filter property seings in the Other
Properties field:
TableFilter=‘catalog1 '.‘schema1 '.‘table1 ',
‘catalog2 '.‘schema2 '.‘table2 ',‘catalogN '.‘schemaN '
For example:
TableFilter=‘Payables'.‘Accounting'.‘Finance'
Note: The TableFilter seing is case-sensitive. Be sure that the names you
enter match the names in the database table. If you use ‘<current
catalog>' or ‘<current schema>' described below, be sure that you
use all lowercase leers.
When configuring the TableFilter property, you can use the following rules:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 86
M
Odd Header
Adapter for JDBC Connections
Use... To...
Specify transaction isolation level seings to set the transaction isolation level
for a database. This seing prevents dirty read, repeatable read, and phantom
read of the database, prevent dirty read, repeatable read, and phantom read of a
database. For more information about the transaction isolation level seings in
Adapter for JDBC, see “Transaction Isolation Level Seings” on page 20.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 87
M
Even Header
Adapter for JDBC Connections
Use the following format to specify the transaction isolation levels of the
database:
transactionIsolation = value
Note: For DB2 on AS/400, if you are accessing a table with the <current
catalog>.<current schema> qualifier, set the translation
isolation level and also specify the Libraries property as follows:
TransactionIsolation=none;Libraries=QGPL
You can specify only one transaction isolation level for a connection. The
commonly used transaction isolation levels and their values are:
TRANSACTION_READ_UNCOMMITTED 1
TRANSACTION_READ_COMMITTED 2
TRANSACTION_REPEATABLE_READ 4
TRANSACTION_SERIALIZABLE 8
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 88
M
Odd Header
Adapter for JDBC Connections
For DB2 for OS/390, non repeatable read does not function when
you set the transaction isolation level to 2.
For Informix, phantom read does not function when you set the
transaction isolation level to 4.
Use { } to delimit a combination of multiple key value pairs that use ; (semi-
colons) as delimiters. Do not enter spaces after the semi-colon. For example:
TableFilter='<current catalog>'.'Accounting';driverType=oci;
connectionProperties={oracle.jdbc.V8Compatible=true,includeSynonymns=true
};transactionIsolation=2
Field Description/Action
Other Properties DataDirect Connect for JDBC 3.2 for DB2 UDB 7.2, 8.1,
(Driver-dependent 9.1, and 9.5:
Properties) PackageName=value
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 89
M
Even Header
Adapter for JDBC Connections
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 90
M
Odd Header
Adapter for JDBC Connections
Field Description/Action
Teradata Type 4:
DSName=value
Field Description/Action
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
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 91
M
Even Header
Adapter for JDBC Connections
Field Description/Action
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.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 92
M
Odd Header
Adapter for JDBC Connections
Field Description/Action
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 seing should be
tuned in conjunction with the Minimum Pool Size to avoid
excessive opening/closing of connections during normal
processing.
Startup Retry Count The number of times that the system should aempt
to initialize the connection pool at startup if the initial
aempt fails. The default is 0.
Startup Backoff The number of seconds that the system should wait
Timeout between aempts to initialize the connection pool.
DB2 net type 3 (for OS/390 Yes Yes Yes Yes Yes No
V6 and V7, and UDB V7.2
and V8.1)
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 93
M
Even Header
Adapter for JDBC Connections
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 94
M
Odd Header
Adapter for JDBC Connections
Important: At run time, you can change either the credentials (user name and password)
or the connection name associated with a specific service, but not both at the
same time. If you override both the credentials and the connection name,
Adapter for JDBC takes into account only the connection name override.
To override the default connection, you must code your flow to pass a value through the
pipeline into a service's $connectionName field.
For example, you have a flow whose primary purpose is to update a production
database. However, you want the flow to have the capability to update a test database,
with the decision of which database to update to be made programmatically at runtime.
The output signature of the flow's first service contains a field called Target. The flow
could branch based on the value in Target. If Target contains the value Production,
the second service in the flow would ignore $connectionName, thus using its default
connection to connect to (and then update) the production database. However, if
Target contains the value Test, the second service in the flow would use the value in the
$connectionName from the pipeline and connect to (and then update) the test database.
Keep in mind these restrictions when using dynamic connections:
Both connections, the default and override, must use the same database schema.
The connection with which you override the default (that is, the value provided
for $connectionName) must be configured to use the same transaction type as the
default connection.
For more information, see “Changing the Connection Associated with an Adapter
Service at Run Time” on page 26.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 95
M
Even Header
Adapter for JDBC Connections
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 96
M
Odd Header
Adapter for JDBC Connections
iii. Click Submit. The Connections screen displays the connections that match the
filter criteria.
iv. To re-display all connections, click Show All Connections.
The Connections screen appears, listing all the current connections. You can
control the number of connections that are displayed on this screen. For more
information, see “Controlling Pagination” on page 57.
2. On the Connections screen, click the icon for the connection you want to see.
The View Connection screen displays the parameters for the connection. For
descriptions of the connection parameters, see “Configuring Adapter for JDBC
Connections” on page 80.
3. Click Return to JDBC Adapter connections to return to the main connections screen.
To edit a connection
1. In the Adapters menu in Integration Server Administrator's navigation area, click
JDBC Adapter.
2. Make sure that the connection is disabled before editing it. For instructions, see
“Disabling Adapter Connections” on page 99.
3. On the Connections screen, click the icon for the connection you want to edit.
The Edit Connection screen displays the current parameters for the connection.
Update the connection's parameters by typing or selecting the values you want to
specify.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 97
M
Even Header
Adapter for JDBC Connections
For descriptions of the connection parameters, see “Configuring Adapter for JDBC
Connections” on page 80.
4. Click Save Changes to save the connection and return to the Connections screen.
To copy a connection
1. In the Adapters menu in Integration Server Administrator's navigation area, click
Adapter for JDBC.
2. On the Connections screen, click the icon for the connection you want to copy.
The Copy Connection screen displays the current parameters for the connection you
want to copy. Name the new connection, specify a package name and folder name,
and edit any connection parameters as needed by typing or selecting the values you
want to specify.
Note: When you copy a connection, the new connection does not save the
password of the original connection. You must enter and then retype the
password before you can save the new connection.
For descriptions of the connection parameters, see “Configuring Adapter for JDBC
Connections” on page 80.
3. Click Save Connection Copy to save the connection and return to the Connections
screen.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 98
M
Odd Header
Adapter for JDBC Connections
To delete a connection
1. In the Adapters menu in the Integration Server Administrator navigation area, click
Adapter for JDBC.
2. Make sure that the connection is disabled before deleting. To disable the connection,
click Yes in the Enabled column and click OK to confirm. The Enabled column now
shows No (Disabled) for the connection.
3. On the Connections screen, click for the connection you want to delete.
Integration Server deletes the adapter connection.
Note: When you reload a package that contains enabled connections, the
connections will automatically be enabled when the package reloads. If the
package contains connections that are disabled, they will remain disabled
when the package reloads.
To enable a connection
1. In the Adapters menu in the Integration Server Administrator navigation area, click
Adapter for JDBC.
2. On the Connections screen, click No in the Enabled column for the connection you
want to enable.
Integration Server Administrator enables the adapter connection and displays a
and Yes in the Enabled column.
To disable a connection
1. In the Adapters menu in the Integration Server Administrator navigation area, click
Adapter for JDBC.
2. On the Connections screen, click Yes in the Enabled column for the connection you
want to disable.
The adapter connection becomes disabled and you see a No in the Enabled column.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 99
M
Even Header
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 100
M
Odd Header
Adapter Services
5 Adapter Services
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 101
M
Even Header
Adapter Services
Overview
This chapter describes how to configure and manage Adapter for JDBC services. For
detailed descriptions of the available Adapter for JDBC services, see “Adapter Services”
on page 21.
Note: Integration Server provides a built-in service you can use at design time
to change the connection associated with an adapter service. For more
information, see “Changing the Connection Associated with an Adapter
Service or Notification at Design Time” on page 26.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 102
M
Odd Header
Adapter Services
Field Description/Action
Table The table alias is assigned automatically when you select more
Alias than one table in the Table Name field. The default is t1.
Table Select a table name. The default for the associated catalog name is
Name current catalog. The default for the associated schema name is
current schema. The table name must not contain a period. If the
table name does contain a period, Designer will throw an error.
Type The type displays automatically based on the table you select.
7. If you are not joining tables, skip this step. Select the Joins tab to specify the columns
for joining the tables you just configured.
a. Select the icon to create new left and right columns.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 103
M
Even Header
Adapter Services
b. Select Left Column and select the first table's joining column.
c. Select the appropriate Operator.
d. Select Right Column and select the next table's joining column.
e. Repeat this procedure until you have defined all the joins.
8. Use the SELECT tab to define the columns and fields to be selected as follows:
a. In the ALL/DISTINCT field, select ALL to include duplicate rows or DISTINCT to
suppress duplicate rows. Selecting ALL corresponds to the SQL statement SELECT
ALL name from tablename. The default value is blank, which corresponds to
the SQL statement SELECT name from tablename.
b. Use the icon to create new rows as needed. You can use the icon to fill in
all rows to the table.
c. As you insert additional rows, the corresponding Column Type, JDBC Type, Output
Field Type, and Output Field display for each column you select in the Expression
field.
Use the following fields:
Field Description/Action
Column Type The column data type defined in the database table.
Output Field The data type of the output field. Adapter for JDBC
Type automatically converts database-specific types to Java
data types. For a list of JDBC type to Java type mappings,
see “JDBC Data Type to Java Data Type Mappings” on
page 218.
Output Field The name of the field containing the output from the
SELECT operation. An output field name displays when
you select an expression. You can also modify the output
field names as required.
Sort Order Specifies how rows are returned as follows: Select either
Ascend or Descend. Leave the field blank if there is no sort
order.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 104
M
Odd Header
Adapter Services
Field Description/Action
Maximum Row Use this field only to specify the maximum number of
records to retrieve from the database. The default value of
0 (no limit) retrieves all records.
Result Field Specify a name for the output field that must contain the
total number of rows affected by the SQL statement. Do
not use results as the value of the Result Field.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 105
M
Even Header
Adapter Services
9. Use the WHERE tab to specify the conditions for selecting information:
a. Select the icon to define new WHERE clause fields.
b. Select a logical operator from the AND/OR field, an Operator, and separators (the
left and right parentheses) as needed, and specify values for the following fields:
Field Description/Action
Operator The operator used with the Column and Input Field.
Field Description
Column (second The name of the column you want to use in the
occurrence of this WHERE clause.
field)
Input Field Type The corresponding input field's Java type. For
a list of JDBC type to Java type mappings, see
“JDBC Data Type to Java Data Type Mappings”
on page 218.
Input Field (second The name of the input field. By default the name
occurrence of this combines the values of the Parameter and Column
field) fields. However, you can also choose to specify
any custom value.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 106
M
Odd Header
Adapter Services
Note: For Oracle users, if you use a CHAR(n) data type and enter a
value in the Input Field, Adapter for JDBC automatically sets the
ORACLEFIXED_CHAR data type as the JDBC data type.
Note: The WHERE clause does not support the java.sql.Array data type.
c. If necessary, use the or icons to change the order of the WHERE clause to
ensure the parameters are parsed in the correct order.
d. Repeat this procedure until you have specified all WHERE parameters.
10. From the File menu, select Save.
Field Description/Action
Table Select a table name. The default for the associated catalog name
Name is current catalog. The default for the associated schema name
is current schema. The table name must not contain a period.
If the table name does contain a period, Designer will throw an
error.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 107
M
Even Header
Adapter Services
Field Description/Action
Type The table type displays automatically based on the table you
select.
7. Select the INSERT tab and use the Column, Column Type, JDBC Type and Expression
fields on the top row of the tab to define the columns and fields to be inserted as
described in the following table.
a. Use the icon to create new rows as needed. You can use the icon to fill in
all rows to the table.
Field Description/Action
b. For each inserted row that uses the default Expression value of ?, the
corresponding JDBC Type, Input Field, and Input Field Type display on the second
row of the INSERT tab.
Use the following fields:
Field Description/Action
Column Type The INSERT column data type in the database table.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 108
M
Odd Header
Adapter Services
Field Description/Action
Input Field* The input field name. You can change this name if needed.
Input Field The data type of the input field. You can change this type if
Type needed.
Note: For Oracle users, if you use a CHAR(n) data type and enter a
value in the Input Field, Adapter for JDBC automatically sets the
ORACLEFIXED_CHAR data type as the JDBC data type.
c. Specify the query time out value of the InsertSQL service you are configuring in
the following field:
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 109
M
Even Header
Adapter Services
Field Description/Action
8. Use the Result tab's Result Field and Result Field Type to specify the output field name
and corresponding field types for the resulting number of rows that have been
inserted.
9. From the File menu, select Save.
Field Description/Action
Table Select a table name. The default for the associated catalog name is
Name current catalog. The default for the associated schema name is
current schema. The table name must not contain a period. If the
table name does contain a period, Designer will throw an error.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 110
M
Odd Header
Adapter Services
Field Description/Action
Type The table type displays automatically based on the table you
select.
7. Select the UPDATE tab and use the Column, Column Type, JDBC Type and Expression
fields on the top row of the tab to define the columns and fields, as follows:
a. Use the icon to create new rows as needed. You can use the icon to fill in
all rows to the table.
Field Description/Action
b. If you insert additional rows using the default Expression value of ?, the
corresponding JDBC Type, Input Field and Input Field Type display on the second
row of the UPDATE tab:
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 111
M
Even Header
Adapter Services
Field Description/Action
Input Field The input field name. You can change this name if needed.
Input Field The data type of the input field. You can change this type if
Type needed.
Note: For Oracle users, if you use a CHAR(n) data type and enter a
value in the Input Field, Adapter for JDBC automatically sets the
ORACLEFIXED_CHAR data type as the JDBC data type.
c. Specify the query time out value of the UpdateSQL service you are configuring in
the following field:
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 112
M
Odd Header
Adapter Services
Field Description/Action
Timeout During Long-Running SQL Operations in Services
and Notifications” on page 56.
8. Use the WHERE tab to specify the conditions for selecting information:
a. Select the icon to define new WHERE clause fields.
b. Select a logical operator from the AND/OR field, an Operator, and separators (the
left and right parentheses) as needed.
Use the following fields:
Field Description/Action
Column The name of the column you want to use in the WHERE clause.
Operator The operator used with the Column and Input Field.
Field Description
Column (second The name of the column you want to use in the
occurrence of this WHERE clause.
field)
Input Field Type The corresponding input field's Java type. For
a list of JDBC type to Java type mappings, see
“JDBC Data Type to Java Data Type Mappings”
on page 218.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 113
M
Even Header
Adapter Services
Field Description
Input Field (second The name of the input field. By default the name
occurrence of this combines the values of the Parameter and Column
field) fields. However, you can also choose to specify
any custom value.
Note: For Oracle users, if you use a CHAR(n) data type and enter a
value in the Input Field, Adapter for JDBC automatically sets the
ORACLEFIXED_CHAR data type as the JDBC data type.
Note: The WHERE clause does not support the java.sql.Array data type.
9. Use the Result tab's Result Field and Result Field Type to specify the output field name
and corresponding field types for the resulting number of rows that have been
inserted.
10. From the File menu, select Save.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 114
M
Odd Header
Adapter Services
5. From the list of available templates, select the BatchInsertSQL template and click
Finish.
The adapter service editor for the adapter service appears. You can select the Adapter
Settings tab at any time to confirm adapter service properties such as the Adapter
Name, Adapter Connection Name, and Adapter Service Template, as necessary.
6. Select the Table tab to configure the database table to be updated and set the fields as
follows:
Field Description/Action
Table Select a table name. The default for the associated catalog name is
Name current catalog. The default for the associated schema name is
current schema. The table name must not contain a period. If the
table name does contain a period, Designer will throw an error.
Type The table type displays automatically based on the table you select.
7. Select the INSERT tab and use the Column, Column Type, JDBC Type, and Expression
fields on the top row of the tab to define the columns and fields to be inserted as
described in the following table.
a. Use the icon to create new rows as needed. You can use the icon to fill in
all rows to the table.
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 115
M
Even Header
Adapter Services
Field Description/Action
adds one row with the same column name to the table. You
can also type a fixed value in this field now or at run time. If
you type a fixed value, be sure that it is valid, or an exception
will be generated at run time.
b. For each inserted row that uses the default Expression value of ?, the
corresponding Input Field, and Input Field Type display on the second row of the
INSERT tab. Use the following fields:
Field Description/Action
Column Type The INSERT column data type in the database table.
Input Field The input field name. You can change this name if needed.
Input Field The data type of the input field. You can change this type
Type if needed.
Note: For Oracle users, if you use a CHAR(n) data type and enter a
value in the Input Field, Adapter for JDBC automatically sets the
ORACLEFIXED_CHAR data type as the JDBC data type.
c. Specify the query time out value of the BatchInsertSQL service you are
configuring in the following field:
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 116
M
Odd Header
Adapter Services
Field Description/Action
than the specified time-out interval, the monitor thread calls
Statement.cancel(). In some cases, because of a limitation in
the Statement.cancel() method, the time out does not free
the thread that invoked the Statement.execute() method and
this may lead to higher waiting times.
The default value is -1. Use the default value to
have the service use the value indicated on the
wa.adapter.JDBC.QueryTimeout property as the
time out. If you specify a value equal to 0, or if the
wa.adapter.JDBC.QueryTimeout property is not set, the
service executes without a time out. If you specify a value
greater than 0, the service executes with the specified value
as the time out.
8. Use the Batch Result tab's Batch Result Output Name to specify the output field name for
the batch operation. The output of the batch operation is a string list. The elements of
the string list are ordered according to the order in which commands were added to
the batch. Depending on the JDBC driver you use, the elements in the string list may
be one of the following:
A number greater than or equal to zero. This indicates that the command was
successfully executed and the number of rows in the database affected.
A value of SUCCESS_NO_INFO. This indicates that the command was processed
successfully but the number of rows affected is unknown.
9. From the File menu, select Save.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 117
M
Even Header
Adapter Services
5. From the list of available templates, select the BatchUpdateSQL template and click
Finish.
The adapter service editor for the adapter service appears. You can select the Adapter
Settings tab at any time to confirm adapter service properties such as the Adapter
Name, Adapter Connection Name, and Adapter Service Template, as necessary.
6. Select the Table tab to configure the database table to be updated and set the fields as
follows:
Field Description/Action
Table Select a table name. The default for the associated catalog name is
Name current catalog. The default for the associated schema name is
current schema. The table name must not contain a period. If the
table name does contain a period, Designer will throw an error.
Type The table type displays automatically based on the table you
select.
7. Select the UPDATE tab and use the Column, Column Type, JDBC Type, and Expression
fields on the top row of the tab to define the columns and fields, as follows:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 118
M
Odd Header
Adapter Services
a. Use the icon to create new rows as needed. You can use the icon to fill in
all rows to the table.
Field Description/Action
b. If you insert additional rows using the default Expression value of ?, the
corresponding Input Field and Input Field Type display on the second row of the
UPDATE tab:
Field Description/Action
Column Type The column data type defined in the database table.
Input Field The input field name. You can change this name if needed.
Input Field The data type of the input field. You can change this type if
Type needed.
Note: For Oracle users, if you use a CHAR(n) data type and enter a
value in the Input Field, Adapter for JDBC automatically sets the
ORACLEFIXED_CHAR data type as the JDBC data type.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 119
M
Even Header
Adapter Services
c. Specify the query time out value of the BatchUpdateSQL service you are
configuring in the following field:
Field Description/Action
8. Use the WHERE tab to specify the conditions for selecting information:
a. Select the icon to define new WHERE clause fields.
b. Select a logical operator from the AND/OR field, an Operator, and separators (the
left and right parentheses) as needed. Use the following fields:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 120
M
Odd Header
Adapter Services
Field Description/Action
Operator The operator used with the Column and Input Field.
Input Field Type The corresponding input field's Java type. For
a list of JDBC type to Java type mappings, see
“JDBC Data Type to Java Data Type Mappings”
on page 218.
Input Field (second Type the name of the input field. If you use the
occurrence of this default ? variable placeholder as the Input Field
field) value in the where clause, be sure to enter the
corresponding Input Field and its JDBC Field Type in
the same order as they appear on the top portion
of the WHERE tab.
Note: The WHERE clause does not support the java.sql.Array data type.
9. Use the Batch Result tab's Batch Result Output Name to specify the output field name for
the batch operation. The output of the batch operation is a string list. The elements of
the string list are ordered according to the order in which commands were added to
the batch. Depending on the JDBC driver you use, the elements in the string list may
be one of the following:
A number greater than or equal to zero. This indicates that the command was
successfully executed and the number of rows in the database affected.
A value of SUCCESS_NO_INFO. This indicates that the command was processed
successfully but the number of rows affected is unknown.
10. From the File menu, select Save.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 121
M
Even Header
Adapter Services
Field Description/Action
Table Select a table name. The default for the associated catalog name is
Name current catalog. The default for the associated schema name is
current schema. The table name must not contain a period. If the
table name does contain a period, Designer will throw an error.
Type The table type displays automatically based on the table you select.
7. Use the WHERE tab to specify the conditions for selecting information:
a. Select the icon to define new WHERE clause fields.
b. Select a logical operator from the AND/OR field, an Operator, and separators (the
left and right parentheses) as needed.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 122
M
Odd Header
Adapter Services
Field Description/Action
Column The name of the column you want to use in the WHERE
clause.
Operator The operator used with the Column and Input Field.
Field Description
Column (second The name of the column you want to use in the
occurrence of this WHERE clause.
field)
Input Field Type The corresponding input field's Java type. For
a list of JDBC type to Java type mappings, see
“JDBC Data Type to Java Data Type Mappings”
on page 218.
Input Field (second The name of the input field. By default the name
occurrence of this combines the values of the Parameter and Column
field) fields. However, you can also choose to specify
any custom value.
Note: For Oracle users, if you use a CHAR(n) data type and enter a
value in the Input Field, Adapter for JDBC automatically sets the
ORACLEFIXED_CHAR data type as the JDBC data type.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 123
M
Even Header
Adapter Services
Note: The WHERE clause does not support the java.sql.Array data type.
8. Use the Result tab's Result Field and Result Field Type to specify the output field name
and corresponding field types for the resulting number of rows that have been
inserted.
9. To verify input or output information for this service, use the Input/Output tab as
needed.
10. From the File menu, select Save.
Note: You can use a CustomSQL service to call a stored procedure only when the
stored procedure does not have any OUT/INOUT or return parameters.
If you need to use these parameters, use the StoredProcedure service. For
instructions, see “Configuring StoredProcedure Services” on page 133.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 124
M
Odd Header
Adapter Services
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 125
M
Even Header
Adapter Services
Note: If your SQL query has errors or does not follow the considerations specified
in the above table, the Fill in all rows to the table icon does not populate the
input and output parameters. The the input and output parameters must be
configured manually. You can view the error message by clicking the Reload
values from adapter icon.
Use the icon and to create new rows as needed. You can use the icon to fill in
all rows to the table.
Be sure to review the section “Considerations before using Fill in all rows to the table
feature in CustomSQL Adapter Service” on page 124 before you use the Fill in all
rows to the table icon.
Set the SQL parameters as described in the following table:
Note: When using the CustomSQL service for a Select SQL, it is not mandatory
to configure the output fields Output JDBC Type, Output Field Type, and
Output Field. Adapter for JDBC uses the fields provided in the Select SQL
statement as the output parameter fields.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 126
M
Odd Header
Adapter Services
Field Description/Action
Note: You may paste text into this field from the system
clipboard. However, you may not cut or copy text
from this field to the clipboard for pasting into another
application.
Input Field Type The Java type that corresponds to the input JDBC type. For
a list of JDBC type to Java type mappings, see “JDBC Data
Type to Java Data Type Mappings” on page 218.
Output Field The Java type that corresponds to the output JDBC type. For
Type a list of JDBC type to Java type mappings, see “JDBC Data
Type to Java Data Type Mappings” on page 218.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 127
M
Even Header
Adapter Services
Field Description/Action
Query Time Out Specify the query time out value in seconds.
This value is the amount of time Adapter for JDBC waits for
the service to execute before stopping the SQL operation.
The time out specified in the Query Time Out field is
not guaranteed but depends on the implementation
specific to the driver vendor. The JDBC standard
Statement.SetQueryTimeout() method relies on the
Statement.cancel() method. When execution takes longer
than the specified time-out interval, the monitor thread calls
Statement.cancel(). In some cases, because of a limitation in
the Statement.cancel() method, the time out does not free the
thread that invoked the Statement.execute() method and this
may lead to higher waiting times.
The default value is -1. Use the default value to
have the service use the value indicated on the
wa.adapter.JDBC.QueryTimeout property as the
time out.If you specify a value equal to 0, or if the
wa.adapter.JDBC.QueryTimeout property is not set, the
service executes without a time out.If you specify a value
greater than 0, the service executes with the specified value
as the time out.
Result Field Name of the output field that contains the total number of
rows affected by the SQL statement.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 128
M
Odd Header
Adapter Services
Important: Adapter for JDBC does not validate the input parameters of a DynamicSQL
service for any malicious SQL injections. When you use a variable input
parameter such as the text ${INPUT_FIELD_NAME} in a DynamicSQL
service, you must take extra measures to avoid potential security risks by,
for example, using a wrapper service for your DynamicSQL service that will
validate the variable input parameters.
Note: When using the DynamicSQL service for a Select SQL, it is not mandatory to
configure the output fields Output JDBC Type, Output Field Type, and Output Field.
Adapter for JDBC uses the fields provided in the Select SQL statement as the
output parameter fields.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 129
M
Even Header
Adapter Services
In this example, the service template will generate an input field for the {where} portion
of the statement. Note that you do not type a semicolon (;) at the end of the SQL
statement. Doing so will generate an exception at run time.
At run time, the {where} field is set to where col1>100:
The generated SQL statement will be Select * from table1 where col1>100.
A more extreme example would be to set the SQL field to "${sql}"; in this case, the entire
SQL statement will be set through the input field sql.
Note: You can use a DynamicSQL service to call a stored procedure only when the
stored procedure does not have any OUT/INOUT or return parameters. If you
need these parameters, use the StoredProcedure service. For instructions, see
“Configuring StoredProcedure Services” on page 133.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 130
M
Odd Header
Adapter Services
6. Select the Dynamic SQL tab to specify a SQL statement and the associated input and
output parameters.
Use the icon and set the SQL parameters as described in the table below.
Field Description/Action
Note: You may paste text into this field from the system
clipboard. However, you may not cut or copy text
from this field to the clipboard for pasting into another
application.
Input Field Type The Java type that corresponds to the input JDBC type. For
a list of JDBC type to Java type mappings, see “JDBC Data
Type to Java Data Type Mappings” on page 218.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 131
M
Even Header
Adapter Services
Field Description/Action
Output Field The Java type that corresponds to the output JDBC type. For
Type a list of JDBC type to Java type mappings, see “JDBC Data
Type to Java Data Type Mappings” on page 218.
Query Time Out Specify the query time out value in seconds.
This value is the amount of time Adapter for JDBC waits for
the service to execute before stopping the SQL operation.
The time out specified in the Query Time Out field is
not guaranteed but depends on the implementation
specific to the driver vendor. The JDBC standard
Statement.SetQueryTimeout() method relies on the
Statement.cancel() method. When execution takes longer
than the specified time-out interval, the monitor thread calls
Statement.cancel(). In some cases, because of a limitation in
the Statement.cancel() method, the time out does not free
the thread that invoked the Statement.execute() method and
this may lead to higher waiting times.
The default value is -1. Use the default value to
have the service use the value indicated on the
wa.adapter.JDBC.QueryTimeout property as the
time out. If you specify a value equal to 0, or if the
wa.adapter.JDBC.QueryTimeout property is not set, the
service executes without a time out. If you specify a value
greater than 0, the service executes with the specified value
as the time out.
Result Field Name of the output field that contains the total number of
rows affected by the SQL statement.Do not use results as
the value of the Result Field.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 132
M
Odd Header
Adapter Services
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 133
M
Even Header
Adapter Services
Field Description/Action
Catalog Name The name of the catalog. The default for the catalog
name is current catalog.
Schema Name The name of the schema. The default for the schema
name is current schema.
Enable Procedure To type in the Procedure Name, set this field to False.
Name Lookup To select the Procedure Name from a list, set this field
(Optional) to True. The default is False. To save you time, use
the default value (typing the name) if you know the
name of the procedure and you are working with a large
database which may have a long list of procedures.
JDBC Type Specify the JDBC type of the corresponding return field
for the stored procedure.Use the icon to create new
rows as needed. You can use the icon to fill in all
rows to the table.
Return Field Name Add return field names for the stored procedure.Use the
icon to create new rows as needed. You can use the
icon to fill in all rows to the table.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 134
M
Odd Header
Adapter Services
Field Description/Action
Query Time Out Specify the query time out value in seconds.
This value is the amount of time Adapter for JDBC
waits for the service to execute before stopping the SQL
operation.
The time out specified in the Query Time Out field is
not guaranteed but depends on the implementation
specific to the driver vendor. The JDBC standard
Statement.SetQueryTimeout() method relies on the
Statement.cancel() method. When execution takes
longer than the specified time-out interval, the monitor
thread calls Statement.cancel(). In some cases, because
of a limitation in the Statement.cancel() method, the
time out does not free the thread that invoked the
Statement.execute() method and this may lead to higher
waiting times.
The default value is -1. Use the default value to
have the service use the value indicated on the
wa.adapter.JDBC.QueryTimeout property as the
time out. If you specify a value equal to 0, or if the
wa.adapter.JDBC.QueryTimeout property is not set,
the service executes without a time out. If you specify
a value greater than 0, the service executes with the
specified value as the time out.
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 135
M
Even Header
Adapter Services
Field Description/Action
Input Type The input parameter Java type. For a list of JDBC type to
Java type mappings, see “JDBC Data Type to Java Data Type
Mappings” on page 218.
Output Type The output parameter Java type. For a list of JDBC type to
Java type mappings, see “JDBC Data Type to Java Data Type
Mappings” on page 218.
9. If the procedure returns a result set, select the ResultSet tab to specify result set
parameters using the fields in the following table.
Note: StoredProcedure services can support multiple results sets. The result set
can contain nested cursors.When using the result set that contains nested
cursors, the performance of Adapter for JDBC could degrade. Since the
nested cursors are recursively processed, Adapter for JDBC may also
return data that may not be required.
Use the icon to create additional result sets as needed. Use the following fields:
Field Description/Action
Result Set Index An index is automatically assigned to each result set. The
first row default value is 1.
Result Set Name The name of the result set you want to create.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 136
M
Odd Header
Adapter Services
Field Description/Action
Output Type The Java type of the result column. For a list of JDBC type
to Java type mappings, see “JDBC Data Type to Java Data
Type Mappings” on page 218.
where value is the required maximum number of result sets. For example, to return a
maximum number of 30 result sets from the StoredProcedure service, set the property
as:
watt.adapter.JDBC.StoredProcedureMaxCursorIndex=30
The value should be greater than zero with no upper limits. However, it is
recommended to provide a value within the practical limits. A large value can lead
to an unpredictable behavior of the system. Instead, you can configure another
StoredProcedure adapter service for the next set of result sets.
For more information about seing the wa properties, see the Integration Server
administration guide for your release. See “About this Guide” for specific document
titles.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 137
M
Even Header
Adapter Services
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 138
M
Odd Header
Adapter Services
Field Description/Action
Catalog Name The name of the catalog. The default for the catalog
name is current catalog.
Schema Name The name of the schema. The default for the schema
name is current schema.
Procedure Name To save time, you can type all or part of the procedure
Pattern name in this field to narrow your search. This is
helpful when dealing with a large database that has
a long list of procedures. Use % as a multi-character
wildcard and _ (underscore) as a single character
wildcard.
7. Based on the signature for the stored procedure, the following fields and values will
appear in the top table on the Call tab:
Field Description/Action
JDBC Type The JDBC data type of the stored procedure parameter.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 139
M
Even Header
Adapter Services
Field Description/Action
Expression* Sets the input for the IN or INOUT parameter types only. The
RETURN or OUT parameters will appear automatically on the
Call tab's boom table. For a list of the allowable expression
seings by parameter type, and how each parameter will map
to the input or output fields, see the following table.
8. The middle table on the Call tab lists the following input parameters and values for
the stored procedure that will map to the input fields of the service:
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 140
M
Odd Header
Adapter Services
Field Description/Action
Input Field Type The input parameter Java data type. For a list of JDBC
type to Java data type mappings, see “JDBC Data Type
to Java Data Type Mappings” on page 218.
a. The boom table on the Call tab lists the following output parameters and values
for the stored procedure that will map to the output of the service, including the
OUT or INOUT parameters:
Field Description/Action
Output Field Type The output parameter Java data type. For a list of
JDBC to Java data type mappings, see “JDBC Data
Type to Java Data Type Mappings” on page 218.
9. The boom table on the Call tab lists the following output parameters and values for
the stored procedure that will map to the output of the service, including the OUT or
INOUT parameters:
Field Description/Action
Output Field Type The output parameter Java data type. For a list of JDBC
to Java data type mappings, see “JDBC Data Type to
Java Data Type Mappings” on page 218.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 141
M
Even Header
Adapter Services
Field Description/Action
10. Specify the query time out value of the StoredProcedureWithSignature service you
are configuring in the following field:
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 142
M
Odd Header
Adapter Services
Field Description/Action
11. If the procedure returns a result set, select the ResultSet tab to specify result set
parameters using the fields in the following table.
StoredProcedureWithSignature services can support multiple results sets. The result
set can contain nested cursors.
Note: When using the result set that contains nested cursors, the performance of
Adapter for JDBC could degrade. Since the nested cursors are recursively
processed, Adapter for JDBC may also return data that may not be
required.
Note: While all the tables in the Call tab will be updated automatically if the
selected stored procedure changes, the ResultSet tab information is not
updated automatically. To update this information, you must manually
update the fields in the ResultSet tab.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 143
M
Even Header
Adapter Services
Field Description/Action
Result Set Index An index is automatically assigned to each result set. The
first row default value is 1.
Result Set Name The name of the result set you want to create.
Output Type The Java data type of the result column. For a list of JDBC
to Java data type mappings, see “JDBC Data Type to Java
Data Type Mappings” on page 218.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 144
M
Odd Header
Adapter Services
5. From the list of available templates, select the ExecuteService template and click
Finish.
The adapter service editor for the adapter service appears. You can select the Adapter
Settings tab at any time to confirm the adapter service properties such as the Adapter
Name, Adapter Connection Name, and Adapter Service Template, as necessary.
6. Select the Service to Invoke tab to specify the Java or the flow service name that needs
the connection:
Field Description/Action
Service The Java or the flow service name that requires a connection
Name from the connection pool. If you specify an incorrect service
name, an exception is thrown at run time.
For information about seing the package dependencies, see the Designer Service
Development online help for your release. See “About this Guide” for specific
document titles.
Do not use the forbidden methods like close(), setAutoCommit(), and commit()
in the service code. Doing so causes the adapter to throw an exception at run time.
When using the ExecuteService in transactions, it is important for the WmART
package to be aware about any exceptions generated in the service within the
transaction SEQUENCE block. Only then will a roll back of the transaction happen.
You can do this by throwing a ServiceException from the service. You can use the
following sample code in the service code to do so.
java.sql.Connection conn =
(java.sql.Connection)IDataUtil.get(pipeline.getCursor(),
com.wm.adapter.wmjdbc.services.ExecuteService.PIPELINE_CONNECTION);
try
{
java.sql.PreparedStatement pstmt=conn.prepareStatement("insert into Person
values(1,'Chris')");
pstmt.execute();
}
catch(Throwable e)
{
e.printStackTrace();
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 145
M
Even Header
Adapter Services
Parameter Description
Note: The database schema of the overridden connection must be the same as
that of the default connection. For more information, see “Dynamically
Changing a Service's Connection at Run Time” on page 95.
Parameter Description
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 146
M
Odd Header
Adapter Services
Note: If you do not provide the user credentials here, the user credentials
specified when the connection was configured are used. For more
information, see “Dynamically Changing the User Credentials of a
Service's Connection at Run Time” on page 96.
Note: You can override either the connection or the user credentials at
run time. If you provide both, the connection name and the user
credentials, the connection name takes precedence and the service is
invoked using the overridden connection.
5. If you defined any other input fields, you will be prompted to type their input
values. Type the values for each input field and then click OK.
6. Click the Service Result tab to view the output from the service.
To view a service
1. In Designer, expand the package and folder that contain the service you want to
view.
2. Double-click the service you want to view.
Designer displays the configured service in the service template's Adapter Service
Editor.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 147
M
Even Header
Adapter Services
If you are using the local service development feature, from the Team menu in
Designer, select the appropriate option to check out the service. The options
available in the Team menu depend on the VCS client that you use.
4. Modify the values for the adapter service's parameters as needed. For detailed
descriptions of the service's parameters, see the section on configuring a service for
the specific type of service you want to edit.
5. After you complete your modifications, save the service and do one of the following:
If you have the VCS Integration feature enabled, right-click the service and select
Check In. Enter a check-in comment and click OK.
If you do not have the VCS Integration feature enabled, right-click the service
and select Unlock.
If you are using the local service development feature, from the Team menu
in Designer, select the appropriate option to check in the service. The options
available in the Team menu depend on the VCS client that you use.
6. Save the service.
To delete a service
1. In Designer, expand the package and folder that contain the service you want to
delete.
2. Right-click the adapter service and click Delete.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 148
M
Odd Header
Adapter Services
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 149
M
Even Header
Adapter Services
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 150
M
Odd Header
Adapter Notifications
6 Adapter Notifications
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 151
M
Even Header
Adapter Notifications
Overview
This chapter describes how to configure and manage Adapter for JDBC notifications.
For detailed descriptions of the available Adapter for JDBC notifications, see “Adapter
Notifications” on page 29.
Note: Integration Server provides a built-in service you can use at design time
to change the connection associated with a polling notification. For more
information, see “Changing the Connection Associated with an Adapter
Service or Notification at Design Time” on page 26.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 152
M
Odd Header
Adapter Notifications
For more information about managing packages for the adapter, see “Package
Management” on page 65.
10. You must schedule a notification and then enable it before you can use the
notification. For instructions, see “Managing Polling Notifications” on page 191.
11. If you want to enable the same polling notification on multiple Integration Server
instances connecting to the same source database to achieve automated failover,
you have to use the polling notification within an Integration Server cluster.
For information how to configure clustered polling notifications, see “Polling
Notification Support in Integration Server Clusters” on page 71.
Configuring InsertNotifications
An InsertNotification publishes notification of insert operations on a database table. For
more information about notifications, see “Adapter Notifications” on page 29.
Creating an InsertNotification
You configure notifications using Designer.
Be sure to review the sections “Before Configuring or Managing Notifications” on
page 152 and “Considerations when Configuring InsertNotifications” on page 153
before you configure InsertNotifications.
To create an InsertNotification
1. In Designer, right-click the package in which the notification should be contained
and select New > Adapter Notification.
2. Select the parent namespace, type a name for the adapter notification, and click Next.
3. Select Adapter for JDBC as the adapter type and click Next.
4. Select the InsertNotificaton template and click Next.
5. Select the appropriate Adapter Connection Name and click Next.
The name of the publishable document associated with this notification is displayed.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 153
M
Even Header
Adapter Notifications
6. Click Finish.
For more information about adapter notifications and publishable documents, see
“Adapter Notifications” on page 29. For more details about the Integration Server
publishable documents, see the Integration Server publish-subscribe developer’s
guide for your release. See “About this Guide” for specific document titles.
7. Designer creates the notification, and the editor for the adapter notification appears.
a. You can select the Adapter Settings tab at any time to confirm adapter notification
properties such as the Adapter Name, Adapter Connection Name, and Adapter
Notification Template, as necessary.
b. In the Publish Document section, you can specify how you want the notification
document to be published:
To publish documents to webMethods Broker, select webMethods Broker/Local.
This is the default option.
To publish documents to a JMS provider, select JMS Provider, and provide
values for the following input fields:
Field Description/Action
Destination name The name of the destination from which you want
the JMS trigger to receive messages.
The information from the Permissions tab appears in the Properties panel.
8. Select the Notification Configure tab and use the following fields:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 154
M
Odd Header
Adapter Notifications
Field Description/Action
Base Name The base name used to generate the Resource Name created
by Adapter for JDBC.
Note: For OS/390 DB2 7.2, the Base Name you create below
must be no more than five characters because triggers
on OS/390 name cannot be more than eight characters.
Resource Type Types are buffer table, trigger, and sequence. The base name
and resource type determine the following Resource Name.
File Record The format of the file record. Optional field used by DB2 for
Format AS/400 V4R5 only.
Database Name The name of the database where the buffer tables will be
created. Optional field used by DB2 for OS/390 only.
Table Space The table space where the buffer tables will be created.
Name Optional field used by DB2 for OS/390 only.
Note: For AS/400 DB2 V4R5 using a jt400.jar file, the table name for the
notification cannot exceed 10 characters; otherwise, an exception will be
generated when you try to enable the notification.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 155
M
Even Header
Adapter Notifications
Field Description/Action
Table The table alias is automatically assigned when you select more
Alias than one table in the Table Name field. The default is t1.
Table Select a table name. The default for the associated catalog name
Name is current catalog. The default for the associated schema name
is current schema. The table name must not contain a period.
If the table name does contain a period, Designer will throw an
error.
Type The table type displays automatically based on the table you
select.
10. If you are not joining tables, skip this step. Select the Joins tab to specify the columns
for joining the tables you just configured.
a. Select the icon to create new left and right columns.
b. Select Left Column and select the first table's joining column.
c. Select the appropriate Operator.
d. Select Right Column and select the next table's joining column.
e. Repeat until you have defined all the joins.
11. Use the SELECT tab to define the columns and fields to be selected using the
following fields:
Note: When using the Join clause, select only the fields of the monitor table in the
Select tab.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 156
M
Odd Header
Adapter Notifications
Field Description/Action
Column Type The column data type defined in the database table.
Output Field The data type of the output field. Adapter for JDBC
Type automatically converts database-specific types to Java
data types. For a list of JDBC type to Java type mappings,
see “JDBC Data Type to Java Data Type Mappings” on
page 218.
Output Field The name of the field containing the output from the
SELECT operation. An output field name displays when
you select an expression. You can also modify the output
field names as required.
Query Time Specify the query time out value in seconds. This
Out value is the amount of time Adapter for JDBC waits
for the notification to execute before stopping the SQL
operation. The default value is -1. Use the default
value to have the notification use the value indicated
on the wa.adapter.JDBC.QueryTimeout property as
the time out. If you specify a value equal to 0, or if the
wa.adapter.JDBC.QueryTimeout property is not set, the
notification executes without a time out. If you specify
a value greater than 0, the notification executes with the
specified value as the time out.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 157
M
Even Header
Adapter Notifications
12. Use the WHEN tab to specify the conditions for selecting information using the
following fields.
Note: If you use Microsoft SQL Server, Sybase, or V4 AS/400 DB2, do not use
the WHEN tab because this feature is not supported. An exception will be
generated if you try to use this tab.
Configuring UpdateNotifications
An UpdateNotification publishes notification of update operations on a database table.
For more information about notifications, see “Adapter Notifications” on page 29.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 158
M
Odd Header
Adapter Notifications
Creating an UpdateNotification
You configure notifications using Designer.
Be sure to review the sections “Before Configuring or Managing Notifications”
on page 152 and “Considerations when Configuring UpdateNotifications” on
page 158 before you configure an UpdateNotification.
To create an UpdateNotification
1. In Designer, right-click the package in which the notification should be contained
and select New > Adapter Notification.
2. Select the parent namespace, type a name for the adapter notification, and click Next.
3. Select Adapter for JDBC as the adapter type and click Next.
4. Select the UpdateNotificaton template and click Next.
5. Select the appropriate Adapter Connection Name and click Next.
The name of the publishable document associated with this notification is displayed.
6. Click Finish.
For more information about adapter notifications and publishable documents, see
“Adapter Notifications” on page 29. For more details about the Integration Server
publishable documents, see the Integration Server publish-subscribe developer’s
guide for your release. See “About this Guide” for specific document titles.
7. Designer creates the notification, and the editor for the adapter notification appears.
a. You can select the Adapter Settings tab at any time to confirm adapter notification
properties such as the Adapter Name, Adapter Connection Name, and Adapter
Notification Template, as necessary.
b. In the Publish Document section, you can specify how you want the notification
document to be published:
To publish documents to Broker, select webMethods Broker/Local. This is the
default option.
To publish documents to a JMS provider, select JMS Provider, and provide
values for the following input fields:
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 159
M
Even Header
Adapter Notifications
Field Description/Action
watt.art.notification.jmsSend.usePublicService and set it to
true.
Destination name The name of the destination from which you want
the JMS trigger to receive messages.
8. Select the Notification Configure tab and use the following fields:
Field Description/Action
Base Name The base name used to generate the Resource Name created
by Adapter for JDBC.
Note: For OS/390 DB2V7.2, the Base Name you create below
must be no more than five characters because triggers
on OS/390 name cannot be more than eight characters.
Resource Type Types are buffer table, trigger, and sequence. The base name
and resource type determine the following Resource Name.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 160
M
Odd Header
Adapter Notifications
Field Description/Action
File Record The format of the file record. Optional field used by DB2 for
Format AS/400 V4R5 only.
Database Name The name of the database where the buffer tables will be
created. Optional field used by DB2 for OS/390 only.
Table Space The table space where the buffer tables will be created.
Name Optional field used by DB2 for OS/390 only.
Note: For AS/400 DB2 V4R5 using a jt400.jar file, the table name for the
notification cannot exceed 10 characters; otherwise, an exception will be
generated when you try to enable the notification.
Field Description/Action
Table The table alias is automatically assigned when you select more
Alias than one table in the Table Name field. The default is t1.
Table Select a table. The default for the associated catalog name is
Name current catalog. The default for the associated schema name is
current schema. The table name must not contain a period. If the
table name does contain a period, Designer will throw an error.
Type The table type displays automatically based on the table you
select.
10. If you are not joining tables, skip this step. Select the Joins tab to specify the columns
for joining the tables you just configured.
a. Select the icon to create new left and right columns.
b. Select Left Column and select the first table's joining column.
c. Select the appropriate Operator.
d. Select Right Column and select the next table's joining column.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 161
M
Even Header
Adapter Notifications
Note: When using the Join clause, select only the fields of the monitor table in the
Select tab.
Field Description/Action
Column Type The column data type defined in the database table.
Output Field The data type of the output field. Adapter for JDBC
Type automatically converts database-specific types to Java
data types. For a list of JDBC type to Java type mappings,
see “JDBC Data Type to Java Data Type Mappings” on
page 218.
Output Field The name of the field containing the output from the
SELECT operation. An output field name displays when you
select an expression. You can also modify the output field
names as required.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 162
M
Odd Header
Adapter Notifications
Field Description/Action
MyLocation. You want a notification only if the MyLocation
output field is updated. In this case, you would select Yes
for the MyLocation output field, and select No for the MyName
and MyNumber output fields.
Output Value Specifies which output value to retrieve from the database
Type table. By default, the UpdateNotification retrieves the new
value from the database table. Select either of the following
output value types:
Old: Retrieves the old value from the database table
New: Retrieves the new value from the database table
To retrieve both the old and the new values, create two rows
and then select an Output Value Type as Old in one row and
an Output Value Type as New in the other row. While doing so,
ensure that the Output Field is unique for both the old and the
new values.
Maximum Row Specifies the number of rows to be retrieved from the buffer
table. This field is useful when you are working with a large
number of records and you want to limit the number of
documents sent each time the notification polls. Use a value
of 0 to indicate no limit on the number of rows retrieved.
Query Time Specify the query time out value in seconds. This value is the
Out amount of time Adapter for JDBC waits for the notification
to execute before stopping the SQL operation. The default
value is -1. Use the default value to have the notification use
the value indicated on the wa.adapter.JDBC.QueryTimeout
property as the time out. If you specify a value equal to 0, or
if the wa.adapter.JDBC.QueryTimeout property is not set,
the notification executes without a time out. If you specify
a value greater than 0, the notification executes with the
specified value as the time out.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 163
M
Even Header
Adapter Notifications
Field Description/Action
Timeout During Long-Running SQL Operations in Services
and Notifications” on page 56.
12. Use the WHEN tab to specify the conditions for selecting information:
Note: If you use Microsoft SQL Server, Sybase, or V4 AS/400 DB2, do not use
the WHEN tab because this feature is not supported. An exception will be
generated if you try to use this tab.
Configuring DeleteNotifications
A DeleteNotification publishes notification of delete operations on a database table. For
more information about notifications, see “Adapter Notifications” on page 29.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 164
M
Odd Header
Adapter Notifications
Creating a DeleteNotification
You configure notifications using Designer.
Be sure to review the sections “Before Configuring or Managing Notifications” on
page 152 and “Considerations when Configuring DeleteNotifications” on page 164
before you configure DeleteNotifications.
To create a DeleteNotification
1. In Designer, right-click the package in which the notification should be contained
and select New > Adapter Notification.
2. Select the parent namespace, type a name for the adapter notification, and click Next.
3. Select Adapter for JDBC as the adapter type and click Next.
4. Select the DeleteNotificaton template and click Next.
5. Select the appropriate Adapter Connection Name and click Next.
The name of the publishable document associated with this notification is displayed.
6. Click Finish.
For more information about adapter notifications and publishable documents, see
“Adapter Notifications” on page 29. For more details about the Integration Server
publishable documents, see the Integration Server publish-subscribe developer’s
guide for your release. See “About this Guide” for specific document titles.
7. Designer creates the notification, and the editor for the adapter notification appears.
a. You can select the Adapter Settings tab at any time to confirm adapter notification
properties such as the Adapter Name, Adapter Connection Name, and Adapter
Notification Template, as necessary.
b. In the Publish Document section, you can specify how you want the notification
document to be published:
To publish documents to Broker, select webMethods Broker/Local. This is the
default option.
To publish documents to a JMS provider, select JMS Provider, and provide
values for the following input fields:
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 165
M
Even Header
Adapter Notifications
Field Description/Action
policy, you must add the wa property
watt.art.notification.jmsSend.usePublicService and set it to
true.
Destination name The name of the destination from which you want
the JMS trigger to receive messages.
The information from the Permissions tab appears in the Properties panel.
8. Select the Notification Configure tab and use the following fields:
Field Description/Action
Base Name The base name used to generate the Resource Name created by
Adapter for JDBC.
Note: For OS/390 DB2V7.2, the Base Name you create below
must be no more than 5 characters because triggers on
OS/390 name cannot be more than 8 characters.
Resource Types are buffer table, trigger, and sequence. The base name
Type and resource type determine the following Resource Name.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 166
M
Odd Header
Adapter Notifications
Field Description/Action
Resource type prefix (WMB, WMT, and WMS for buffer table,
trigger, and sequence respectively)
The name you typed in the Base Name field
A suffix, based on a system timestamp
File Record The format of the file record. Optional field used by DB2 for
Format AS/400 V4R5 only.
Database The name of the database where the buffer tables will be
Name created. Optional field used by DB2 for OS/390 only.
Table Space The table space where the buffer tables will be created.
Name Optional field used by DB2 for OS/390 only.
Note: For AS/400 DB2 V4R5 using a jt400.jar file, the table name for the
notification cannot exceed 10 characters; otherwise, an exception will be
generated when you try to enable the notification.
Field Description/Action
Table The table alias is automatically assigned when you select more
Alias than one table in the Table Name field. The default is t1.
Table Select a table name. The default for the associated catalog name is
Name current catalog. The default for the associated schema name is
current schema. The table name cannot contain a period. If the
table name does contain a period, Designer will throw an error.
Type The table type displays automatically based on the table you
select.
10. If you are not joining tables, skip this step. Select the Joins tab to specify the columns
for joining the tables you just configured.
a. Select the icon to create new left and right columns.
b. Select Left Column and select the first table's joining column.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 167
M
Even Header
Adapter Notifications
Note: When using the Join clause, select only the fields of the monitor table in the
Select tab.
Field Description/Action
Column Type The column data type defined in the database table.
Output Field The data type of the output field. Adapter for JDBC
Type automatically converts database-specific types to Java
data types. For a list of JDBC type to Java type mappings,
see “JDBC Data Type to Java Data Type Mappings” on
page 218.
Output Field The name of the field containing the output from the
select operation. An output field name displays when
you select an expression. You can also modify the output
field names as required.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 168
M
Odd Header
Adapter Notifications
Field Description/Action
Query Time Out Specify the query time out value in seconds. This
value is the amount of time Adapter for JDBC waits
for the notification to execute before stopping the SQL
operation. The default value is -1. Use the default
value to have the notification use the value indicated
on the wa.adapter.JDBC.QueryTimeout property as
the time out. If you specify a value equal to 0, or if the
wa.adapter.JDBC.QueryTimeout property is not set, the
notification executes without a time out. If you specify
a value greater than 0, the notification executes with the
specified value as the time out.
12. Use the WHEN tab to specify the conditions for selecting information:
Note: If you use Microsoft SQL Server, Sybase, or V4 AS/400 DB2, do not use
the WHEN tab because this feature is not supported. An exception will be
generated if you try to use this tab.
a. Select the Insert Row icon to define new WHEN clause fields.
b. Select the Column field and choose a column from the list.
c. Select a logical operator from the AND/OR field, an Operator, and separators (the
left and right parentheses) as needed.
d. Type a fixed value in the Value field. Be sure that it is a valid value, or an
exception will be generated at run time.
e. If necessary, use the or icons to change the order of the WHEN clause to
ensure the parameters are parsed in the correct order.
f. Repeat until you have specified all WHEN parameters.
13. The information about using the Permissions tab to assign an access control list (ACL)
to an element appears in the Properties panel.
14. From the File menu, select Save.
15. You must schedule and enable the notification using Integration Server
Administrator before you can use it. For details, see “Managing Polling
Notifications” on page 191.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 169
M
Even Header
Adapter Notifications
Configuring BasicNotifications
A BasicNotification polls a database table for data using a SQL Select operation. You
configure notifications using Designer. For more information about notifications, see
“Adapter Notifications” on page 29.
Be sure to review the section “Before Configuring or Managing Notifications” on
page 152 before you configure notifications.
To configure a BasicNotification
1. In Designer, right-click the package in which the notification should be contained
and select New > Adapter Notification.
2. Select the parent namespace, type a name for the adapter notification, and click Next.
3. Select Adapter for JDBC as the adapter type and click Next.
4. Select the BasicNotificaton template and click Next.
5. Select the appropriate Adapter Connection Name and click Next.
The name of the publishable document associated with this notification is displayed.
6. Click Finish.
For more information about adapter notifications and publishable documents, see
“Adapter Notifications” on page 29. For more details about the Integration Server
publishable documents, see the Integration Server publish-subscribe developer’s
guide for your release. See “About this Guide” for specific document titles.
7. Designer creates the notification, and the editor for the adapter notification appears.
a. You can select the Adapter Settings tab at any time to confirm adapter notification
properties such as the Adapter Name, Adapter Connection Name, and Adapter
Notification Template, as necessary.
b. In the Publish Document section, you can specify how you want the notification
document to be published:
To publish documents to Broker, select webMethods Broker/Local. This is the
default option.
To publish documents to a JMS provider, select JMS Provider, and provide
values for the following input fields:
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 170
M
Odd Header
Adapter Notifications
Field Description/Action
policy, you must add the wa property
watt.art.notification.jmsSend.usePublicService and set it to
true.
Destination name The name of the destination from which you want
the JMS trigger to receive messages.
The information from the Permissions tab appears in the Properties panel.
8. Select the Tables tab and use the following fields:
Note: For AS/400 DB2 V4R5 using a jt400.jar file, the table name for the
notification cannot exceed 10 characters; otherwise, an exception will be
generated when you try to enable the notification.
Field Description/Action
Table The table alias is automatically assigned when you select more
Alias than one table in the Table Name field. The default is t1.
Table Select a table name. The default for the associated catalog name is
Name current catalog. The default for the associated schema name is
current schema. The table name must not contain a period. If the
table name does contain a period, Designer will throw an error.
Type The table type displays automatically based on the table you
select.
9. If you are not joining tables, skip this step. Select the Joins tab to specify the columns
for joining the tables you just configured.
a. Select the icon (or the icon to fill in all rows of the table) to create new left
and right columns.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 171
M
Even Header
Adapter Notifications
b. Select Left Column and select the first table's joining column.
c. Select the appropriate Operator.
d. Select Right Column and select the next table's joining column.
e. Repeat until you have defined all the joins.
10. Use the SELECT tab to define the columns and fields to be selected.
a. In the ALL/DISTINCT field, select ALL to include duplicate rows or DISTINCT to
suppress duplicate rows. Selecting ALL corresponds to the SQL statement SELECT
ALL name from tablename. The default value is blank, which corresponds to
the SQL statement SELECT name from tablename.
b. Select the icon (or the icon to fill in all rows of the table) to create new
fields as needed.
c. In the Expression field, select a column or type any valid SQL expression. The
corresponding Column Type, JDBC Type, Output Field Type, and Output Field display
for each column you select in the Expression field. Use the following fields:
Field Description/Action
Column Type The column data type defined in the database table.
Output Field The data type of the output field. Adapter for JDBC
Type automatically converts database-specific types to
Java data types. For a list of JDBC type to Java type
mappings, see “JDBC Data Type to Java Data Type
Mappings” on page 218.
Output Field The name of the field containing the output from the
SELECT operation. An output field name displays when
you select an expression. You can also modify the output
field names as required.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 172
M
Odd Header
Adapter Notifications
g. You must use the Record ID Column field to use the Exactly Once notification
feature. Select the column from the buffer table that you want to use as
the unique ID for the publishable document for this notification. For more
information, see “Using the Exactly Once Notification Feature” on page 193.
To ensure that all values will be unique, choose a table column in the Record ID
Column field whose values are sequential numbers.
h. Use the Mark ID Column field to mark the records as processed. Select the column
that you created in the database table to hold the status of the record. Use this
option when you do not want to set the Delete selected records flag, and also want
to avoid the publishing of duplicate records. For information about creating
the column that holds the status of the records and marking the records as
published, see “Basic Notifications” on page 36.
i. Use the Maximum Row field to specify the maximum number of records to retrieve
from the database. This field is useful when you are working with a large
number of records and you want to limit the number of documents sent each
time the notification polls.
The default value of 0 (no limit) retrieves all records.
j. Use the Query Time Out field to specify the query time out value of the
BasicNotification you are configuring. This value is the amount of time Adapter
for JDBC waits for the notification to execute before stopping the SQL operation.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 173
M
Even Header
Adapter Notifications
The default value is -1. Use the default value to have the notification use the
value indicated on the watt.adapter.JDBC.QueryTimeout property as the time
out.
If you specify a value equal to 0, or if the watt.adapter.JDBC.QueryTimeout
property is not set, the notification executes without a time out.
If you specify a value greater than 0, the notification executes with the specified
value as the time out.
Field Description/Action
Column The name of the column you want to use in the WHERE clause.
Operator The operator used with the Column and Input Field.
Input Type a fixed value in this field. Be sure that it is a valid value,
Field or an exception will be generated at run time.
Note: For Oracle users, if you use a CHAR(n) data type and enter a
value in the Input Field, Adapter for JDBC automatically sets the
ORACLEFIXED_CHAR data type as the JDBC data type.
c. If necessary, use the or icons to change the order of the WHERE clause to
ensure the parameters are parsed in the correct order.
d. Repeat this procedure until you have specified all the WHERE parameters.
12. The information about using the Permissions tab to assign an access control list (ACL)
to an element appears in the Properties panel.
13. From the File menu, select Save.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 174
M
Odd Header
Adapter Notifications
14. You must schedule and enable the notification using Integration Server
Administrator before you can use it. For details, see “Managing Polling
Notifications” on page 191 for details.
Configuring StoredProcedureNotifications
A StoredProcedureNotification publishes notification data by calling a stored procedure
inside of a database. You configure notifications using Designer. For more information
about notifications, see “Adapter Notifications” on page 29.
Be sure to review the section “Before Configuring or Managing Notifications” on
page 152 before you configure notifications.
For details and important considerations when using a StoredProcedureNotification, see
“Stored Procedure Notifications” on page 40.
To configure a StoredProcedureNotification
1. In Designer, right-click the package in which the notification should be contained
and select New > Adapter Notification.
2. Select the parent namespace, type a name for the adapter notification, and click Next.
3. Select Adapter for JDBC as the adapter type and click Next.
4. Select the StoredProcedureNotificaton template and click Next.
5. Select the appropriate Adapter Connection Name and click Next.
The name of the publishable document associated with this notification is displayed.
6. Click Finish.
For more information about adapter notifications and publishable documents, see
“Adapter Notifications” on page 29. For more details about the Integration Server
publishable documents, see the Integration Server publish-subscribe developer’s
guide for your release. See “About this Guide” for specific document titles.
7. Designer creates the notification, and the editor for the adapter notification appears.
a. You can select the Adapter Settings tab at any time to confirm adapter notification
properties such as the Adapter Name, Adapter Connection Name, and Adapter
Notification Template, as necessary.
b. In the Publish Document section, you can specify how you want the notification
document to be published:
To publish documents to Broker, select webMethods Broker/Local. This is the
default option.
To publish documents to a JMS provider, select JMS Provider, and provide
values for the following input fields:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 175
M
Even Header
Adapter Notifications
Field Description/Action
Destination name The name of the destination from which you want
the JMS trigger to receive messages.
The information from the Permissions tab appears in the Properties panel.
8. Select the Call tab to specify which stored procedure to use with the notification. Use
the icon and set the Call parameters as follows:
Field Description/Action
Catalog Name The name of the catalog. The default for the catalog name is
current catalog.
Schema Name The name of the schema. The default for the schema name is
current schema.
Enable To type in the Procedure Name, set this field to False.To select
Procedure the Procedure Name from a list, set this field to True. The
Lookup default is False. Set this value to False if you know the
(Optional) name of the procedure and you are working with a large
database that has a long list of procedures.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 176
M
Odd Header
Adapter Notifications
Field Description/Action
Integration Server, the publishable document is published to
the Broker; otherwise the publishable document is published
to the local Integration Server. Selecting the Publish Locally
option reduces performance problems, if Integration Server
is connecting to a remotely located Broker that is in turn
triggering a service on the local Integration Server.
JDBC Type The JDBC type of the corresponding Return Field Name.
Query Time Specify the query time out value in seconds. This value is the
Out amount of time Adapter for JDBC waits for the notification
to execute before stopping the SQL operation. The default
value is -1. Use the default value to have the notification use
the value indicated on the wa.adapter.JDBC.QueryTimeout
property as the time out. If you specify a value equal to 0, or
if the wa.adapter.JDBC.QueryTimeout property is not set,
the notification executes without a time out. If you specify
a value greater than 0, the notification executes with the
specified value as the time out.
9. Use the Parameter tab to specify stored procedure parameters. Use the icon (or
the icon to fill in all rows of the table) to create new parameters for the stored
procedure.
Field Description/Action
ParamJDBCType The JDBC type of the stored procedure parameter. For a list
of JDBC type to Java type mappings, see “JDBC Data Type to
Java Data Type Mappings” on page 218.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 177
M
Even Header
Adapter Notifications
Field Description/Action
Output Type Output parameter Java type. For a list of JDBC type to Java
type mappings, see “JDBC Data Type to Java Data Type
Mappings” on page 218.
10. StoredProcedure notifications can support one result set (or one Oracle REF
CURSOR). The result set can contain nested cursors.
Note: When using the result set that contains nested cursors, the performance of
Adapter for JDBC could degrade. Since the nested cursors are recursively
processed, Adapter for JDBC may also return data that may not be
required.
If the procedure returns a result set, select the ResultSet tab to specify result set
parameters using the fields in the following table:
Field Description/Action
Result Set Type the name of the result set you want to create. For
Name information about result sets, see “Stored Procedure
Notifications” on page 40.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 178
M
Odd Header
Adapter Notifications
Field Description/Action
Output Type The Java type of the result column. For a list of JDBC type to
Java type mappings, see “JDBC Data Type to Java Data Type
Mappings” on page 218.
11. The information about using the Permissions tab to assign an access control list (ACL)
to an element appears in the Properties panel.
12. From the File menu, select Save.
13. You must schedule and enable the notification using Integration Server
Administrator before you can use it. For details, see “Managing Polling
Notifications” on page 191.
Configuring StoredProcedureNotificationWithSignature
A StoredProcedureNotificationWithSignature publishes notification data by calling
a stored procedure inside of a database. Unlike a StoredProcedureNotification, the
StoredProcedureNotificationWithSignature enables you to automatically obtain a
stored procedure's parameters by introspecting and listing the signature of the stored
procedure at the time you configure this notification. This means that you do not need to
look up and retype these parameters manually.
You configure Adapter for JDBC notifications using Designer. For more information
about adapter notifications, including what you need to know before you configure and
manage them, see the “Before Configuring or Managing Notifications” on page 152.
To configure a StoredProcedureNotificationWithSignature
1. In Designer, right-click the package in which the notification should be contained
and select New > Adapter Notification.
2. Select the parent namespace, type a name for the adapter notification, and click Next.
3. Select Adapter for JDBC as the adapter type and click Next.
4. Select the StoredProcedureNotificationWithSignature template and click Next.
5. Select the appropriate Adapter Connection Name and click Next.
The name of the publishable document associated with this notification is displayed.
6. Click Finish.
For more information about adapter notifications and publishable documents, see
“Adapter Notifications” on page 29. For more details about the Integration Server
publishable documents, see the Integration Server publish-subscribe developer’s
guide for your release. See “About this Guide” for specific document titles.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 179
M
Even Header
Adapter Notifications
7. Designer creates the notification, and the editor for the adapter notification appears.
a. You can select the Adapter Settings tab at any time to confirm adapter notification
properties such as the Adapter Name, Adapter Connection Name, and Adapter
Notification Template, as necessary.
b. In the Publish Document section, you can specify how you want the notification
document to be published:
To publish documents to Broker, select webMethods Broker/Local. This is the
default option.
To publish documents to a JMS provider, select JMS Provider, and provide
values for the following input fields:
Field Description/Action
Destination name The name of the destination from which you want
the JMS trigger to receive messages.
The information from the Permissions tab appears in the Properties panel.
8. Select the Call tab to specify the stored procedure to call. Provide values for the
following call parameters:
Field Description/Action
Catalog The name of the catalog. The default for the catalog name is
Name current catalog.
Schema The name of the schema. The default for the schema name is
Name current schema.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 180
M
Odd Header
Adapter Notifications
Field Description/Action
Procedure To save time, you can type all or part of the procedure name in
Name this field to narrow your search. This is helpful when dealing
Pattern with a large database that has a long list of procedures. Use %
as a multi-character wildcard and _ (underscore) as a single
character wildcard.
9. Based on the signature for the stored procedure you specified, the following fields
and values will appear in the top table on the Call tab:
Field Description/Action
JDBC Type The JDBC data type of the stored procedure parameter.
Expression* Sets the input for the IN or INOUT parameter types only. The
RETURN or OUT parameters will appear automatically on the
Call tab's boom table. For a list of the allowable expression
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 181
M
Even Header
Adapter Notifications
Field Description/Action
seings by parameter type, and how each parameter will map
to the input or output fields, see the following table.
10. The boom table on the Call tab lists the following output parameters and values
for the stored procedure that will map to the output of the notification's publishable
document and returns the value of OUT or INOUT parameters:
Field Description/Action
Output Field The output parameter Java data type. For a list of JDBC to
Type Java data type mappings, see “JDBC Data Type to Java Data
Type Mappings” on page 218.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 182
M
Odd Header
Adapter Notifications
Field Description/Action
Query Time The query time out value in seconds. This value is the amount
Out of time Adapter for JDBC waits for the notification to execute
before stopping the SQL operation. The default value is -1.
Use the default value to have the notification use the value
indicated on the wa.adapter.JDBC.QueryTimeout property
as the time out. If you specify a value equal to 0, or if the
wa.adapter.JDBC.QueryTimeout property is not set, the
notification executes without a time out. If you specify a value
greater than 0, the notification executes with the specified
value as the time out.
12. If the procedure returns a result set, select the ResultSet tab to specify result set
parameters using the fields in the following table.
This type of notification can support multiple results sets. Use the icon to create
additional result sets as needed.
Note: While all the tables in the Call tab are updated automatically if the selected
stored procedure changes, the ResultSet tab information is not updated
automatically. To update this information, you must manually update the
fields in the ResultSet tab.
Field Description/Action
Result Set An index is automatically assigned to each result set. The first
Index row default value is 1.
Result Set The name of the result set you want to create.
Name
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 183
M
Even Header
Adapter Notifications
Field Description/Action
Output Type The Java data type of the result column. For a list of JDBC to
Java data type mappings, see “JDBC Data Type to Java Data
Type Mappings” on page 218.
13. The information about using the Permissions tab to assign an access control list (ACL)
to an element appears in the Properties panel.
14. From the File menu, select Save.
15. You must schedule and enable the notification using Integration Server
Administrator before you can use it. For details, see “Managing Polling
Notifications” on page 191.
Configuring OrderedNotifications
An OrderedNotification publishes notification data for multiple insert, update, or delete
operations on multiple tables. For more information about notifications, see “Adapter
Notifications” on page 29.
With OrderedNotifications, typically you configure an Integration Server trigger to
subscribe to the notification's publishable document and a flow service that the trigger
invokes. Because the primary reason to use OrderedNotifications is to preserve the
order in which the operations occur, be sure to set the Processing Mode option to Serial
on the Settings tab in Designer when you create the trigger and flow service. For more
information about configuring Integration Server triggers and flow services, see the
Designer Service Development online help for your release. See “About this Guide” for
specific document titles.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 184
M
Odd Header
Adapter Notifications
MySQL version 5.0.x does not support multiple triggers with the same event (insert,
delete, or update) for one table. Hence, with a MySQL database, before you can
enable an OrderedNotification for a table, you must disable any OrderedNotification
or other adapter notifications of the same operation type monitoring the table.
Creating an OrderedNotification
You configure notifications using Designer.
Be sure to review the sections “Before Configuring or Managing Notifications”
on page 152 and “Considerations when Configuring OrderedNotifications” on
page 184 before you configure an OrderedNotification.
To create an OrderedNotification
1. In Designer, right-click the package in which the notification should be contained
and select New > Adapter Notification.
2. Select the parent namespace, type a name for the adapter notification, and click Next.
3. Select Adapter for JDBC as the adapter type and click Next.
4. Select the OrderedNotificaton template and click Next.
5. Select the appropriate Adapter Connection Name and click Next.
6. The name of the publishable document associated with this notification displays.
Click Finish.
For more information about adapter notifications and publishable documents, see
“Adapter Notifications” on page 29. For more details about the Integration Server
publishable documents, see the Integration Server publish-subscribe developer’s
guide for your release. See “About this Guide” for specific document titles.
7. Designer creates the notification, and the editor for the adapter notification appears.
a. You can select the Adapter Settings tab at any time to confirm adapter notification
properties such as the Adapter Name, Adapter Connection Name, and Adapter
Notification Template, as necessary.
b. In the Publish Document section, you can specify how you want the notification
document to be published:
To publish documents to Broker, select webMethods Broker/Local. This is the
default option.
To publish documents to a JMS provider, select JMS Provider, and provide
values for the following input fields:
Field Description/Action
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 185
M
Even Header
Adapter Notifications
Field Description/Action
Destination name The name of the destination from which you want
the JMS trigger to receive messages.
The information from the Permissions tab appears in the Properties panel.
8. Select the Notification Configure tab and use the following fields:
Field Description/Action
Base Name The base name used to generate the Resource Name created
by Adapter for JDBC.
Note: For OS/390 DB2V7.2, the Base Name you create below
must be no more than five characters because triggers
on OS/390 name cannot be more than eight characters.
Resource Type Types are buffer table, trigger, and sequence. The base name
and resource type determine the following Resource Name.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 186
M
Odd Header
Adapter Notifications
Field Description/Action
File Record The format of the file record. Optional field used by DB2 for
Format AS/400 V4R5 only.
Database Name The name of the database where the buffer tables will be
created. Optional field used by DB2 for OS/390 only.
Table Space The table space where the buffer tables will be created.
Name Optional field used by DB2 for OS/390 only.
9. Select the Source Tables tab and use the following fields:
Note: For AS/400 DB2 V4R5 using a jt400.jar file, the table name for the
notification cannot exceed 10 characters; otherwise, an exception will be
generated when you try to enable the notification.
Field Description/Action
Table Alias The table alias is automatically assigned when you select more
than one table in the Table Name field. The default is t1.
Table Name Select a table name. The default for the associated catalog name
is current catalog. The default for the associated schema
name is current schema. The table name must not contain a
period. If the table name does contain a period, Designer will
throw an error.
Type The table type displays automatically based on the table you
select.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 187
M
Even Header
Adapter Notifications
Field Description/Action
10. Use the SELECT tab to define the columns and fields to be selected using the
following fields:
a. In the ALL/DISTINCT field, select ALL to include duplicate rows or DISTINCT to
suppress duplicate rows. Selecting ALL corresponds to the SQL statement SELECT
ALL name from tablename. The default value is blank, which corresponds to
the SQL statement SELECT name from tablename.
b. Select the icon (or the icon to fill in all rows of the table) to create new
fields as needed. For each Expression column you select, the corresponding
Operation ID, Column Type, JDBC Type, Output Field Type, and Output Field display.
Use the following fields:
Field Description/Action
Output The data type of the output field. Adapter for JDBC automatically
Field Type converts database-specific types to Java data types. For a list of
JDBC type to Java type mappings, see “JDBC Data Type to Java
Data Type Mappings” on page 218.
Output The name of the field containing the output from the SELECT
Field operation. An output field name displays when you select an
expression. You can also modify the output field names as
required.
Notify On Used for Update operations only. Enable this option to indicate
Update which of the columns specified in the SELECT tab you want
notification if updated. Select:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 188
M
Odd Header
Adapter Notifications
Field Description/Action
Output Used for Update operations only. Specifies which output value
Value to retrieve from the database table. By default, the notification
Type retrieves the new value from the database table. Select either of
the following output value types:
Old: Retrieves the old value from the database table
New: Retrieves the new value from the database table
To retrieve both the old and the new values, you need to create
two rows and then select an Output Value Type as Old in one row
and an Output Value Type as New in the other row. While doing so,
ensure that the Output Field is unique for both the old and the new
values.
Maximum Specifies the number of rows to be retrieved from the buffer table.
Row This field is useful when you are working with a large number of
records and you want to limit the number of documents sent each
time the notification polls. Use a value of 0 to indicate no limit on
the number of rows retrieved.
Query Specify the query time out value in seconds. This value is the
Time Out amount of time Adapter for JDBC waits for the notification
to execute before stopping the SQL operation. The default
value is -1. Use the default value to have the notification use
the value indicated on the wa.adapter.JDBC.QueryTimeout
property as the time out. If you specify a value equal to 0, or if
the wa.adapter.JDBC.QueryTimeout property is not set, the
notification executes without a time out. If you specify a value
greater than 0, the notification executes with the specified value
as the time out.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 189
M
Even Header
Adapter Notifications
Field Description/Action
11. Use the WHEN tab to specify the conditions for selecting information using the
following table.
Note: If you use Microsoft SQL Server or Sybase, do not use the WHEN tab
because this feature is not supported. An exception will be generated if
you try to use this tab.
Note: While enabling the Ordered Notification that monitors a Sybase database,
if you encounter an error that indicates data definition commands are not
allowed in transactions, then you need to run the following command in
your Sybase database: sp_dboption database_name,"ddl in tran",
true.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 190
M
Odd Header
Adapter Notifications
Note: You must have Integration Server Administrator privileges to access Adapter
for JDBC's administrative screens. For information about seing user
privileges, see the Integration Server administration guide for your release.
See “About this Guide” for specific document titles.
Note: For AS/400 DB2 V4R5 using a jt400.jar file, the table name for the
notification cannot exceed 10 characters. If the table name exceeds 10
characters, an exception will be generated when you try to enable the
notification.
Field Description/Action
State After you schedule a polling notification, you can use this
option's dropdown list to set the polling notification's state:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 191
M
Even Header
Adapter Notifications
Field Description/Action
View Schedule Click on the View Schedule icon to review the parameters for
the selected polling notification. Click Return toAdapter for
JDBCNotifications to go back to the main polling notification
page.
5. To create or modify schedule parameters for the selected adapter notification, click
on the icon and use the following fields:
Field Description/Action
Overlap Note: Do not use this option; otherwise, when you enable this
notification, it may lock up tables and cause Integration
Server to fail.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 192
M
Odd Header
Adapter Notifications
7. After you create a polling notification, you can enable it. Use the State field to enable
a polling notification.
Note: Stored Procedure Notifications do not support the Exactly Once notification
feature because they do not use publishable document unique IDs.
Note: A given notification can only run on one Integration Server at a time.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 193
M
Even Header
Adapter Notifications
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 194
M
Odd Header
Adapter Notifications
For more information about exporting packages, see the Integration Server
administration guide for your release. See “About this Guide” for specific document
titles.
Viewing Notifications
You use Designer to view notifications.
To view a notification
1. In Designer, expand the package and folder that contain the notification you want to
view.
2. Double-click the notification you want to view.
Designer displays the notification in the notification template's Adapter Notification
Editor.
Editing Notifications
You use Designer to edit notifications. You may be able to change
the connection associated with an adapter using the built-in service
pub.art.notification:setPollingNotificationNodeConnection. For more information, see “Changing
the Connection Associated with an Adapter Service or Notification at Design Time” on
page 26.
To edit a notification
1. In Designer, expand the package and folder that contain the notification you want to
edit.
2. Select the notification you want to edit.
Designer displays the notification in the notification template's Adapter Notification
Editor.
3. Do one of the following:
If you have the VCS Integration feature enabled, right-click the notification and
select Check Out.
If you do not have the VCS Integration feature enabled, right-click the
notification and select Lock for Edit.
If you are using the local service development feature, from the Team menu in
Designer, select the appropriate option to check out the notification. The options
available in the Team menu depend on the VCS client that you use.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 195
M
Even Header
Adapter Notifications
4. Modify the values for the notification's parameters as needed. For detailed
descriptions of the notification's parameters, see the section on configuring a
notification for the specific type of notification you want to edit.
5. After you have completed your modifications, save the notification and do one of the
following:
If you have the VCS Integration feature enabled, right-click the notification and
select Check In. Enter a check-in comment and click OK.
If you do not have the VCS Integration feature enabled, right-click the
notification and select Unlock.
If you are using the local service development feature, from the Team menu in
Designer, select the appropriate option to check in the notification. The options
available in the Team menu depend on the VCS client that you use.
Deleting Notifications
You use Designer to delete adapter notifications.
Note: Before you delete the notification, be sure that you first disable it. Otherwise,
the trigger and buffer table created by the notification will remain in the
database. To disable a notification, see “Managing Polling Notifications” on
page 191.
To delete a notification
1. In Designer, expand the package and folder that contain the notification you want to
delete.
2. Right-click the notification and click Delete.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 196
M
Odd Header
Adapter Notifications
If you select the option to always validate values for adapter notifications, it will do so
for all webMethods WmART-based adapters installed on Integration Server.
For more information about the Adapter Service/Notification Editor, other Designer
menu options, and toolbar icons, see the Designer Service Development online help for
your release. See “About this Guide” for specific document titles.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 197
M
Even Header
Adapter Notifications
If you select the option to always reload values for adapter notifications, it will do so for
all webMethods WmART-based adapters installed on Integration Server.
For more information about the Adapter Service/Notification Editor, other menu
options, and toolbar icons, see the Designer Service Development online help for your
release. See “About this Guide” for specific document titles.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 198
M
Odd Header
Data Type Configuration
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 199
M
Even Header
Data Type Configuration
Overview
webMethods Adapter for JDBC allows you to dynamically configure the data type
mapping for a particular database in an XML configuration file. The adapter provides
the following data type mapping files in the Integration Server_directory\instances
\instance_name \packages\WmJDBC Adapter\config directory:
a default data type mapping configuration file named TypeMapping.xml
an XML schema file named TypeMapping.xsd
a database-specific data type mapping configuration file for each supported backend,
for example OracleTypeMapping.xml
Each column in a database table is assigned a SQL type. The JDBC driver then maps
each SQL data type to a JDBC data type. The adapter in turn maps each JDBC data type
to one or more Java data types that are used as the input or output of adapter services
and notifications.
For more information on JDBC data type to Java data type mappings, see on
page 217“Data Type Mapping”.
Based on the XML configuration, Adapter for JDBC selects the exact JDBC type
applicable for a particular table column in the database. The adapter service or
notification template shows the corresponding Java data types that are mapped to the
JDBC data type in the XML configuration file.
In rare cases, you might need to modify the database-specific file if you want to have
custom processing of a data type. If validation of the modified file fails, Adapter for
JDBC ignores the file, and the adapter connections to the particular backend do not
work.
The native SQL data types returned by the JDBC driver that are not part of the
predefined JDBC data types must be configured as extended data types in the database-
specific configuration file.
javaType
Contains:
the fully qualified class name that is used while accessing the Java object
corresponding to a database column
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 200
M
Odd Header
Data Type Configuration
the seer and geer methods in the prepared statement and result set while
accessing a specific column in the database
typeMapping
Contains the Java type mappings for the default JDBC types supported in the
java.sql.Types class. A single JDBC type can be mapped to one or more Java types. Those
Java types appear as drop-down lists in the Adapter for JDBC service and notification
templates in Software AG Designer.
If a database requires special handling for a JDBC type and needs to have different
javaType mapping from the one provided in the default TypeMapping.xml file, you
can modify the database-specific configuration file accordingly overriding the default
configuration.
extTypeMapping
Includes additional JDBC types that are not supported in the java.sql.Types class, as well
as the corresponding code of the JDBC type.
typeClassName
Contains the fully qualified class name that extends the
com.wm.adapter.wmjdbc.config.JDBCType class when a JDBC type requires special
handling.
For example, the new class names for the Oracle BLOB and CLOB data types are
included in the typeClassName aribute of the BLOB and CLOB JDBC types in the
Oracle database configuration file because the Oracle BLOB and CLOB data types
require special handling.
columnTypeMapping
Contains the mapping between the native SQL type of a column in a particular database
(in the columnType element) and the corresponding JDBC type.
In addition, the following aributes provide special handling of a particular column
type.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 201
M
Even Header
Data Type Configuration
alternativeName
Specifies the value returned by the JDBC driver when a native SQL column type in a
database has a different name from the name returned by the driver.
For example, a column of double precision type in a Sybase database is returned as
double precis by the driver. In this case, the alternativeName aribute is set to double
precis in the Sybase type mapping configuration file so that the adapter can recognize
it as the double precision type.
includeColumnSize
Specifies whether a column type name is suffixed with the column size when creating an
adapter service or notification. When the aribute is set to false, the column size is not
included. The default value is true.
resizeFactor
Indicates that the size of a column is different from the size returned by the JDBC driver.
The default value is 1, that is, the column size is the same as the size returned by the
JDBC driver.
includePrecision
Specifies whether to include column precision for a Decimal or Numeric JDBC type. If
the aribute is set to true, precision is included. The default value is false.
Note: After installing a new fix, reapply the changes made to the configuration files
manually.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 202
M
Odd Header
Logging and Exception Handling
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 203
M
Even Header
Logging and Exception Handling
Overview
The following sections describe Adapter for JDBC message logging, exception handling,
and customizing and overriding the adapter's list of fatal error codes. A list of error
codes and supporting information appears at the end of this chapter.
For a list of known database driver limitations, see “Database Driver Known
Limitations” on page 261.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 204
M
Odd Header
Logging and Exception Handling
Adapter for JDBC's log messages appear in either of the following formats:
ADA.1.nnnnc
ADA.0001.nnnnc
where the facility code ADA indicates that the message is from an adapter, 0001 or
1 indicate that it is Adapter for JDBC, nnnn represents the error's minor code, and
(optionally) c represents the message's severity level. For detailed descriptions of
Adapter for JDBC's minor codes, see “Adapter for JDBC Error Codes” on page 210.
To monitor Adapter for JDBC's log messages in the server log, ensure that your server
log's logging seings are configured to monitor the following facilities:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 205
M
Even Header
Logging and Exception Handling
AdapterException
Adapter for JDBC throws an AdapterException for two reasons:
1. To report an error related to the adapter's logic, such as a configuration error or a
connection creation error.
2. To wrap an SQLException if the adapter does not consider the SQLException's
SQLCODE to be a fatal error. In this case, WmART wraps the AdapterException in a
com.wm.pkg.art.error.DetailedServiceException and throws it to Integration Server.
AdapterExceptions containing an error code of 316 are SQLExceptions.
To manage the AdapterException, you can catch the DetailedServiceException
in a flow or Java service and then navigate through the nested exceptions to the
AdapterException, which will contain the error code identifying the error.
AdapterConnectionException
Adapter for JDBC throws an AdapterConnectionException to wrap an SQLException if
the adapter interprets the SQLCODE as a fatal error.
In this case, WmART resets the entire connection pool. WmART then wraps the
exception in com.wm.pkg.art.error.DetailedSystemException and throws it to
Integration Server.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 206
M
Odd Header
Logging and Exception Handling
SQLException
When an adapter connection's associated JDBC driver fails to execute a SQL command
against a database, the driver throws a SQLException. SQLExceptions include a SQL
STATE, a SQLCODE, and an error message.
Adapter for JDBC catches the SQLException from the JDBC driver and, depending
on the SQLCODE, wraps the SQLException in either an AdapterException or an
AdapterConnectionException. If a SQL CODE is in the adapter's list of fatal errors for
the database, the adapter wraps the exception in an AdapterConnectionException;
otherwise, it wraps it in an AdapterException. Each AdapterException and
AdapterConnectionException contains an adapter error code. If the error code is 316,
then the exception wraps an SQLException.
Note: If the error code of a database starts with a zero, then remove
the zero from the error code and append the remaining code
to the list. For example, for Oracle database, if you want to add
the error code, 01401, then type the wa parameter as follows:
watt.adapter.JDBC.Oracle.fatalErrors=+1401
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 207
M
Even Header
Logging and Exception Handling
Driver Setting
watt.adapter.JDBC.MsMssql.fatalErrors
Microsoft SQL Server
watt.adapter.JDBC.Oracle.fatalErrors
Oracle JDBC
watt.adapter.JDBC.DB2JTOPEN.fatalErrors
JTOpen
watt.adapter.JDBC.CJDBCDB2.fatalErrors
DataDirect Connect for JDBC
driver for DB2
watt.adapter.JDBC.TeraData.fatalErrors
Teradata Type 4
watt.adapter.JDBC.INFORMIX.fatalErrors
JDBC 2.21 type 4 for Informix
watt.adapter.JDBC.SYBASE.fatalErrors
jCONNECT 5.5 and 6.05 type
4 for Sybase
watt.adapter.JDBC.DB2UNIVERSAL.fatalErrors
DB2 Universal type 2 and
type 4
watt.adapter.JDBC.Generic.fatalErrors
Other driver types
watt.adapter.JDBC.database.fatalErrors=+ErrorCode_1,ErrorCode_2,
ErrorCode_n
This wa property is not database driver specific, instead applies to all drivers.
Note that there is no space after the , (comma).
Example: To allow Adapter for JDBC to refresh connections when encountering
error codes 12535, type:
watt.adapter.JDBC.database.fatalErrors=+12535
It is recommended that you use this wa property to add error codes to
the adapter's list of error codes, instead of watt.adapter.JDBC.database
driver .fatalErrors.
4. Click Save Changes.
5. Restart Integration Server.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 208
M
Odd Header
Logging and Exception Handling
To override the existing fatal error list with a new fatal error list
1. Start Integration Server Administrator if it is not already running.
2. Under Settings in the left panel, select Extended.
3. Select Edit Extended Settings. In the edit box, type:
watt.adapter.JDBC.database driver .fatalErrors=ErrorCode_1, ErrorCode_2,ErrorCode_n
For example, to override the list of fatal error codes for Adapter for JDBC with a list
of error codes 17002, 17003, and 16702 for Oracle driver, type the following:
watt.adapter.JDBC.Oracle.fatalErrors=17002,17003,16702
Note that there is no space after the , (comma). For a list of other supported driver
seings, see “Customizing the Adapter's List of Fatal Error Codes” on page 207.
Note: If the error code of a database starts with a zero, then remove the
zero from the error code and append the remaining code to the
list. For example, for Oracle database, if you want to override
the error code, 01401, then type the wa parameter as follows:
watt.adapter.JDBC.Oracle.fatalErrors=1401
By default, Adapter for JDBC's fatal error codes are 17001, 17002, 17416, 1092, 28,
1012, 17410, 12571, 3114, 1089, 1033, 08S01, 40003, -30081, -99999, HY000, -601,
JZ0C0, -79716. This list is a combination of common fatal error codes from different
databases.
4. Click Save Changes.
5. Restart Integration Server.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 209
M
Even Header
Logging and Exception Handling
where ErrorCode_1 , ErrorCode_2 , and ErrorCode_n are the error codes of the errors
that you want to suppress, and Error_Description is the description of the error that
you want to suppress. For databases that do not have error codes, you can provide
the error description.
Example: To allow Adapter for JDBC to suppress the error codes ORA-12500, ORA-
01033, 17002, and the error with description User account is locked, type the
following:
watt.adapter.JDBC.SuppressErrorCodes=ORA-12500,ORA-01033,17002,User account
is locked
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 210
M
Odd Header
Logging and Exception Handling
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 211
M
Even Header
Logging and Exception Handling
307 The adapter does not support Automatic Notification for this DataBaseName . Please select
another operation template.
Cause: The Automatic Notification (InsertNotification, UpdateNotification, or
DeleteNotification) is not supported for this database.
Response: Use a BasicNotification or StoredProcedure Notification instead of
InsertNotification, UpdateNotification, or DeleteNotification.
308 There must be at least one expression for the SELECT statement.
Cause: You did not specify any rows using the SELECT tab for the configured service.
Response: Add rows to the SELECT tab.
309 Select at least one column from the main table.
Cause: There is no column specified from the table.
Response: Add at least one column of the main table under the SELECT tab.
310 The database vendor VendorName does not support the database trigger condition.
Cause: The WHEN trigger condition does not apply to this database.
Response: Do not use the WHEN tab with the notification.
311 The connection is not available for NotificationCallbackName
Cause: There is no connection available in the connection pool.
Response: Check the adapter connection and contact your administrator to increase the
number of connections.
312 Cannot commit the transaction to the database. DataBaseName .
Cause: The transaction commit failed
Response: Check the SQL exception in the Integration Server error logs and database
error messages for details.
313 Cannot read data for the output field OutputFieldName. I/O error occurred when trying to read
byte sequence data
Cause:
Response: Call Software AG Global Support for assistance.
314 Cannot set data for the input field InputFieldName .
Cause: The input field value is not numeric.
Response: Change to a numeric input value.
316 Cannot execute the SQL statement SQLStatement. SQL statements failed to execute.
Cause:
Response: Check the SQL exception in the Integration Server error logs and database
error messages for details.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 212
M
Odd Header
Logging and Exception Handling
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 213
M
Even Header
Logging and Exception Handling
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 214
M
Odd Header
Logging and Exception Handling
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 215
M
Even Header
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 216
M
Odd Header
Data Type Mapping
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 217
M
Even Header
Data Type Mapping
Note: Adapter for JDBC does not support the DATALINK DB2 data type when
using the adapter with DB2 for AS/400 or DB2 for OS/390.
Note: Adapter for JDBC does not support the TIMESTAMP WITH TIME ZONE and
TIMESTAMP WITH LOCAL TIME ZONE data types in Oracle 10g.
Note: Adapter for JDBC does not support user-defined data types, Oracle PL/SQL
collections, or Oracle PL/SQL records.
ARRAY java.sql.Array
java.lang.Object
BIT java.lang.Boolean
java.lang.String
java.lang.Object
TINYINT java.lang.Byte
java.lang.Integer
java.lang.String
java.lang.Object
SetAsString
SMALLINT java.lang.Short
java.lang.Integer
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 218
M
Odd Header
Data Type Mapping
java.lang.String
java.lang.Object
INTEGER java.lang.Integer
java.lang.String
java.lang.Object
BIGINT java.lang.Long
java.lang.String
java.lang.Object
FLOAT java.lang.Double
java.lang.String
java.lang.Object
java.math.BigDecimal
SetAsString
REAL java.lang.Float
java.lang.String
java.lang.Object
java.math.BigDecimal
BOOLEAN java.lang.Boolean
java.lang.String
java.lang.Object
DOUBLE java.lang.Double
java.lang.String
java.lang.Object
java.math.BigDecimal
SetAsString
NUMERIC java.math.BigDecimal
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 219
M
Even Header
Data Type Mapping
java.lang.String
java.lang.Object
DECIMAL java.math.BigDecimal
java.lang.String
java.lang.Object
CHAR java.lang.String
java.lang.Character
java.lang.Object
VARCHAR java.lang.String
java.lang.Object
LONGVARCHAR java.lang.String
java.lang.Object
DATE java.sql.Date
java.util.Date
java.lang.String
java.lang.Object
*SetAsString
TIME java.sql.Time
java.util.Date
java.lang.String
java.lang.Object
SetAsString
TIMESTAMP java.sql.Timestamp
java.util.Date
java.lang.String
java.lang.Object
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 220
M
Odd Header
Data Type Mapping
SetAsString
LONGNVARCHAR java.lang.String
java.lang.Object
NCHAR java.lang.String
java.lang.Object
NULL java.lang.String
java.lang.Object
NVARCHAR java.lang.String
java.lang.Object
CLOB java.sql.Clob
java.lang.String
java.io.Reader
java.lang.Object
BLOB java.sql.Blob
byte array
java.io.InputStream
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 221
M
Even Header
Data Type Mapping
java.lang.Object
ORACLECURSOR java.lang.Object
ORACLEFIXED_CHAR java.lang.String
STRUCT java.sql.Struct
java.lang.Object
OTHER java.lang.Object
java.lang.String
java.sql.Struct
java.sql.Array
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 222
M
Odd Header
Data Type Mapping
java.lang.Object array, provided that the array or struct data in the database table is
composed of primitive data types.
When using the java.sql.Array or java.sql.Struct as the output field type for a
database column of type array or struct, Adapter for JDBC returns the java.sql.Array
and the java.sql.Struct objects, respectively, as returned by the driver. However,
when serializing the data across the JVMs, this returned data may not be serializable
and may result into a java.io.NotSerializableException. Therefore, before serializing
the data across the JVMs, it is important that you use a Java or a flow service to
process the java.sql.Struct and java.sql.Array objects as required, and then drop them
from the pipeline.
Note: The java.sql.Struct and java.sql.Array data types are available only for
Adapter for JDBC services.
Note: The SetAsString data type is available only for Adapter for JDBC services.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 223
M
Even Header
Data Type Mapping
java.lang.Double
java.lang.Float
java.lang.Integer
java.lang.Long
java.lang.Short
java.util.Date
java.math.BigDecimal
java.math.BigInteger
java.lang.Object
Those data types not included in this list will map to java.lang.Object. In these cases,
if the JDBC data type you specify is for input, you will need to pass in the object with
the selected Java data type. If the JDBC type is for output, you can cast the object to the
selected Java data type.
INTEGER INT4
BIGINT INT8
DOUBLE FLOAT8
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 224
M
Odd Header
Data Type Mapping
CHAR BPCHAR
DATE DATE
TIME TIME
TIMESTAMP TIMESTAMP
BINARY BYTEA
BIT BOOL
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 225
M
Even Header
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 226
M
Odd Header
Built-In Services
B Built-In Services
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 227
M
Even Header
Built-In Services
Overview
This appendix provides information on the built-in services provided by webMethods
Adapter for JDBC. These services are located in the WmJDBCAdapter package.
pub.jdbcAdapter:updateNotificationSchema
The pub.jdbcAdapter:updateNotificationSchema Java service changes the schema names
configured in the following types of notifications: InsertNotification, DeleteNotification,
UpdateNotification, OrderedNotification, and BasicNotification.
This service always validates the new schemas against the notification seings, and sets
the state of the notification to the state it is in before it is updated, regardless of whether
the update is successful.
The service does the following:
Step Description
3 The service validates the schema against the notification's seings. The
validation requires that the schema be in the same catalog that is configured
with the notification and that the table, synonym, view, or alias, configured
in the notification be in the schema. If the schema is not valid, the service
throws an exception.
4 The service updates the notification property with the new schemas, and
throws an exception if the input fields for the new schemas are not valid.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 228
M
Odd Header
Built-In Services
Input Parameters
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 229
M
Even Header
Built-In Services
Output Parameters
None.
Note: Fields that do not list an input value in the tables below should be left empty.
nodeName folder1:notification1
forceDisable true
allSchemaChange
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 230
M
Odd Header
Built-In Services
allSchemaChange.useCurrentSchema true
nodeName folder1:notification1
forceDisable true
allSchemaChange
allSchemaChange.schemaName A
nodeName folder1:notification1
forceDisable true
schemaChanges
schemaChanges[0]
schemaChanges[0].existingSchema
schemaChanges[0].existingSchema.useCurrentSchema true
schemaChanges[0].newSchema
schemaChanges[0].newSchema.schemaName A
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 231
M
Even Header
Built-In Services
nodeName folder1:notification1
forceDisable true
schemaChanges
schemaChanges.schemaChanges[0]
schemaChanges.schemaChanges[0].existingSchema
schemaChanges.schemaChanges[0].existingSchema.schemaName A
schemaChanges.schemaChanges[0].newSchema
schemaChanges.schemaChanges[0].newSchema.useCurrentSchema true
nodeName folder1:notification1
forceDisable true
schemaChanges
schemaChanges.schemaChanges[0]
schemaChanges.schemaChanges[0].existingSchema
schemaChanges.schemaChanges[0].existingSchema.schemaName A
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 232
M
Odd Header
Built-In Services
schemaChanges.schemaChanges[0].newSchema
schemaChanges.schemaChanges[0].newSchema.schemaName A1
schemaChanges.schemaChanges[1]
schemaChanges.schemaChanges[1].existingSchema
schemaChanges.schemaChanges[1].existingSchema.schemaName B
schemaChanges.schemaChanges[1].newSchema
schemaChanges.schemaChanges[1].newSchema.useCurrentSchema true
pub.jdbcAdapter:updateServiceSchema
The pub.jdbcAdapter:updateServiceSchema Java service enables you to change the schema
seings associated with an adapter service without having to manually update the
service from the Developer Adapter Service Editor.
This service supports the following types of services: InsertSQL, DeleteSQL, UpdateSQL,
SelectSQL, StoredProcedure, and StoredProcedureWithSignature.
Unlike the pub.jdbcAdapter:updateNotificationSchema service, the
pub.jdbcAdapter:updateServiceSchema service does not validate the new schemas against the
service seings.
Input Parameters
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 233
M
Even Header
Built-In Services
Output Parameters
None.
Note: Fields that do not list an input value in the tables below should be left empty.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 234
M
Odd Header
Built-In Services
nodeName folder1:notification1
allSchemaChange
allSchemaChange.useCurrentSchema true
nodeName folder1:notification1
allSchemaChange
allSchemaChange.schemaName A
nodeName folder1:notification1
schemaChanges
schemaChanges[0]
schemaChanges[0].existingSchema
schemaChanges[0].existingSchema.useCurrentSchema true
schemaChanges[0].newSchema
schemaChanges[0].newSchema.schemaName A
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 235
M
Even Header
Built-In Services
nodeName folder1:notification1
schemaChanges
schemaChanges.schemaChanges[0]
schemaChanges.schemaChanges[0].existingSchema
schemaChanges.schemaChanges[0].existingSchema.schemaName A
schemaChanges.schemaChanges[0].newSchema
schemaChanges.schemaChanges[0].newSchema.useCurrentSchema true
nodeName folder1:notification1
schemaChanges
schemaChanges.schemaChanges[0]
schemaChanges.schemaChanges[0].existingSchema
schemaChanges.schemaChanges[0].existingSchema.schemaName A
schemaChanges.schemaChanges[0].newSchema
schemaChanges.schemaChanges[0].newSchema.schemaName A1
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 236
M
Odd Header
Built-In Services
schemaChanges.schemaChanges[1]
schemaChanges.schemaChanges[1].existingSchema
schemaChanges.schemaChanges[1].existingSchema.schemaName B
schemaChanges.schemaChanges[1].newSchema
schemaChanges.schemaChanges[1].newSchema.useCurrentSchema true
pub.jdbcAdapter:updateConnectionPassword
The pub.jdbcAdapter:updateConnectionPassword service updates the existing password of an
existing connection with a new password without requiring you to manually change the
connection's password in the Connection Properties screen.
You need to disable the connection before updating the password.
Input Parameters
connectionAlias String. Required. The name of the connection for which the
password has to be updated.
confirmNewPassword String. Required. The new password for the connection. This is
required to confirm the new password.
Output Parameters
None.
pub.jdbcAdapter:createConnectionNodes
The pub.jdbcAdapter:createConnectionNodes service automatically configures the JDBC
connections without requiring you to use the Administrative screens.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 237
M
Even Header
Built-In Services
Note: When using the encoding aribute in the XML file, ensure that it matches the
encoding used when the XML file is saved, and also supports the characters
specified in the file. This ensures the correct interpretation of any foreign
characters in the XML file.
In the XML file, provide the Connection properties and the Connection Manager
properties as name-value pairs. Based on the number of connections that need to be
configured, provide the same number of connection configuration property sets in the
XML file. For example, in the XML file, if you provide two connection configuration
property sets, the pub.jdbcAdapter:createConnectionNodes service configures only two
connections.
Note: If the Connection Manager properties for the connection are not provided
in the XML file, the connection is configured using the default Connection
Manager properties.
After executing the service, the Results panel displays the status (success or failure) for
each connection. The Results panel also displays an error message for the connection
that has failed to configure.
Input Parameters
fileName String. Required. The path of the XML file that contains the
connection configuration properties.
Output Parameters
None.
Usage Notes
Using the pub.jdbcAdapter:createConnectionNodes service, you can configure a deleted
connection that was configured using this service, but you cannot configure a connection
that already exists. An error will be displayed in the Results panel indicating that
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 238
M
Odd Header
Built-In Services
there was a failure in configuring the connection. For example, consider the following
scenario:
1. Invoke the pub.jdbcAdapter:createConnectionNodes service.
2. In the fileName field, type the path of the XML file containing the connection
properties. The input XML file has properties for configuring connections
conn_local1 and conn_local2.
3. Click OK. The connections conn_local1 and conn_local2 are configured.
4. Delete connection conn_local1. Now, the only existing connection is conn_local2.
5. Repeat step 1 and step 2 and then click OK.
6. The deleted connection conn_local1 is configured again, but the existing connection
conn_local2 is not configured. No error message is thrown, but the Results panel
shows a message indicating that there was a failure in configuring connection
conn_local2.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 239
M
Even Header
Built-In Services
<databaseName>ORCL1</databaseName>
<portNumber>1521</portNumber>
<otherProperties>driverType=thin</otherProperties>
<networkProtocol>TCP</networkProtocol>
</connectionSettings>
<connectionManagerSettings>
<poolable>true</poolable>
<minimumPoolSize>5</minimumPoolSize>
<maximumPoolSize>10</maximumPoolSize>
<poolIncrementSize>1</poolIncrementSize>
<blockingTimeout>1000</blockingTimeout>
<expireTimeout>1000</expireTimeout>
<startupRetryCount>1</startupRetryCount>
<startupBackoffSecs>20</startupBackoffSecs>
</connectionManagerSettings>
</Connection>
</Connections>
pub.pollingNotificationUtils:dropDatabaseObjects
The servicepub.pollingNoificationUtils:dropDatabaseObjects allows you to automatically clean up
the existing database objects of a notification.
Input Parameters
notificationName String. Required. The name of the notification from which the
database objects need to be deleted.
Output Parameters
None.
Usage Notes
Disable the target notification before invoking this service. Invoking this service for an
enabled or a suspended notification, throws an error.
pub.pollingNotificationUtils:getDatabaseObjectsForNotification
The service pub.pollingNotificationUtils:getDatabaseObjectsForNotification allows you to list the
existing database objects associated with a notification.
The service returns null against the database objects that do not exist.
Input Parameters
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 240
M
Odd Header
Built-In Services
Output Parameters
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 241
M
Even Header
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 242
M
Odd Header
Built-In Transaction Management Services
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 243
M
Even Header
Built-In Transaction Management Services
Transactions
Integration Server considers a transaction to be one or more interactions with one or
more resources that are treated as a single logical unit of work. The interactions within
a transaction are either all commied or all rolled back. For example, if a transaction
includes multiple database inserts, and one or more inserts fail, all inserts are rolled
back.
Transaction Types
Integration Server supports the following kinds of transactions:
A local transaction (LOCAL_TRANSACTION) which is a transaction to a resource's
local transaction mechanism
An XAResource transaction (XA_TRANSACTION) which is a transaction to a
resource's XAResource transaction mechanism
Integration Server can automatically manage both kinds of transactions, without
requiring the adapter user to do anything. Integration Server uses a container-managed
(implicit) transaction management approach based on the Connector Architecture
standard, and also performs some additional connection management. This is because
adapter services use connections to create transactions. For more information about
implicit transactions, see “Implicit and Explicit Transactions” on page 245.
However, there are cases where adapter users need to explicitly control the transactional
units of work. Examples of these cases are provided in “Implicit and Explicit Transaction
Examples” on page 247.
To support transactions, Integration Server relies on an Oracle transaction manager. The
transaction manager is responsible for beginning and ending transactions, maintaining
a transaction context, enlisting newly connected resources into existing transactions, and
ensuring that local and XAResource transactions are not combined in illegal ways.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 244
M
Odd Header
Built-In Transaction Management Services
Important: You cannot step or trace a flow that contains a transacted adapter service or a
transacted JMS service.
XA Transactions
If an XA transactional connection throws an exception during a service transaction and
the exception results in an inconsistent state, you may need to resolve the transaction
using the tools provided with the database.
For information about using Integration Server to manage XA transactions, see the
Integration Server administration guide for your release. See “About this Guide” for
specific document titles.
Implicit Transactions
With implicit transactions, Integration Server automatically manages both local and
XAResource transactions without requiring you to explicitly do anything. That is,
Integration Server starts and completes an implicit transaction with no additional service
calls required by the adapter user.
A transaction context, which the transaction manager uses to define a unit of work,
starts when an adapter service is encountered in a flow execution. The connection
required by the adapter service is registered with the newly created context and used
by the adapter service. If another adapter service is encountered, the transaction context
is searched to see if the connection is already registered. If the connection is already
registered, the adapter service uses this connection. If the connection is not registered, a
new connection instance is retrieved and registered with the transaction.
Note that if the top level flow invokes another flow, adapter services in the child flow
use the same transaction context.
When the top level flow completes, the transaction is completed and is either commied
or rolled back, depending on the status (success or failure) of the top level flow.
A single transaction context can contain any number of XA_TRANSACTION
connections but no more than one LOCAL_TRANSACTION connection. If you choose
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 245
M
Even Header
Built-In Transaction Management Services
to provide dynamic user credentials at run time, then all the adapter services using the
LOCAL_TRANSACTION connection within a single transaction must use the same
user credentials. For example, if you have two adapter services s1 and s2 configured
using the LOCAL_TRANSACTION connection c1 in a single transaction context, then
both s1 and s2 must either use the same dynamic credentials at run time or the default
configured credentials provided at design time. For more information on dynamic user
credentials for a service's associated connection, see“Changing the User Credentials of a
Service's Associated Connection at Run Time” on page 27.
For implicit transaction examples, see “Implicit and Explicit Transaction Examples” on
page 247.
For more information about designing and using flows, see the Designer Service
Development online help for your release. See “About this Guide” for specific document
titles.
For more information about transaction types, see “Transaction Management of Adapter
Connections” on page 19.
Explicit Transactions
You use explicit transactions when you need to explicitly control the transactional units
of work. To do this, you use additional services, known as built-in services, in your flow.
A transaction context starts when the pub.art.transaction:startTransaction service is executed.
The transaction context is completed when either the pub.art.transaction:commitTransaction
or pub.art.transaction:rollbackTransaction service is executed. As with implicit transactions, a
single transaction context can contain any number of XA_TRANSACTION connections
but no more than one LOCAL_TRANSACTION connection. If you choose to
provide dynamic user credentials at run time, then all the adapter services using the
LOCAL_TRANSACTION connection within a single transaction must use the same
user credentials. For example, if you have two adapter services s1 and s2 configured
using the LOCAL_TRANSACTION connection c1 in a single transaction context, then
both s1 and s2 must either use the same dynamic credentials at run time or the default
configured credentials provided at design time.
For more information on dynamic user credentials for a service's associated connection,
see “Changing the User Credentials of a Service's Associated Connection at Run Time”
on page 27.
Note: With explicit transactions, you must be sure to call either a commitTransaction
or rollbackTransaction for each startTransaction; otherwise you will have
dangling transactions that will require you to reboot Integration Server. You
must also ensure that the startTransaction is outside the SEQUENCE.
A new explicit transaction context can be started within a transaction context, provided
that you ensure that the transactions within the transaction context are completed in the
reverse order they were started-that is, the last transaction to start should be the first
transaction to complete, and so forth.
For example, the following is a valid construct:
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 246
M
Odd Header
Built-In Transaction Management Services
pub.art.transaction:startTransaction
pub.art.transaction:startTransaction
pub.art.transaction:startTransaction
pub.art.transaction:commitTransaction
pub.art.transaction:commitTransaction
pub.art.transaction:commitTransaction
For explicit transaction examples, see “Implicit and Explicit Transaction Examples” on
page 247.
Note: You can use the pub.flow:getLastError service in the SEQUENCE, to retrieve the
error information when a sequence fails. For more information on using the
pub.flow:getLastError service, see the Designer Service Development online help
for your release. See “About this Guide” for specific document titles.
For more information about designing and using flows, see the Designer Service
Development online help for your release. See “About this Guide” for specific document
titles.
For more information about transaction types, see “Transaction Management of Adapter
Connections” on page 19.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 247
M
Even Header
Built-In Transaction Management Services
Step Description
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 248
M
Odd Header
Built-In Transaction Management Services
Step Description
4 You create the following flow examples (described in this section) using
LOCAL_TRANSACTIONs:
SingleLocalInsert (explicit transaction). See “Flow Example:
SingleLocalInsert” on page 249.
ValidDoubleLocal (explicit transaction). See “Flow Example:
ValidDoubleLocal” on page 251.
5 You create the following flow examples (described in this section) using
both XA_TRANSACTIONs and LOCAL_TRANSACTIONs:
ValidMixed (implicit transaction). See “Flow Example: ValidMixed” on
page 249.
ValidMixed2 (implicit/explicit transaction). See “Flow Example:
ValidMixed2” on page 250.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 249
M
Even Header
Built-In Transaction Management Services
to insure that the explicit transaction is either commied (on success) or rolled back (on
failure).
Step Description
1 The top-level SEQUENCE will exit on success. Note that the start
transaction is outside the SEQUENCE.
Note that with this construct, you will not get trigger retries or a retryable exception.
The EXIT statement will result in generating a Flow exception which is not retryable. To
get retries, you will need to use a REPEAT step statement in your flow. For information
about using the REPEAT statement, see the Designer Service Development online help
for your release. See “About this Guide” for specific document titles.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 250
M
Odd Header
Built-In Transaction Management Services
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 251
M
Even Header
Built-In Transaction Management Services
Step Description
1 The top-level SEQUENCE will exit on success. Note that the start
transaction is outside the SEQUENCE.
pub.art.transaction:commitTransaction
This service commits an explicit transaction. It must be used in conjunction with the
pub.art.transaction:startTransaction service.
If it does not have a corresponding pub.art.transaction:startTransaction service, your flow
service will receive a run time error. For more information about implicit and explicit
transactions, see “Implicit and Explicit Transactions” on page 245.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 252
M
Odd Header
Built-In Transaction Management Services
Input Parameters
Output Parameters
None.
pub.art.transaction:rollbackTransaction
This service rolls back an explicit transaction. It must be used in conjunction with the
pub.art.transaction:startTransaction service.
If it does not have a corresponding pub.art.transaction:startTransaction service, your flow
service will receive a run time error. For more information about implicit and explicit
transactions, see “Implicit and Explicit Transactions” on page 245.
Input Parameters
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 253
M
Even Header
Built-In Transaction Management Services
Output Parameters
None.
pub.art.transaction:setTransactionTimeout
This service enables you to manually set a transaction timeout interval for implicit and
explicit transactions.
When you use this service, you are temporarily overriding the Integration Server
transaction timeout interval. For information on changing the server's default
transaction timeout, see “Changing the Integration Server Transaction Timeout Interval”
on page 255.
You must call this service within a flow before the start of any implicit or explicit
transactions. Implicit transactions start when you call an adapter service in a flow.
Explicit transactions start when you call the pub.art.transaction:startTransaction service.
If the execution of a transaction takes longer than the transaction timeout interval, all
transacted operations are rolled back.
This service only overrides the transaction timeout interval for the flow service in which
you call it.
Input Parameters
Output Parameters
None.
pub.art.transaction:startTransaction
This service starts an explicit transaction.
It must be used in conjunction with either a pub.art.transaction:commitTransaction service
or pub.art.transaction:rollbackTransaction service. If it does not have a corresponding
pub.art.transaction:commitTransaction service or pub.art.transaction:rollbackTransaction service, your
flow service will receive a run time error.
For more information about implicit and explicit transactions, see “Implicit and Explicit
Transactions” on page 245.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 254
M
Odd Header
Built-In Transaction Management Services
Input Parameters
Output Parameters
transactionName String. The name of the transaction the service just started.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 255
M
Even Header
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 256
M
Odd Header
Adapter Configuration Parameters Appendix
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 257
M
Even Header
Adapter Configuration Parameters Appendix
Overview
This appendix contains a description of Adapter for JDBC parameters you
can specify in the server configuration file (server.cnf), which is located in the
Integration Server_directory\config directory. Typically you use the Seings > Extended
screen in Integration Server Administrator to update this file, but there might be times
when you need to edit the file directly using a text editor. If you edit the file directly, you
should first shut down Integration Server before updating the file. After you make the
changes, restart the server. If you are using the Seings > Extended screen to update the
server configuration file (server.cnf), a server restart is not required unless otherwise
specified. The server uses default values for the parameters. If a parameter has a default,
it is listed with the description of the parameter.
watt.adapter.JDBC.AutomaticNotification.Joincolumn.BufferTable
Specifies whether Adapter for JDBC displays the columns of the buffer table on the Joins
tab for an Insert, Delete, or Update polling notification, when the notification has an
Output Field name different from the column name in the source table, and the same
column is selected on the Joins tab. If the parameter is set to true, the adapter displays
the columns of the buffer table on the Joins tab for the notification. If the parameter is set
the false, the adapter displays the columns of the source table on the Joins tab for the
notification.
watt.adapter.JDBC.DateWithTimestamp
Appends the timestamp to the output of an Adapter for JDBC service when the adapter
service retrieves data from a database table with a Date column, the JDBC type is set to
DATE, and the Output Field Type parameter is set to java.lang.String. When the parameter
is set to true, the adapter services append the timestamp to the output. When the
parameter is set to false, the default, the adapter services do not append the timestamp
to the output.
watt.adapter.JDBC.DateWithTimestampAndMilliseconds
Appends the timestamp with milliseconds to the output of an Adapter for JDBC service
when the adapter service retrieves data from a database table with a Date column, the
JDBC type is set to DATE, and the Output Field Type parameter is set to java.lang.String
or SetAsString. When the parameter is set to true, the adapter services append the
timestamp with milliseconds to the output. When the parameter is set to false, the
default, the adapter services append the timestamp to the output without milliseconds.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 258
M
Odd Header
Adapter Configuration Parameters Appendix
watt.adapter.JDBC.DisableEmptyResult
Specifies whether Adapter for JDBC Custom SQL services and Dynamic SQL services
return a document when the result set returned by the database is empty. When the
parameter is set to true, the adapter services do not return an empty results document.
When the parameter is set to false, the default, the adapter services return an empty
results document.
watt.adapter.JDBC.StoredProcedure.customRSColNames
Specifies whether Adapter for JDBC supports the mapping of custom column names in
the Column Name field to the result set in the Output signature of StoredProcedure and
StoredProcedureWithSignature services. When the parameter is set to true, the default,
the adapter supports the mapping of custom column names in the Column Name field. If
the parameter is set to false, the adapter uses the standard values that match the result
set in the Output signature of the StoredProcedure and StoredProcedureWithSignature
service.
watt.adapter.JDBC.UsePlainString
Specifies whether Adapter for JDBC services return an exponential form of the column
value retrieved from a database when using Java version 1.5 and higher. When the
adapter services retrieve a column value of Decimal or Numeric JDBC Data Type and
the Output Field Type is defined as java.lang.String, the output returned may sometimes
be in exponential form. The output returned is the String obtained by invoking the
BigDecimal.toString() method. Due to changes in the behavior of BigDecimal.toString in
Java 5, BigDecimal.toString() now returns exponential values in some cases. When the
wa.adapter.JDBC.UsePlainString parameter is set to true, Adapter for JDBC invokes
the toPlainString() method and returns the non-exponential form in all cases. When the
parameter is set to false, the default, the adapter invokes the toString() method, and
returns the exponential form if needed.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 259
M
Even Header
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 260
M
Odd Header
Database Driver Known Limitations
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 261
M
Even Header
Database Driver Known Limitations
Driver Limitations
This appendix provides a high-level list of limitations and issues. For additional details,
refer to your vendor documentation.
General Constraints
When you reload the adapter values after modifying an existing
StoredProcedureWithSignature service at the backend, the service parameters are
updated, but the input fields are not updated. To work around this limitation:
Add new arguments to the end of the argument list in the stored procedure
definition. Do not add new arguments in-between existing arguments in the list.
When you change the order of the service parameters, you must re-edit the input
fields for the parameters manually.
The TEXT, IMAGE, and UNITEXT data types are not supported for all types of
adapter notifications in Sybase.
DataDirect UDB 7.2 This driver version does not support the BLOB
Connect for data types. If you try to select data from a table
JDBC 3.2 that has BLOB data types, you will receive the
following message:
[DataDirect][DB2 JDBC Driver][DB2]AN
UNSUPPORTED SQLTYPE WAS ENCOUNTERED IN
POSITION 2 ON A PREPARE OR DESCRIBE
OPERATION
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 262
M
Odd Header
Database Driver Known Limitations
UDB 7.2 and Cannot use the CLOB data type in the OUT
UDB 8.1 parameter in StoredProcedure services. Doing
so throws [DataDirect][DB2 JDBC Driver]
[DB2]DATA TYPE/LENGTH/VALUE OF
ARGUMENT 1 OF CLOBSP1 IS INVALID.
The CallableStatement.getClob() does not work;
instead, use the IBM driver versions (DB2 app
type 2 or DB2 net type 3).
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 263
M
Even Header
Database Driver Known Limitations
UDB 9.1 The support for DB2 JDBC app (type 2) driver
is deprecated.
DB2 JDBC DB2 7 on OS/390 If you aempt to insert 20k or more records,
net (Type3) either the system will deadlock or you will
receive a timeout error.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 264
M
Odd Header
Database Driver Known Limitations
DB2 JDBC UDB 7.2 The driver does not write to the JDBC log,
net (Type3) even when the log option is enabled. The
workaround is to create an empty log file. To
do this, use Integration Server Administrator
and select Settings > Extended > Edit Extended
Settings and type:
watt.adapter.JDBC.JDBCLogFile= c:
\log.txt
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 265
M
Even Header
Database Driver Known Limitations
UDB 9.1 The DB2 database system does not support the
type 3 driver.
Informix Informix 7.31 This driver does not support multiple results
Driver and 9.x sets. If you configure the adapter to use
for JDBC multiple result sets, all result rows will be
Version 2.21 stored in the first Result Set you specified when
type 4 you configured the adapter.
jCONNECT Sybase 11.x, 12.x, A Sybase column using a BIT data type does
5.5 and 6.05 and 15.x not allow NULL values due to driver behavior.
type 4 This means that if you insert a NULL or ?
(variable) value when you run an InsertSQL
service, the driver converts this column value
to false and inserts the NULL value for the
column into the database.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 266
M
Odd Header
Database Driver Known Limitations
Oracle JDBC All supported The NUMBER and NUMBER(n,m) Oracle data
Drivers Oracle databases types map to java.math.BigDecimal in all JDBC
(Oracle JDBC Adapter services by default.
Thin and
Oracle JDBC/ Oracle 8.0.5 When mapping a date data type to
OCI) java.util.Date using the InsertSQL adapter
service, you receive an "ORA-1024 Invalid data
type in OCI call" exception. As a workaround,
map the date to java.sql.Timestamp.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 267
M
Even Header
Database Driver Known Limitations
Oracle JDBC All supported You must set an environment variable before
OCI Driver databases you can configure connections. For details, see
“Seing the Environment Variable for Oracle
JDBC OCI Drivers” on page 79.
SQL Server Microsoft SQL When running the SelectSQL adapter service
2000 Driver Server 2000 using the "not null real" type, the "Value
for JDBC cannot be converted to requested type" error
Version is thrown. This is a driver issue for both
2.2.0019 the DataDirect Connect for JDBC and the
Microsoft SQL Server 2000 Driver for JDBC.
This driver does not support retrieving table
names from a database when the database’s
name contains special characters.
This driver must have Oracle's JDK 1.3
package javax.sql.* in the Integration Server
CLASSPATH before you can enable the
adapter connection. If this package is missing,
the adapter throws the error message "unable
to configure connection manager javax/sql/
DataSource."
SQL Server Microsoft SQL This driver returns incorrect data type TEXT,
2005 Driver Server 2005 IMAGE, and NTEXT for MS SQL data types
for JDBC VARCHAR(max), VARBINARY(max) and
Version NVARCHAR(max) respectively.
1.0.809.102
This driver returns invalid JDBC data type for
MS SQL UNIQUEIDENTIFIER data type.
Teradata All supported This driver does not support the following
V2R5 (Type databases services and notifications:
4)
BatchInsertSQL or BatchUpdateSQL services
InsertNotifications, UpdateNotifications,
DeleteNotifications, and OrderedNotifications
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 268
M
Odd Header
Database Driver Known Limitations
Teradata All supported This driver does not support the following
V2R6, R12.0, databases services and notifications:
R13.0,
BatchInsertSQL or BatchUpdateSQL services
R13.10, and
R14.0 (Type InsertNotifications, UpdateNotifications,
4) DeleteNotifications, and OrderedNotifications
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 269
M
Even Header
Database Driver Known Limitations
Apache For all This driver does not support the following:
Impala supported
UpdateSQL, DeleteSQL,
databases
BatchInsertSQL, BatchUpdateSQL,
StoredProcedure, and
StoredProcedureWithSignature services
InsertNotifications, UpdateNotifications,
DeleteNotifications,
StoredProcedureNotifications,
StoredProcedureNotificationsWithSignature
and OrderedNotifications
Support for XA_TRANSACTION
Support for LOCAL_TRANSACTION
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 270
M
Odd Header
Database Driver Known Limitations
For an updated list of database driver limitations, see webMethods Adapters System
Requirements.
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 271
M
Index
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 272
M
Index
U
A
user-defined data types 218
adapter notifications. 152
AdapterException 206
Automatic polling of adapter metadata option 198 W
Watt property to suppress error codes 209
B
buffer tables
retrieving data from 163
C
clustering
requirements 73
D
documentation
using effectively 11
E
exceptions for JDBC Adapter
AdapterException 206
F
flat files, spe cifying the input field types 116
N
notifications
StoredProcedureNotification 175
P
pub.jdbcAdapter.createConnectionNodes
example of the input XML file 239
sample properties file 238
usage notes 238
S
Service accessing a connection object
forbidden methods 145
Speci fying the max imum n umber of result sets for
a StoredProcedure service
watt property 137
StoredProcedureNo tification
configuring 175
webMethods Adapter for JDBC Installation and User’s Guide Version 9.0 273