8.3.4 FTPサーバのファイルリストの取得
この転送パターンでは,FTPクライアントまたはサービスリクエスタからリストコマンドを使用して,FTPサーバのファイルリストを取得しています。
(1) ファイルリストを作業フォルダに出力する場合
FTPサーバから取得したファイルリストやファイル操作アダプタで取得した共通フォルダ内のファイルリストを作業フォルダに出力して,FTPクライアントに送信する例について説明します。
図中の制御,リストデータ,およびビジネスプロセスの処理の流れについて説明します。次の番号は,図中の番号と対応しています。
-
FTPクライアントがリストコマンドを実行します。
-
リストコマンドを受け取ったFTPインバウンドアダプタがFTP受付を呼び出します。
-
FTP受付が作業フォルダを作成します。
-
FTP受付がビジネスプロセスを呼び出します。このとき,FTPクライアントから受け取ったFTPコマンドの情報などは,要求電文に格納されてビジネスプロセスに渡されます。
-
ビジネスプロセスからFTPアダプタが呼び出されたあと,FTPアダプタはFTPサーバからファイルリストを取得し,作業フォルダ内に中間ファイルとして出力します。
-
ビジネスプロセスからファイル操作アダプタが呼び出されたあと,ファイル操作アダプタは作業フォルダ内の中間ファイルを読み込んで,レイアウト変換やコード変換などの処理をします。共通フォルダ内のファイルリストを取得する場合は,ファイル操作アダプタのファイル一覧書き込みオペレーションでファイルリストを作業フォルダ内に中間ファイルとして出力します(ファイル一覧書き込みオペレーションの詳細は,「8.7.10 ファイル一覧書き込みオペレーション」を参照してください)。
-
ビジネスプロセスで応答アクティビティが実行されたあと,FTP受付に中間ファイルの情報を含んだ応答電文が渡されます。
-
応答電文で示された中間ファイルのデータが,作業フォルダからFTPクライアントに転送されます。
-
FTP受付が作業フォルダおよび作業フォルダ中の中間ファイルを削除します。
-
FTP受付からFTPインバウンドアダプタに応答を返します。
-
応答を受け取ったFTPインバウンドアダプタは,FTPクライアントにリストコマンドの実行結果を返します。
(2) ファイルリストを応答電文に出力する場合
FTPサーバから取得したファイルリストを応答電文に出力して,ビジネスプロセスで処理する例について説明します。
図中の制御,リストデータ,およびビジネスプロセスの処理の流れについて説明します。次の番号は,図中の番号と対応しています。
-
サービスリクエスタがリストコマンドを要求するリクエストを実行します。
-
標準受付(Webサービス)がビジネスプロセスを呼び出します。このとき,サービスリクエスタから受け取ったFTPコマンドの情報などは,要求電文に格納されてビジネスプロセスに渡されます。
-
ビジネスプロセスからFTPアダプタもしくはファイル操作アダプタを呼び出します。ファイル操作アダプタの場合は,ファイル一覧取得オペレーションで共通フォルダ内のファイルリストを応答電文に格納します(ファイル一覧取得オペレーションの詳細は,「8.7.9 ファイル一覧取得オペレーション」を参照してください)。
-
3.で呼び出したアダプタはFTPサーバからファイルリストを取得したあと,メモリに保持して応答電文に格納します。
-
3.で呼び出したアダプタの応答電文のリストデータをJava呼出アクティビティなどの要求電文で取得し,解析します。
-
ビジネスプロセスから標準受付(Webサービス)に応答電文を返します。
-
標準受付(Webサービス)はサービスリクエスタに応答を返します。