コネクターを実行するには、コネクターの標準およびコネクター固有の構成プロパティーを設定する必要があります。Connector Configurator Express を使用します (InterChange Server Express は統合ブローカーであるため)。このツールには System Manager からアクセスします。
標準の構成プロパティーにより、すべてのコネクターによって使用される情報が提供されます。これらのプロパティーの詳細については、付録A. コネクターの標準構成プロパティーを参照してください。
また、WebSphere Business Integration Server Express Adapter for Oracle Applications に固有の標準構成プロパティーについては、表 6を参照してください。この表の情報は、付録の情報を補足するものです。
コネクター固有の構成プロパティーには、コネクターが実行時に必要とする情報が用意されています。また、コネクター固有のプロパティーを使用すれば、コネクターのコーディングやビルドをやり直さなくても、コネクター内部の静的な情報やロジックを変更することができます。
表 7 に、コネクターのコネクター固有構成プロパティーを示します。プロパティーの説明については、以下の各セクションを参照してください。
名前 | 指定可能な値 | デフォルト値 | 必要 |
---|---|---|---|
ApplicationPassword | コネクターのユーザー・アカウントのパスワード | はい* | |
ApplicationUserName | コネクターのユーザー・アカウントの名前 | はい* | |
ArchiveProcessed | true または false | true | いいえ |
ArchiveTableName | アーカイブ・キュー表の名前 | xworlds_archive_events | Archive Processed が true の場合は必要 |
AutoCommit | true または false | false | いいえ |
CheckforEventTableInInit | true または false | true | いいえ |
ChildUpdatePhyDelete | true または false | false | いいえ |
CloseDBConnection | true または false | false | いいえ |
ConnectorID | コネクターの固有 ID | null | いいえ |
DatabaseURL | データベース・サーバーの名前 | はい | |
DateFormat | 時刻パターン・ストリング | MM/dd/yyyy HH:mm:ss | いいえ |
DriverConnectionProperties | 追加の JDBC ドライバー接続プロパティー | いいえ | |
DriverSupportForLong | true または false | false | いいえ |
EventKeyDel | イベント表のオブジェクト・キー列用の区切り文字 | セミコロン (;) | いいえ |
EventOrderBy | none または 列名 [, 列名, ...] | いいえ | |
EventQueryType | Fixed または Dynamic | Fixed | いいえ |
EventTableName | イベント・キュー表の名前 | xworlds_events | ポーリングが必要な場合は必ず指定。不要な場合は null (ストリング) を指定。 |
JDBCDriverClass | ドライバー・クラス名 | はい | |
MaximumDatabaseConnections | 同時データベース接続数 | 5 | はい |
PingQuery | SELECT 1 FROM <tablename> | いいえ | |
PollQuantity | 値は 1 から 500 | 1 | いいえ |
PreserveUIDSeq | true または false | true | いいえ |
QueryTimeOut | 整数値 (秒) | いいえ | |
RDBMS.initsession | 各データベース・セッションを初期化する SQL ステートメント | いいえ | |
RDBMSVendor | Oracle | Oracle | はい |
ReplaceAllStr | true または false | false | いいえ |
ReplaceStrList | 1 つの文字、1 つの文字区切り文字、および文字の置換ストリングで構成されたセット。または、このようなセットを終了区切り文字で区切って複数個並べたもの。 | Q,DSQ 注: コネクター構成ツールでは、これらの文字は、順に単一引用符、コンマ、および二重の単一引用符を表します。 | いいえ |
RetryCountAndInterval | カウント、秒単位の間隔 | 3,20 | いいえ |
ReturnDummyBOForSP |
true または false |
false |
いいえ |
SchemaName | WebSphere Business Integration Server Express Adapter イベントが存在するスキーマ | いいえ | |
SelectiveCommitForPoll |
true または false |
false |
いいえ |
SPBeforePollCall | ポーリング呼び出しのたびに実行されるストアード・プロシージャーの名前 | いいえ | |
StrDelimiter | ReplaceStrList プロパティーで使用する文字区切り文字と終了区切り文字 | ,: | いいえ |
TimingStats | 0、1、2 | 0 | いいえ |
UniqueIDTableName | ID の生成に使用するテーブルの名前 | xworlds_uid | いいえ |
UseDefaults | true または false | false | はい |
UseDefaultsForCreatingChildBOs | true または false |
false |
いいえ |
UseDefaultsWhenPolling |
true または false |
true |
いいえ |
* トラステッド認証を使用する場合、ApplicationPassword と ApplicationUserName は不要です。
コネクターのユーザー・アカウントのパスワード。
デフォルト値はありません。
コネクターのユーザー・アカウントの名前。
デフォルト値はありません。
現行のサブスクリプションがないイベントを、コネクターにアーカイブさせるかどうかを指定します。
このプロパティーを true に設定すると、イベント表からイベントが削除される前にアーカイブ表にそのイベントが挿入されます。
このプロパティーを false に設定すると、コネクターはアーカイブ処理を実行しません。この場合、コネクターは ArchiveTableName プロパティーの値を検査しません。ArchiveProcessed が false に設定されている場合、コネクターの動作は次のようになります。
このプロパティーが false に設定されている場合、ポーリング数量が少ないと、コネクターは、イベント表に対してポーリングを行っているように見えても、同じイベントを繰り返し取り出しているだけになります。
このプロパティーに値が設定されていない場合、コネクターは値が true であると見なします。このとき、ArchiveTableName プロパティーにも値が設定されていなければ、コネクターはアーカイブ表名が xworlds_archive_events であると見なします。
デフォルト値は true です。
アーカイブ・キュー表の名前。
ArchiveProcessed プロパティーが false に設定されている場合、このプロパティーに値を設定する必要はありません。
デフォルトの名前は xworlds_archive_events です。
このプロパティーを使用すると、AutoCommit 設定を構成できます。true に設定されている場合、すべてのトランザクションが自動的にコミットされます。
データベース接続が失われた場合、AutoCommit が false に設定されていれば、コネクターは新しい接続を作成して処理全体を最初からやり直そうとします。作成された新しい接続が無効であるときや、AutoCommit が true に設定されているときには、コネクターは APPRESPONSETIMEOUT を戻します。この結果、コネクターは終了します。
デフォルト値は false です。
このコネクター・プロパティーを false に設定すると、コネクターは、初期化時に、イベント表とアーカイブ表の有無を検査しなくなります。使用する JDBC ドライバーが JDBC クラス DatabaseMetaData をサポートしていない場合を除き、このプロパティーは常に true に設定しておくことをお勧めします。
このプロパティーが false に設定されている場合、コネクターがイベント表とアーカイブ表の有無を検査することはありません。ただし、これらの表は、コネクターが初期化プロセスで使用するものであるため、必ず存在していなければなりません。コネクターが初期化時にイベント表とアーカイブ表を使用しないようにするには、プロパティー EventTableName を null に設定します。
デフォルト値は true です。
更新操作の際、着信ビジネス・オブジェクトには含まれずデータベースには存在している子ビジネス・オブジェクトが表すデータを、コネクターにどのように処理させるかを指定します。
このプロパティーを true に設定すると、コネクターは、該当のデータ・レコードを、データベースから物理的に削除します。
このプロパティーを false に設定すると、コネクターは、状況列に適切な値を設定することによって、該当のデータ・レコードをデータベースから論理的に削除します。コネクターは、ビジネス・オブジェクト・レベルのアプリケーション固有の情報に指定されている StatusColumnValue (SCN) パラメーターから、状況列の名前と値を取得します。詳細については、ビジネス・オブジェクト・レベルのアプリケーション固有情報を参照してください。
デフォルト値は false です。
このプロパティーを使用すると、データベース接続のクローズ方法を構成できます。true に設定されている場合、サービス呼び出し要求またはポーリング呼び出しのたびに、データベース接続のクローズが実行されます。このプロパティーを true に設定することは、パフォーマンスの低下につながるため、お勧めできません。
デフォルト値は false です。
コネクターの固有 ID。この ID は、コネクターの特定のインスタンスに関連するイベントを検索するときに役立ちます。
デフォルト値は null です。
コネクターの接続先とするデータベース・サーバーの名前。
Oracle シン・ドライバーを使用する場合は、次の URL を指定することをお勧めします。
jdbc:oracle:thin:@MachineName:PortNumber:DBname
この値を指定しなければ、コネクターが処理を正常に実行できません。
コネクターが受け取り、戻すことができる日付形式を指定します。このプロパティーでは、表 8 に示す構文に基づく形式がサポートされます。
表 8 に、DateFormat 構文を示します。この構文は、時刻パターン・ストリングを使用して定義されています。このパターンに含まれる ASCII 文字は、いずれも、パターン文字として予約されています。
記号 | 意味 | 表示 | 例 |
---|---|---|---|
G | 紀元 | (テキスト) | AD |
y | 年 | (数値) | 1996 |
M | 月 | (テキスト & 数値) | July & 07 |
d | 日 | (数値) | 10 |
h | 時刻 (1 時始まりの 12 時間制) | (数値) | 12 |
H | 時刻 (0 から 23) | (数値) | 0 |
m | 分 | (数値) | 30 |
s | 秒 | (数値) | 55 |
S | ミリ秒 | (数値) | 978 |
E | 曜日 | (テキスト) | Tuesday |
D | 日 (年間通算) | (数値) | 189 |
F | 曜日 (月間通算) | (数値) | 7 月の第 2 水曜日の場合、2 |
w | 週 (年間通算) | (数値) | 27 |
W | 週 (月間通算) | (数値) | 2 |
a | 午前/午後 | (テキスト) | PM |
k | 時刻 (1 時始まりの 24 時間制) | (数値) | 24 |
K | 時刻 (0 から 11) | (数値) | 0 |
z | 時間帯 | (テキスト) | Pacific Standard Time |
' | テキスト挿入用エスケープ | (区切り文字) | |
'' | 単一引用符 | (リテラル) | ' |
形式パターン | 結果 |
---|---|
"yyyy.MM.dd G 'at' hh:mm:ss z" | 1996.07.10 AD at 15:08:56 PDT |
"EEE, MMM d, ''yy" | Wed, July 10, '96 |
"h:mm a" | 12:08 PM |
"hh 'o''clock' a, zzzz" | 12 o'clock PM, Pacific Daylight Time |
"K:mm a, z" | 0:00 PM, PST |
"yyyy.MMMMM.dd GGG hh:mm aaa" | 1996.July.10 AD 12:08 PM |
JDBC ドライバーには、ユーザー名とパスワード以外の追加のプロパティーや情報が必要になる場合があります。DriverConnectionProperties コネクター・プロパティーには、JDBC ドライバーに必要な追加のプロパティーを、名前と値のペアとして指定できます。追加するプロパティーは、次の形式で指定する必要があります。
property1=value1[;property2=value2...]
追加プロパティーは、名前と値のペアとして指定し、各ペアの間はセミコロンで区切ります。各プロパティーの名前と値の間は、等号で区切ります (スペースを挿入してはいけません)。
例えば、使用する JDBC ドライバーが、ライセンス情報とポート番号を必要とするものであるとします。そのドライバーのライセンス情報用のプロパティーの名前は MyLicense であり、その値は ab23jk5 です。また、ポート番号用のプロパティーの名前は PortNumber であり、その値は 1200 です。このとき、DriverConnectionProperties は、MyLicense=ab23jk5;PortNumber=1200 という値に設定する必要があります。
Prepared Statements の integer パラメーターの処理方法を指定します。このプロパティーが true の場合、
setLong
を使用して integer パラメーターを設定します。このプロパティーが false の場合、
setInt
を使用してパラメーターを設定します。
デフォルト値は true です。
イベント表の object_key 列に複数の属性値が格納される場合の区切り文字を指定します。
トリガーとなったアプリケーションで作成、更新、または削除されたビジネス・オブジェクトを検索できるようにするための手法は、2 つあります。
区切り文字を「=:」と指定した場合、object_key には、CustomerName=xxx:CustomerId=123: というように値が格納されます。
デフォルト値はセミコロン (;) です。これは、名前と値のペアを使用する場合の区切り文字ではなく、キー値を使用する場合の区切り文字です。
イベントの順序付けをオフにするかどうかを指定します。または、デフォルトの順序とは異なるイベント処理順序を指定します。
デフォルトでは、コネクターは PollQuantity プロパティーに指定されている数だけのイベントをポーリングのたびに取り出し、イベント表の event_time 列および event_priority 列に指定されている値に従ってイベント処理を順序付けます。
コネクターでイベントの順序付けが行われないようにするには、このプロパティーの値を none に設定します。
イベント表のいずれかの列の値を基に順序付けが行われるようにするには、その列の名前を指定します。複数の列名を指定することもできます。列名の間は、コンマ (,) で区切ってください。このプロパティーに値を指定すると、デフォルト値が上書きされます。
このプロパティーのデフォルト値はありません。
EventQueryType プロパティーは、イベント表のイベントを検索する際に照会を動的に生成するのか、それとも組み込まれている照会を使用するのかを、コネクターに対して指示するために使用します。動的に照会を生成する場合、コネクターは、照会のイベント構造をイベント表の列と関連付けます。テーブルの各列のデータの順序は非常に重要です。適切な順序については、イベント表およびアーカイブ表のスキーマを参照してください。
EventQueryType の値が Fixed (ストリング) である場合、デフォルトの照会が実行されます。Dynamic (ストリング) に設定されている場合、新しい照会が作成されます。このとき、EventTableNameプロパティーに指定されている表から列名が取得されます。
イベント表の列名は変更可能ですが、列の順序とデータ型については、イベント表の作成のセクションで指定したとおりにしておかなければなりません。デフォルトの照会と動的に生成された照会のどちらにも、EventOrderByの内容が付加されます。
EventQueryType プロパティーが追加されていない場合、またはこのプロパティーに値がない場合、このプロパティーはデフォルトの Fixed になります。
デフォルト値は Fixed (ストリング) です。
イベント・キュー表の名前。この表は、コネクターのポーリング機構で使用されます。
デフォルトの名前は xworlds_events です。
コネクターのポーリングをオフにしている場合は、このプロパティーを null (ストリング) に設定してください。これにより、イベント表とアーカイブ表の有無の検証が行われなくなります。
ユーザー定義のイベント表を使用する場合は、event_id 列を、INTEGER、BIGINT、NUMERIC、VARCHAR のいずれかの JDBC 型に必ずマップしてください。
ドライバーのクラス名を指定します。いずれかの特定の JDBC ドライバーを使用する場合には、この構成プロパティーにそのドライバーのクラス名を指定する必要があります。例えば、Oracle シン・ドライバーを指定するには、このプロパティーの値を oracle.jdbc.driver.OracleDriver に設定します。
詳細については、マルチドライバー・サポートを使用可能にするを参照してください。
デフォルト値はありません。
同時データベース接続の最大許容数を指定します。実行時に開いておくことができるデータベース接続の数は、この値に 1 を加えた数になります。
PreserveUIDSeqプロパティーが false に設定されている場合、実行時に開いておくことができるデータベース接続の数は、この値に 2 を加えた数になります。
デフォルト値は 5 です。
データベースの接続性の検査のためにコネクターから実行する SQL ステートメントまたはストアード・プロシージャーを指定します。
次に示すのは、ping 照会として使用される SQL ステートメントの例です。
SELECT 1 FROM <tablename>
次に示すのは、Oracle データベースまたは DB2 データベースで ping 照会として使用されるストアード・プロシージャー呼び出しの例 (sampleSP) です。
call sampleSP( )
ストアード・プロシージャー呼び出しには出力パラメーターを指定できないことに注意してください。データベースが入力パラメーターを要求する場合には、入力値を ping 照会の一部として指定する必要があります。例えば、次のようになります。
Call checkproc(2)
デフォルト値はありません。詳細については、データベース接続不能の処理および アプリケーションへの接続不可を参照してください。
コネクターがポーリング間隔ごとにデータベース表で検索する行の数。許容値は 1 から 500 です。
デフォルトは、1 です。
着信した固有 ID のシーケンスを固有 ID 表に保存するかどうかを指定します。
true に設定されている場合、固有 ID は、ビジネス・オブジェクトが宛先アプリケーションで正常に処理されるまでコミットされません。固有 ID 表へのアクセスを試みる他のプロセスは、いずれも、トランザクションがコミットされるまで待機しなければなりません。
false に設定されている場合、固有 ID は、ビジネス・オブジェクトから要求された時点でコミットされます。ビジネス・オブジェクトの処理と固有 ID の処理には、それぞれに専用のトランザクション・ブロック (コネクターから見て内部的なもの) が用意されます。ただし、これが可能なのは、固有 ID 表に関連するトランザクションに、専用の接続が用意されている場合だけです。
PreserveUIDSeqプロパティーが false に設定されている場合、実行時に開いておくことができるデータベース接続の数は、この値に 2 を加えた数になります。
デフォルト値は true です。
このプロパティーの値は整数 (秒) であり、すべての Retrieve の QueryTimeOut を指定された秒数に設定します。値を指定しない場合は、照会にはタイムアウトが設定されないことを意味します。指定した秒数よりも照会に時間がかかる場合は、データベースは、取り込まれる SQL 例外を作成します。関連するメッセージは、ログ・ファイルに記録されます。
デフォルト値はありません。
データベースとのセッションのそれぞれを初期化する SQL ステートメント。コネクターは、始動時に照会を取得し実行します。この照会では戻り値を取得できません。このプロパティーに関しては、名前は必須ですが、値は必須ではありません。
デフォルト値はありません。
特別な処理の際にコネクターに使用させる RDBMS を指定します。値を指定しなければ、コネクターが処理を正常に実行できません。
デフォルトは Oracle です。
ReplaceStrList プロパティーに指定されている文字が使用されている箇所のすべてで、同じプロパティーに指定されている置換ストリングを使って置換を行うかどうかを、コネクターに対して指示します。コネクターは、各属性の AppSpecificInfo プロパティーに含まれる ESC=[true|false] パラメーターに値が指定されていない場合に限り、ReplaceAllStr を評価します。つまり、ESC パラメーターが指定されている場合は、このパラメーターの値が ReplaceAllStr プロパティーに設定されている値よりも優先されます。ReplaceAllStr の値をコネクターに使用させるには、ESC パラメーターが指定されていないことを確認してください。
ReplaceAllStr のデフォルト値は false です。
1 つの置換対象文字、1 つの文字区切り文字、および 1 つの置換ストリングで構成された置換セットを、1 つ以上指定します。ここに指定された内容の置換をコネクターが属性値に対して実行するのは、属性の AppSpecificInfo プロパティーの ESC=[true|false] パラメーター、またはコネクターの ReplaceAllStr プロパティーに値が指定されている場合に限られます。
この属性の構文は、次のとおりです。
single_char1,substitution_str1[:single_char2,substitution_str2[:...]]
ここで、以下のように説明されます。
例えば、単一のパーセント記号 (%) を二重のパーセント記号 (%%) で置換し、脱字記号 (^) を ¥ と脱字記号の組み合わせ (¥^) で置き換える必要があるとします。StrDelimiter には、デフォルトではコンマ (,) が文字区切り文字として指定され、コロン (:) が終了区切り文字として指定されています。これらのデフォルトの区切り文字を変更しない場合は、次のストリングを ReplaceStrList の値として使用してください。
%,%%:^,¥^
コネクターが更新操作中にデータのロックに失敗した場合にその操作をコネクターに再試行させる回数と間隔 (秒単位) を指定します。
コネクターは、更新を実行する前に、その更新に関連する行をロックして、最新データの検索を試みます。該当の行をロックできない場合には、この構成プロパティーに指定されている回数と間隔に応じて、ロックを再試行します。このプロパティーに指定されている値の範囲内でロックを実施できなかった場合、コネクターは最終的にタイムアウトになります。
値は、「カウント, 秒単位の間隔」の形式で指定します。例えば、3,20 という値を使用すると、20 秒間隔で 3 回再試行するように指定したことになります。
デフォルトは 3,20 です。
このプロパティーは、結果セットが空の場合でも、出力パラメーターを戻すために使用します。
RetrieveSP の場合は、結果セットが戻されます。結果セットが空の場合は、ビジネス・オブジェクトは作成されず、プロシージャー呼び出しによって戻される出力パラメーターは検索できません。ただし、ReturnDummyBOForSP が true の場合は、出力パラメーターおよび入出力パラメーターからの値を対応する属性に取り込んだ、ダミーのビジネス・オブジェクトが戻されます。
デフォルト値は false です。
データベースへのコミットが実行される時を指定します。true の場合は、コミットはイベントの処理後、1 回だけ行われます。false の場合は、標準の動作が行われます。つまり、データベースへのコミットは、イベント処理の段階ごとに行われます。
デフォルト値は false です。
このプロパティーは、イベント表とアーカイブ表での検索を、特定のスキーマの範囲内に制限します。このプロパティーが追加されていない場合や空のままである場合には、コネクターはユーザーがアクセスできるスキーマをすべて検索します。この SchemaName は、イベント表やアーカイブ表にアクセスする照会が作成されるときにも使用されます。
Oracle データベースでは、スキーマ名がサポートされています。
デフォルト値はありません。
このプロパティーは、ポーリング呼び出しのたびに実行するストアード・プロシージャーを指定します。プロパティー SPBeforePollCall に値 (ストアード・プロシージャー名) が指定されている場合、コネクターは、各ポーリング呼び出しの開始時に、指定されているストアード・プロシージャーを呼び出し、コネクター・プロパティー ConnectorID および PollQuantity の値を渡します。呼び出されたプロシージャーは、PollQuantity に指定されている数の行を更新します (状況値が 0 で connector_id が null の行の connector_id 列を、ConnectorID の値に設定します)。これにより、コネクターのロード・バランシングが可能になります。
ReplaceStrList プロパティーで使用する文字区切り文字と終了区切り文字を指定します。
これらの区切り文字の一方または両方に、好みの文字を指定することができます。このとき、指定した文字の間に、スペースなどの文字を挿入してはいけません。
デフォルト値は、間を空けずに並べたコンマとコロン (,:) です。
このプロパティーを指定すると、コネクターの各動詞操作のタイミングを調べ、問題の有無を判断することができます。使用可能な設定値は、次のとおりです。
0 (タイミング統計なし)
1 (階層ビジネス・オブジェクト全体レベルの動詞操作の開始時と終了時にタイミングを表示する)
2 (階層ビジネス・オブジェクトに含まれる個々のビジネス・オブジェクトの動詞操作の開始時と終了時にタイミングを表示する)
タイミング・メッセージは、トレース・メッセージではなくログ・メッセージです。トレース・レベルに関係なく、オン/オフを切り替えることができます。
デフォルト値は 0 です。
固有 ID の生成に使用された値のうち最新のものを格納するテーブルを指定します。デフォルトでは、このテーブルの列は 1 つです (ID 用)。このテーブルをカスタマイズして、UID の生成を必要とする属性ごとに列を 1 つずつ追加することができます。
デフォルト値は xworlds_uid です。
コネクターは、UseDefaults が true に設定されている場合やまったく設定されていない場合には、ビジネス・オブジェクトの必須属性のそれぞれで、有効な値またはデフォルト値が指定されているかどうかを検査します。値が指定されている場合には Create が正常に行われますが、指定されていない場合には失敗します。
コネクターは、UseDefaults が false に設定されている場合には、ビジネス・オブジェクトの必須属性のそれぞれで、有効な値が指定されているかどうかのみを検査します。有効な値が指定されていない場合、Create 操作が失敗します。
デフォルト値は false です。
コネクターは、UseDefaultsForCreatingChildBOs が true に設定されている場合やまったく設定されていない場合には、ビジネス・オブジェクトの必須属性のそれぞれで、有効な値またはデフォルト値が指定されているかどうかを検査します。値が指定されている場合には Create が正常に行われますが、指定されていない場合には失敗します。
コネクターは、UseDefaultsForCreatingChildBOs が false に設定されている場合には、ビジネス・オブジェクトの必須属性のそれぞれで、有効な値が指定されているかどうかのみを検査します。有効な値が指定されていない場合、Create 操作が失敗します。
UseDefaultsWhenPolling が true に設定されている場合は、ビジネス・オブジェクトがデータベースから検索されてサーバーにディスパッチされる前に、デフォルト値がビジネス・オブジェクト内に設定されます。
UseDefaultsWhenPolling が false に設定されている場合は、ビジネス・オブジェクトがデータベースから検索されてサーバーにディスパッチされる前に、デフォルト値がビジネス・オブジェクト内に設定されることはありません。
デフォルト値は true です。