共通の構成タスク

このセクションでは、共通の構成タスクについて説明します。

イベント通知の指定

このセクションの内容は、以下のとおりです。

イベント・ディレクトリーおよび拡張子の指定

複数のタイプのビジネス・オブジェクトをコネクターに送信して処理するときに、各ビジネス・オブジェクト・タイプにトップレベル・メタオブジェクトが含まれる場合、EventDir および EventExt 属性に指定する値の組み合わせは、各ビジネス・オブジェクトのディレクトリー/拡張子のペアで固有でなければなりません。

つまり、2 つのビジネス・オブジェクト・タイプに同じイベント・ディレクトリーを指定する場合、これらのビジネス・オブジェクトに異なるイベント拡張子を指定する必要があります。また、2 つのビジネス・オブジェクト・タイプに同じ拡張子を指定する場合は、これらのビジネス・オブジェクトに異なるイベント・ディレクトリーを指定する必要があります。

例えば、MO_JTextConnector_Customer および MO_JTextConnector_Item メタオブジェクトを作成して、それぞれ Customer および Item ビジネス・オブジェクトに構成値を提供するとします。コネクターが同一ディレクトリー内で両方のビジネス・オブジェクトの入力ファイルを検索するように構成する場合 (EventDir 属性に同一パスを指定します)、EventExt 属性に異なる値を指定することによって入力ファイルを一意的に識別する必要があります。

したがって、EventDir 属性が Customers と Items 両方の C:¥temp¥event を評価する場合、2 つのビジネス・オブジェクトの EventExt 属性値が異なる必要があります (例えば、Customer 入力ファイルが in、Items 入力ファイルが inp)。

ポーリングの振る舞いの構成

ポーリングの振る舞いを構成するには、以下のステップを実行します。

  1. 以下の MO_JTextConnector_Default メタオブジェクトの属性を構成します。
  2. Connector Configurator Express を使用して次のコネクター・プロパティーを構成します。
  3. イベント・ディレクトリーに読み取りアクセス権を設定します。

イベント・アーカイブの指定

イベント・ファイル内で正常に処理されたビジネス・オブジェクトがそのすべてであるか一部かによって、JText コネクターは、正常に処理されたビジネス・オブジェクトのアーカイブ・ファイルを作成するときに異なる拡張子を使用します。また、コネクターは、処理に失敗したりアンサブスクライブされたビジネス・オブジェクトをさまざまな名前のアーカイブ・ファイルに書き込みます。

このセクションの内容は、以下のとおりです。

ローカル・アーカイブ・ファイル名

アーカイブ拡張子属性の出荷時のデフォルト値を保存する場合、コネクターは以下に示す名前のアーカイブ・ファイルを作成します。

ローカル・アーカイブの構成

コネクターをアーカイブのために構成するには、以下のステップを実行します。

  1. 以下の MO_JTextConnector_Default メタオブジェクトの属性を構成します。
  2. Connector Configurator Express を使用して ArchivingEnabled コネクター・プロパティーを構成します。
  3. アーカイブ・ディレクトリーに書き込みアクセス権を設定します。

要求処理の指定

JText コネクターが、(各ビジネス・オブジェクト・インスタンス内で) 動的に名前を付けられるファイル、または (メタオブジェクトによって) 静的に名前を付けられるファイルにビジネス・オブジェクトを書き込むように設定することができます。また、コネクターが静的に生成するファイル名を戻すように設定することもできます。この機能は、固有のシーケンス番号付きのファイル名を取得するのに役立ちます。このセクションに含まれるサブセクションは、以下のとおりです。

動的なファイルの命名

コネクターが各ビジネス・オブジェクト・タイプに動的に出力ファイル名を生成するように設定するには、動的子メタオブジェクトを作成します。子メタオブジェクトを使用して、以下のことを実行します。

重要:
動的子メタオブジェクトを作成して、コネクターが出力ファイル名を生成または戻すようにすることに加え、マップまたはコラボレーション・ロジックを変更して、動的子メタオブジェクトの InFileName 属性に各ビジネス・オブジェクトのパスとファイル名、および必要な場合は固有のシーケンス番号を挿入する必要があります。

詳細については、動的子メタオブジェクトの使用を参照してください。

コネクターがメタオブジェクトを処理する方法の詳細については、要求処理を参照してください。

コネクターを構成して動的に生成された出力ファイル名を使用する方法の詳細については、"出力ファイルの構成"を参照してください。

静的なファイルの命名

メタオブジェクトを使用して出力ファイル名を指定する場合、変更内容を有効にするにはコネクターを再始動する必要があります。コネクターが任意のタイプのすべてのビジネス・オブジェクトを単一ファイルに追加するか、またはビジネス・オブジェクトごとに別々のファイルを作成するように指定できます。

出荷時のデフォルト構成を使用する場合、コネクターは処理するビジネス・オブジェクトごとに出力ファイルを作成します。コネクターは受信したビジネス・オブジェクトの出力ファイルに名前を付け、シーケンス番号を追加して名前を固有のものにします。また、.out という拡張子を付けます。例えば、Customer および Item というビジネス・オブジェクトを受信した場合、コネクターはこれらのデータをそれぞれ Customer_1.out および Item_1.out という出力ファイルに書き込みます。出力ファイル名の取得の詳細については、"ファイル名の戻り"を参照してください。シーケンス番号を保管するファイルの詳細については、OutputLogを参照してください。

メタオブジェクトを使用して出力ファイル名を構成するには、以下の手順を実行します。

  1. 以下の MO_JTextConnector_Default メタオブジェクトの属性を構成します。
  2. 出力ディレクトリーに書き込みアクセス権を設定します。

注:
コネクターが、さまざまなビジネス・オブジェクトにさまざまなデータ・フォーマットやファイル命名規則を使用する場合、特定のビジネス・オブジェクトにメタオブジェクトを作成する必要があります。

ファイル名の戻り

コネクターが生成したファイル名を戻すように設定するには、以下のことを実行します。

注:
コネクターは、FTP サーバーを介してファイルを処理する場合でも、InFileName 属性にローカル・パスのみを設定します。
重要:
動的子メタオブジェクトを作成して、コネクターが出力ファイル名を生成または戻すようにすることに加え、マップまたはコラボレーション・ロジックを変更して、動的子メタオブジェクトの InFileName 属性に各ビジネス・オブジェクトのパスとファイル名、および必要な場合は固有のシーケンス番号を挿入する必要があります。

ローカル処理とリモート処理の違い

コネクターは、リモートでファイルを処理する方法は、ローカルでの処理とほぼ同じです。ただし、いくつかの違いがあります。

詳細については、リモート・アーカイブの指定を参照してください。

出力ファイルの構成

表 10 は、出力ファイルで使用できる構成オプションを示しています。

表 10. 出力ファイルの指定
要求される出力条件 属性/プロパティーに必要な構成 属性/プロパティーの値
任意のタイプのビジネス・オブジェクトがファイルに追加され、その絶対パスとファイル名が実行時にビジネス・オブジェクトの属性から指定される。 動的子メタオブジェクトを使用する
AppSpecificInfo (ビジネス・オブジェクト・レベル) cw_mo_JTextConfig = DynChildMOName
動的子メタオブジェクトの場合: OutFileName ユーザー指定のパス名およびファイル名
FileWriteMode
 
a または append
任意のタイプのビジネス・オブジェクトが出力ファイルを上書きし、その絶対パスとファイル名が実行時にビジネス・オブジェクトの属性から指定される。 動的子メタオブジェクトを使用する
AppSpecificInfo (ビジネス・オブジェクト・レベル) cw_mo_JTextConfig = DynChildMOName
動的子メタオブジェクトの場合: OutFileName ユーザー指定のパス名およびファイル名
FileWriteMode
 
o または overwrite
任意のタイプのビジネス・オブジェクトが自身の固有ファイルに書き込まれ、そのファイル名がビジネス・オブジェクトの名前と生成された固有のシーケンス番号から指定される。
OutputDir
 
ユーザー指定のパス名

FileSeqEnabled
 
true
 

OutputFileName
 
Native
 
コネクターが生成したファイル名をすべて戻す。任意のタイプのビジネス・オブジェクトが自身の固有ファイルに書き込まれ、そのファイル名がビジネス・オブジェクトの名前と生成された固有のシーケンス番号から指定される。 動的子メタオブジェクトを使用する


AppSpecificInfo (ビジネス・オブジェクト・レベル) cw_mo_JTextConfig = DynChildMOName
InFileName (動的子メタオブジェクトの場合)

CxIgnore
 
FileWriteMode (動的子メタオブジェクトの場合)

該当なし
次のメタオブジェクト構成を使用する。MO_JTextConnector_businessobjectname:
OutputDir
 
ユーザー指定のパス名
FileSeqEnabled
 
true
 
OutputFileName
 
Native
 
任意のタイプのすべてのビジネス・オブジェクトが、ユーザー指定の名前が付いた単一ファイルに追加される。
FileSeqEnabled
 
false
 

OutputFileName
 
ユーザー指定のパス名およびファイル名
任意のタイプのビジネス・オブジェクトが自身の固有ファイルに書き込まれ、そのファイル名がユーザー指定の名前と固有のシーケンス番号から構成される。
FileSeqEnabled
 
true
 
コネクターが複数のタイプのビジネス・オブジェクトを処理していて、OutputFileName にストリング Native 以外が設定されている場合、各ビジネス・オブジェクトに自身のトップレベル・メタオブジェクトを持たせる必要があります。詳細については、"出力ファイル名の指定"を参照してください。
OutputFileName
 
ユーザー指定のパス名およびファイル名
任意のタイプのビジネス・オブジェクトが出力ファイルを上書きし、そのファイル名がビジネス・オブジェクト名から指定される。
OutputDir
 
ユーザー指定のパス名

FileSeqEnabled
 
false
 

OutputFileName
 
Native
 
コネクターが生成したファイル名をすべて戻す。任意のタイプのビジネス・オブジェクトが自身の固有ファイルに書き込まれ、そのファイル名がユーザー指定の名前と固有のシーケンス番号から構成される。 動的子メタオブジェクトを使用する


AppSpecificInfo (ビジネス・オブジェクト・レベル) cw_mo_JTextConfig = DynChildMOName
InFileName (動的子メタオブジェクトの場合)
CxIgnore
 
FileWriteMode (動的子メタオブジェクトの場合)

該当なし
次のメタオブジェクト構成を使用する。MO_JTextConnector_businessobjectname:
FileSeqEnabled
 
true
 
OutputFileName
 
ユーザー指定のパス名およびファイル名

複数のイベント・ファイルまたは複数のイベント・ディレクトリーの指定

コネクターを構成して、指定された拡張子を持つファイルのみを取り出すことができます。また、コネクターを構成して、複数のディレクトリーからファイルを取り出すこともできます。

重要:
EventExt 属性にアスタリスク (*) を使用すると、拡張子がサポートされていなくても、単一イベント・ディレクトリー内のすべてのファイルをポーリングできます。

ビジネス・オブジェクト・タイプごとに別々のイベント・ディレクトリーを指定するには、以下のステップを実行します。

  1. サポートされるビジネス・オブジェクトごとに個別のメタオブジェクトを作成します。例えば、MO_JTextConnector_CustomerMO_JTextConnector_Item を作成します。詳細については、"特定のビジネス・オブジェクトの JText メタオブジェクトの作成"を参照してください。
  2. 各メタオブジェクトの EventDir 属性に適切なディレクトリーを指定します。

注:
JText コネクターは、イベント・ファイルをタイム・スタンプの古いものから順に、ロケーションに関係なく処理します。つまり JText コネクターは、タイム・スタンプの日時順に別々のディレクトリーにあるファイルを処理します。

特定のビジネス・オブジェクトのポーリング

JText コネクターの構成は、さまざまな要素によって異なります。例えば、すべてのイベント・ファイルが単一ディレクトリーにあるか、すべて同じ拡張子が付いているか、含まれるビジネス・オブジェクトが単一か複数か、含まれるビジネス・オブジェクトのタイプが単一か複数か、各ビジネス・オブジェクトを単一行で表しているか複数行で表しているか、などです。

このセクションの内容は、以下のとおりです。

EndBODelimiter ベースの解析手法の使用

EndBODelimiter メタオブジェクト属性に値が指定されない場合、コネクターは以下のことを実行します。

イベント・ファイルに 1 つのビジネス・オブジェクトしか含まれない場合、この属性に EOF (ファイル終わり) を指定できます。

EndBODelimiter 属性の値に空でないストリングを設定すると、ストリングはすべてのファイルのビジネス・オブジェクト区切り文字と見なされます。値が設定されていないかクリアされている場合、コネクターは <EndBO:BOName> を区切り文字と見なします。

重要:
DataProcessingModeBinary に設定されていて、EndBODelimiter の値が指定されていない場合、JText はデフォルトの EndBODelimiter FF01 (2 バイト) に設定し、デフォルトの EndOfFileDelimiterFF02 (2 バイト) に設定します。

表 11 は区切り文字のオプションを示しています。

表 11. EndBODelimiter 属性の使用
条件 区切り文字
ファイルに 1 つ以上のビジネス・オブジェクト・タイプのビジネス・オブジェクト・ストリングが 1 つ以上含まれているか、同一タイプのビジネス・オブジェクトのビジネス・オブジェクト・ストリングが複数含まれている。各ストリングの行が複数になっている。 <EndBO:BOName>または EOL またはユーザー指定値

  • ビジネス・オブジェクト・ストリングの間に改行があるときは、その数だけセミコロンで区切られた EOL を指定します。
  • EOL とともにカスタム区切り文字を指定します。カスタム区切り文字を EOL とともに使用するときは、常に最初の要素にする必要があります。次の例は有効です。customEndBO;EOL;EOL次の例は有効ではありませんEOL;customEndBO;EOL
各ファイルにビジネス・オブジェクト・ストリングが 1 つのみ含まれる。 EOL Fまたはユーザー指定値
  • ビジネス・オブジェクト・ストリングの間に改行があるときは、その数だけセミコロンで区切られた EOL を指定します。
  • 入力ストリングに必要な場合は、EOL および EOF とともにユーザー指定の区切り文字を指定します。カスタム区切り文字を EOL とともに使用するときは、常に最初の要素にする必要があります。次の例は有効です。customEndBO;EOL;EOL次の例は有効ではありませんEOL;customEndBO;EOL
ファイルに 1 行につき 1 つずつ複数のビジネス・オブジェクト・ストリングが含まれる。
EOL
 

ファイルに同一タイプのビジネス・オブジェクトのビジネス・オブジェクト・ストリングが複数含まれている。各ストリングは複数行に渡り、ビジネス・オブジェクト・ストリング間に区切り文字がない。
None
 
出荷時のデフォルト・メタオブジェクトまたはカスタム・メタオブジェクトを使用できます。
注:
このオプションを使用できるのはサービス呼び出し要求時のみで、イベント通知には使用できません。この区切り文字を他の区切り文字とともに使用しないでください。

注:
ソース・ファイルに空の行が含まれる場合、コネクターはそれらを無視します。

EndBODelimiter の値としての印刷不可能文字の使用

複数のディレクトリーでファイルをポーリングするには、サポートされるビジネス・オブジェクトごとにメタオブジェクトを作成する必要があります。各メタオブジェクトの EndBODelimiter 属性に指定する値は、ソース・ファイルに含まれるビジネス・オブジェクトが単一か複数かによって異なります。

注:
コネクターは、指定したストリングの大文字小文字を区別します (EOL および EOF 区切り文字を除く)。

メタオブジェクトの作成の詳細については、"特定のビジネス・オブジェクトの JText メタオブジェクトの作成"を参照してください。

FixedBOSize ベースの解析手法の使用

このメタオブジェクト・プロパティーが有効になるのは、以下の両方に該当する場合に限られます。

  1. イベント処理を実行中である。
  2. DataProcessingModeBinary に設定されている。

このメタオブジェクト・プロパティーが有効な値とともに指定されている場合、このプロパティーが EndBODelimiter プロパティーに優先し、ユーザーは従来の区切り文字ベースのビジネス・オブジェクト解析に代わる解析を行うことができます。このプロパティーを使用すると、コネクターは一定数のバイトを 1 つのビジネス・オブジェクトに対応付けます。例えば、あるファイルが 300 バイトで構成されており、FixedBOSize プロパティーが 100 に設定されている場合、JText アダプターは、バイナリー対応のデータ・ハンドラーを使用してこのファイルを 3 つの 100 バイト長のパケットに変換し、InterChange Server Express に送信します。

FixedBOSizeEndBODelimiter の両方に値が設定されている場合、Jtext は FixedBOSize に基づいてファイル解析を行い、EndBODelimiter を無視します

リモート FTP ファイル・システムの指定

このセクションでは、JText アダプターを構成して、イベント処理および要求処理にリモート FTP ファイル・システムを使用する方法について説明します。

重要:
コネクターがリモート FTP ファイル・システムを使用するためには、EventDir 属性 (イベント処理用) または OutputDir 属性 (要求処理用) に FTP URL を指定する必要があります。また、コネクターを使用して FTP 操作を実行する前に、すべてのファイアウォール問題を解決する必要があります。

このセクションの内容は、以下のとおりです。

リモートのイベント処理

コネクターを構成してイベント処理用にリモート FTP ファイル・システムを使用するには、FTP URL、FTP ログイン情報、コネクターがリモート・ディレクトリーからダウンロードしたイベント・ファイルを格納するローカル・ディレクトリー、アーカイブ情報、および FTP サーバーが使用不能な場合のコネクターの振る舞いに関する情報を指定する必要があります。このセクションでは、これらの構成と追加のオプション構成について説明します。

FTP URL およびログイン情報の指定

コネクターは、EventDir メタオブジェクト属性で指定したディレクトリーからイベントをポーリングします。コネクターを構成して、イベント処理用にリモート FTP ファイル・システムを使用するには、この属性の値として FTP URL を指定します。FTP URL は、IETF 標準に準拠している必要があります。

URL に FTP サーバーを指定するほか、オプションで以下の情報を EventDir メタオブジェクト属性に指定することができます。

重要:
FTP の値は、静的トップレベル・メタオブジェクトまたは動的子メタオブジェクトのどちらにも指定できます。ユーザー名とパスワードがいずれのメタオブジェクト属性にも指定されていない場合、コネクターは FTP サーバーへの接続の試行を終了します。詳細については、動的子メタオブジェクトの使用を参照してください。

以下の例は、EventDir 属性値の 3 つの異なるフォーマットを示しています。

URL および必須値のみ:

ftp://ftp.companyA.com
 

URL およびオプションのユーザー名とポート番号:

ftp://companyA:admin@ftp.companyA.com:1433
 

URL およびオプションのユーザー名、ポート番号、リモート・イベント・ディレクトリー:

ftp://companyA:admin@ftp.companyA.com:1433/temp/JTextConn/Default/Event
 

MVS 関連 FTP セットアップの URL:

ftp://ftpuser:ftppwd@ftpserver.in.ibm.com:21/home/ftpuser/JText/event
 

ローカル・ディレクトリーの指定

FTP URL および関連するログイン情報を指定するほかに、コネクターがリモート・ディレクトリーからダウンロードしたイベント・ファイルを格納するローカル・ディレクトリーを指定する必要があります。ローカル・ディレクトリーを指定するには、FTPLocalEventDir メタオブジェクト属性を使用します。

重要:
コネクターが EventDir に適切な FTP URL を見つけても、FTPLocalEventDir メタオブジェクト属性がなかったり、この属性に無効な値やブランクが指定されている場合、コネクターは始動しません。コネクターがローカルに実行するよう構成されている場合、FTPLocalEventDir 属性は評価されません。

リモート・アーカイブの指定

コネクターによるリモート・アーカイブの処理方法の指定には、いくつかのオプションがあります。リモート・アーカイブ・ディレクトリーを指定するには、FTPArchiveDir メタオブジェクト属性を使用します。この属性により、FTP サーバーにあるアーカイブ・ディレクトリーの相対パスを指定します。ディレクトリーは既存のものである必要があります。この属性を使用したアーカイブの指定には、いくつかのオプションがあります。

ファイル名へのタイム・スタンプの追加 (リモート FTP サーバー対応)

順次データ・セットを使用するホスト・ファイル・システム (MVS) のサポートが拡張され、ファイル名の重複を回避するためにタイム・スタンプを追加できるようになりました。MVS の場合、データ・セット名やレコード・セット名に特殊文字 (「_」など) を使用できません。Windows プラットフォームや その他のプラットフォームでは、ファイルのアーカイブ時に、オリジナルのファイル名にタイム・スタンプが追加されます。これにより、アーカイブ・フォルダー内でのファイル名の重複が回避され、既存ファイルの上書きが防止されています。

MVS システムでは、上記の制限に対処するため、次のフォーマットが使用されます。


イベント・ファイル: Test.in

アーカイブ・ファイル: Test.TSyyyyMM.TSDDHHMM.TSSsSss

各部分の意味: yyyy -- 年

MM -- 月

DD -- 日

HH -- 時間

MM -- 分

Ss -- 秒

Sss -- ミリ秒


MVS プラットフォームでは、データ・セット名とレコード・セット名に使用される区切り文字は「.」 (ドット) であり、1 つのデータ・セット名またはレコード・セット名に使用できる「.」(ドット) の数は最大 6 個です。データ・セット名またはレコード・セット名では、「.」 (ドット) によって区切られている各部分の文字数が 8 文字を超えてはならず、全文字数が 44 文字を超えてはなりません。このフォーマットのファイル名の例を、以下に示します。


FTPRenameExt -- ARCHIVE

アーカイブ・ファイル -- (SAMPLE).ARCHIVE.TS200304.TS290535.TS42234

注:
JText アダプターは、MVS の PDS をサポートしていません。これは、PDS のメンバーは、アーカイブ時にタイム・スタンプを追加してリネームすることができないからです。

リモート・ポーリングの指定

FTPPollFrequency 構成プロパティーを使用して、コネクターが FTP サーバーにポーリングする頻度を標準ポーリング・サイクル数で設定できます。この設定は、コネクターが次のポーリング・サイクルを開始するときに、まだローカル・イベント・ディレクトリーからファイルを読み取っている場合に便利です。

例えば、PollFrequency10000 に設定され、FTPPollFrequency6 に設定されている場合、コネクターはローカル・イベント・ディレクトリーに 10 秒ごとにポーリングし、リモート・ディレクトリーに 60 秒ごとにポーリングします。コネクターが FTP ポーリングを実行するのは、このプロパティーに値を指定した場合のみです。FTPPollFrequency0 またはブランクが設定された場合、コネクターは FTP ポーリングを実行しません。

詳細については、JText コネクターのパフォーマンス調整を参照してください。

コネクターがリモート・サイトからイベントを処理する方法

リモート・サイトからイベントをポーリングする場合、コネクターは以下のステップを実行します。

  1. メタオブジェクト属性またはデフォルト値から、サーバー名、ポート番号、ユーザー名、パスワード、およびリモート・イベント・ディレクトリーを取得します。
  2. リモート FTP サイトへの接続を確立して、リモート・ディレクトリーからイベント・ファイルを取得します。
  3. リモート・ディレクトリーから、FTPLocalEventDir メタオブジェクト属性で指定したローカル・ディレクトリーにイベント・ファイルをダウンロードします。
    注:
    コネクターが FTP を使用してイベントを処理するには、この属性に値が設定されていなければなりません。
  4. ローカル・ディレクトリーにポーリングします。

図 6 は、ローカルおよびリモートのイベント処理を示しています。

図 6. ローカルおよびリモートのイベント通知操作


メインフレーム上のファイルの識別: オプション構成

FTPEventFileMask 属性を使用して、 Windows またはその他のシステムに適用されるのと同じ命名標準に準拠しないメインフレーム上でファイル拡張子を識別します。この属性に値が設定されないと、コネクターは EventExt 属性で指定された値を使用します。

FTPEventFileMask に値を設定するときには、ワイルドカード文字を組み込むことができます。次の例は、この属性に使用できるいくつかのフォーマットです。

     ACT.Z1UC.*
 

     ACT.*.INPT
 

     *.Z1UC.INPT
 

コネクターは、リモート・サイトで FTPEventFileMask に指定された基準に一致するファイルを複数見つけると、以下のことを実行します。

  1. 指定されたすべてのリモート・イベント・ファイルを、FTPLocalEventDir 属性で指定されたディレクトリーにダウンロードします。
  2. FTPRenameExt メタオブジェクト属性に指定された値を持つリモート・ファイルの拡張子を変更します。ファイル名を変更することによって、次のポーリング・サイクルに同じファイルをポーリングすることがなくなります。
  3. FTP サーバーから接続を切断します。
  4. FTPEventFileMask メタオブジェクト属性に指定されたディレクトリー内で、ローカルにファイルを処理します。

イベント処理の構成操作の要約

コネクターを構成して、イベント処理用にリモート FTP ファイル・システムを使用するには、以下の構成値を指定します。

リモートの要求処理

コネクターを構成してイベント処理用にリモート FTP ファイル・システムを使用するには、FTP URL、FTP ログイン情報、コネクターがローカル・ディレクトリーからアップロードした要求ファイルを格納するリモート・ディレクトリーを指定する必要があります。このセクションでは、これらの構成と追加のオプション構成について説明します。

FTP URL およびログイン情報の指定

コネクターは、OutputDir メタオブジェクト属性で指定したディレクトリーにサービス呼び出し要求ファイルをアップロードします。コネクターを構成して要求処理用にリモート FTP ファイル・システムを使用するには、この属性の値として FTP URL を指定します。FTP URL は、IETF 標準に準拠している必要があります。

FTP URL のほかに、オプションで以下の情報を OutputDir メタオブジェクト属性に指定することができます。

重要:
FTP の値は、静的トップレベル・メタオブジェクトまたは動的子メタオブジェクトのどちらにも指定できます。ユーザー名とパスワードがいずれのメタオブジェクト属性にも指定されていない場合、コネクターは例外のスローによって終了します。詳細については、動的子メタオブジェクトの使用を参照してください。

以下の例は、OutputDir 属性値の 3 つの異なるフォーマットを示しています。

URL および必須値のみ:

ftp://ftp.companyA.com
 

URL およびオプションのユーザー名とポート番号:

ftp://companyA:admin@ftp.companyA.com:1433
 

URL およびオプションのユーザー名、ポート番号、リモート出力ディレクトリー:

ftp://companyA:admin@ftp.companyA.com:1433/temp/JTextConn/Default/Out
 

コネクターがリモート・サイトへのサービス呼び出し要求を処理する方法

コネクターが FTP 処理用に構成されている場合、サービス呼び出し要求を受け取ると以下のステップを実行します。

  1. メタオブジェクト属性またはデフォルト値から、サーバー名、ポート番号、ユーザー名、およびパスワードを取得します。
  2. リモート FTP サイトへの接続を確立して、ローカル・ディレクトリーからサービス呼び出し要求ファイルを置きます。
  3. ローカル・ディレクトリーからリモート・ディレクトリーに要求ファイルをアップロードします。
  4. リモート・サーバーから接続を切断します。

図 7 は、ローカルおよびリモートの要求処理を示しています。

図 7. ローカルおよびリモートの要求操作


要求処理の構成操作の要約

コネクターを構成して、要求処理用にリモート FTP ファイル・システムを使用するには、以下の構成値を指定します。

FTP 転送用にコネクターを構成する際の注意事項

以下の機能は、データの FTP 転送に適用されます。

データ・ハンドラーの指定

JText コネクターで使用されるデータ・ハンドラーを指定するには、以下のステップを実行します。

  1. JText コネクターが通信するアプリケーションで使用されるフォーマットを判別します。どのフォーマット・タイプでも、登録できるデータ・ハンドラー・クラスは 1 つだけです。
  2. 以下のトップレベル JText メタオブジェクトの子オブジェクトを構成します。

指定されたデータ・ハンドラーの変更

出荷時のデフォルト・データ・ハンドラーを (出荷時の別のデータ・ハンドラーまたはカスタム・データ・ハンドラーに) 変更するには、以下のことを実行します。

データ・ハンドラーの作成の詳細については、「データ・ハンドラー・ガイド 」を参照してください。

特定のビジネス・オブジェクトの JText メタオブジェクトの作成

特定のビジネス・オブジェクトの JText メタオブジェクトを作成するときは、メタオブジェクト名を変更して特定のビジネス・オブジェクトを示すようにします。例えば、Customer および Item ビジネス・オブジェクトのメタオブジェクトを作成するには、メタオブジェクトにそれぞれ MO_JTextConnector_Customer および MO_JTextConnector_Item と名前を付けます。

ヒント:
ファイルに書き込まれるすべてのビジネス・オブジェクトがまったく同じ構成の場合、デフォルト・メタオブジェクトを使用します。つまり、同じイベント・ディレクトリーにあり、同じ出力ディレクトリーに書き込まれるすべてのテキスト・ファイルは、同じデータ・ハンドラーを使用し、同じファイル拡張子を持ちます (または同じファイルに格納されます)。要求時に、コネクターが異なるビジネス・オブジェクトに必ず異なる処理を行うようにする場合、またはポーリングに特定の処理命令が必要な場合、独自のメタオブジェクトを作成します。特定のビジネス・オブジェクトに個別のメタオブジェクトを作成すると、コネクターは統合ブローカー要求とサブスクリプション送達操作の両方にそのメタオブジェクトを使用します。

メタオブジェクトを作成していないすべてのビジネス・オブジェクトは、デフォルトの MO_JTextConnector_Default メタオブジェクトの値で構成されます。このデフォルト・メタオブジェクトのビジネス・オブジェクト定義については、¥repository¥JText ディレクトリーを参照してください。

同一ファイルから異なるタイプの複数のビジネス・オブジェクトを読み取る

テキスト・ファイルに異なるタイプの複数のビジネス・オブジェクトが含まれている場合、MO_JTextConnector_Default メタオブジェクトを使用し、その EventExt および EventDir 属性がこのイベント・ファイルの格納先ディレクトリーを正しく示している必要があります。ファイル内の各ビジネス・オブジェクトは、同じ区切り文字で区切られていなければなりません。

出荷時のデータ・ハンドラーは、各ビジネス・オブジェクトの名前を入力ストリングから判別できます。つまり、デフォルトのトップレベル JText メタオブジェクトと出荷時のデータ・ハンドラーを使用すれば、<EndBO:BOName> 区切り文字を使用して、複数のビジネス・オブジェクト・タイプを含むファイル内で各タイプを識別する必要はありません。

カスタム・データ・ハンドラーを作成して、ビジネス・オブジェクト・ストリングをビジネス・オブジェクトに変換する場合、データ・ハンドラーがビジネス・オブジェクトのタイプを入力ストリングから解釈できるようにします。

ObjectEventID 属性値の指定

ビジネス・オブジェクト・ストリングに ObjectEventId 属性を追加する必要はありません。イベント通知ビジネス・オブジェクトの場合、コネクターによって ID が取り込まれないと、コネクター・フレームワークによってこれらのビジネス・オブジェクト属性が取り込まれます。

サービス呼び出し要求ビジネス・オブジェクトでは、ObjectEventId 属性は無視されるかファイルに書き込まれるストリングに組み込まれます。ObjectEventId 属性が出力ファイルに組み込まれるかどうかは、使用するデータ・ハンドラーによって異なります。

JText コネクターの 2 番目のインスタンスのセットアップ

JText コネクターに 2 番目のインスタンスをセットアップするには、以下のステップを実行します。

  1. JText コネクター・ディレクトリーおよびリポジトリー・ディレクトリーのコピーを作成し、名前を変更します。例えば、2 番目のコネクター定義に JText2 という名前を付けます。2 番目のディレクトリーを作成すると、ディレクトリー構造は以下のようになります。

    ¥connectors¥JText

    ¥connectors¥JText2

    ¥repository¥JText

    ¥repository¥JText2

  2. JText コネクターのすべてのメタオブジェクト (少なくとも 2 つあるはずです) をコピーし、ビジネス・オブジェクト名を変更します。例えば JText2 コネクターの場合、名前を MO_JTextConnector_BOName から MO_JText2Connector_BOName に変更します。

    メタオブジェクトをコピーする方法は 2 つあります。

  3. Connector Configurator Express でコネクターの定義をコピーし、この名前を JText2Connector に変更します。サポートされるメタオブジェクトおよびビジネス・オブジェクトを変更します。
  4. 新規定義ファイルをリポジトリーにコピーします。Business Object Designer Express を使用してビジネス・オブジェクト定義をリポジトリーにコピーするには、「ファイル」メニューから「サーバーに保管」サブメニューを選択します。または、InterChange Server Express で以下のステップを実行して、ビジネス・オブジェクト定義をオペレーティング・システムからリポジトリーにコピーします。
    1. ¥repository¥ReposVersion.txt ファイルの先頭から各定義ファイルの先頭にテキストをコピーします。
    2. 次の repos_copy コマンドを使用して、新規メタオブジェクトとビジネス・オブジェクトにコピーします。
      repos_copy -sServerName -iFileName
       
  5. 統合ブローカーの管理ユーティリティーをリフレッシュして、新規ビジネス・オブジェクトを確認します。
  6. Windows システムの場合、JText コネクターの既存のショートカットをコピーし、パラメーターを JText2 を参照するように変更し、JText ディレクトリーではなく、JText2 ディレクトリーを参照するように変更します。
  7. OS/400 システムの場合は、コンソールに新規コネクター・インスタンスを追加します。
  8. Linux システムの場合は、既存のコネクター・マネージャー・スクリプトのコピーを作成し、 JText2 を参照するようにパラメーターを変更します。
  9. 統合ブローカーを再始動します。
  10. ご使用のプラットフォームに応じて、以下のいずれかの操作を実行します。

JText コネクターのパフォーマンス調整

JText コネクターのポーリング・パフォーマンスを調整するには、以下のようにコネクター構成プロパティーを設定します。

要約すると、ポーリングのパフォーマンスを向上させる最善の方法は、PollQuantity、PollFrequencyおよび FTPPollFrequency が互いに補い合うように値を設定することです。

テスト用サンプル・ファイルの生成

JText コネクターで使用する入力ファイルに似たファイルを生成することができます。このファイルは、ソース・アプリケーションで出力フォーマットをセットアップするのに役立ちます。サンプル・ファイルはテストにも使用できます。

InterChange Server Express で、入力ファイルに似たファイルを生成する最も簡単な方法は以下のとおりです。

  1. ファイルに書き込まれるビジネス・オブジェクトを入力として扱い、宛先に送信するパススルー・コラボレーションを作成します。
  2. ビジネス・オブジェクトをサポートし、Test Connector でエミュレートできるコネクターにソース・ポートをバインドします。
  3. 宛先ポートを JText コネクターにバインドします。
  4. Test Connector にビジネス・オブジェクトのサンプル値を入力し、そのビジネス・オブジェクトを JText コネクターに送信します。JText コネクターは、構成されたフォーマットで出力ファイルに値を書き込みます。

このプロセスによって、単一ファイルに書き込まれた複数のビジネス・オブジェクトを確認でき、それをテストで入力として使用できます。

テスト用サンプル・ビジネス・オブジェクトの生成

JText コネクターで使用するビジネス・オブジェクトに似たビジネス・オブジェクトを生成することができます。値を持つビジネス・オブジェクトを生成して、テストに使用できます。

コネクターが自動的にビジネス・オブジェクトを生成するようにするには、GenerateTemplate 構成プロパティーを使用します。コネクターがサポートするビジネス・オブジェクトごとに、定義を生成できます。

コネクターは GenerateTemplate プロパティーの値を使用して、コネクターの始動時に、直列化したビジネス・オブジェクトのインスタンスを作成します。 直列化したビジネス・オブジェクトとは、データ・ハンドラーが作成するビジネス・オブジェクトのストリング表記です。Connector Configurator を使用して、このプロパティーのビジネス・オブジェクト名を指定します。

このプロパティーの構文は BOName;BOName です。ここで、BOName は特定のビジネス・オブジェクト名です。大文字小文字は区別されます。複数のビジネス・オブジェクトを指定するには、Customer;Item のように名前をセミコロンで区切ります。終了句読点は必要ありません。次にコネクターを始動するときに、これらのビジネス・オブジェクトのテンプレートが作成されます。

生成されるテンプレートには、出荷時のデフォルト値が含まれます。これらの値は、ビジネス・オブジェクト定義内のビジネス・オブジェクト属性用に設定されています。属性用に出荷時のデフォルト値がない場合、無視される (CxIgnore を使用) かブランクのままにされます (CxBlank を使用)。各単一カーディナリティーの子ビジネス・オブジェクトに 1 つの子ビジネス・オブジェクトが作成され、複数カーディナリティーのビジネス・オブジェクトに 2 つの等しい子ビジネス・オブジェクトのインスタンスが作成されます。

特定のビジネス・オブジェクトのテンプレートを生成するには、コネクターを始動します。コネクターは、出力ファイルと同じファイルにテンプレートを書き込みます。この機能を使用しない場合は、GenerateTemplate プロパティーを空のままにします。

Copyright IBM Corp. 2004