Hitachi

Cosminexus V11 BPM/ESB基盤 サービスプラットフォーム 開発ガイド 受付・アダプタ定義編


3.3.15 SFTPアダプタを定義する

SFTPアダプタの定義方法について説明します。

〈この項の構成〉

(1) 電文フォーマットの作成

SFTPアダプタの電文フォーマットの定義ファイルはサービスプラットフォームが提供するスキーマを使用します。そのため,電文フォーマットの定義ファイルの作成は不要です。

SFTPアダプタで使用する電文フォーマットの内容について説明します。

ファイルの格納場所は「<サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\SFTP\schema」です。

(a) SFTPアダプタの要求電文フォーマット

SFTPアダプタの要求電文フォーマットを,オペレーションごとに説明します。

●PUTオペレーション

ビジネスプロセスからSFTPアダプタに渡すPUTオペレーションの要求電文フォーマットを次に示します。ファイル名は「sftpadp_put_request.xsd」です。名前空間名は「http://www.hitachi.co.jp/soft/xml/cosminexus/csasftp/put_request」です。

表3‒109 要求電文フォーマット(PUTオペレーション)

タグ名

種別

出現回数※1

説明

<request>

1回

<host-ipaddr>

string

0または1回

接続するSFTPサーバのIPアドレスまたはホスト名です。

Windowsを使用する場合,ループバックIPアドレス(127.0.0.1またはlocalhost)を指定すると,SFTP接続に失敗する場合があります。実IPアドレスまたはホスト名を指定してください。

<host-con-port>

long

0または1回

接続するSFTPサーバのポート番号です。

1から65535までのポート番号を指定します。

<sftp-user>※2

string

0または1回

接続するSFTPサーバのユーザ名を示すタグです。

SFTPサーバが存在するマシンのユーザ名を指定します。

<data-compression>

boolean

0または1回

転送データを圧縮するかどうかを指定するタグです。

true:転送データを圧縮します。

false:転送データを圧縮しません。

<host-auth>

0または1回

ホスト認証に関する設定を示すタグです。

<strict-hostkey-checking>

boolean

0または1回

厳格なホスト鍵チェックの実施の有無を指定するタグです。

true:厳格なホスト鍵チェックをします。

false:厳格なホスト鍵チェックをしません。

<overwrite-data>

boolean

0または1回

転送先にファイルが存在する場合の動作を指定するタグです。

true:ファイルを上書きします。

false:ファイルを追記します。

要素が省略された場合は「true」が仮定されます。

<user-auth>

0または1回

ユーザ認証に関する設定を示すタグです。

<user-auth-type>

string

0または1回

ユーザ認証の形式を示すタグです。

password:パスワード認証です。

publickey:公開鍵認証です。

<user-auth-info>

string

0または1回

ユーザ認証で使用する認証情報を指定するタグです。

  • パスワード認証を実施する場合

    運用コマンドで設定したユーザ名を指定します。

  • 公開鍵認証を実施する場合

    運用コマンドで設定した鍵IDを指定します。

<request-id>

string

0または1回

受付で作成したリクエストIDを示すタグです。

共通フォルダを利用するときは無視されます。

<local-folder>

string

1回

ローカル側フォルダを示すタグです。

  • タグの属性にcommon="true"が指定されている場合

    ローカルフォルダとして共通フォルダを利用し,このタグには共通フォルダ定義名を指定します。

  • タグの属性にcommon="false"が指定されている場合

    ローカルフォルダとして作業フォルダを利用します。

<local-file-name>

string

1回

ローカル側ファイル名を示すタグです。

  • 作業フォルダを利用する場合,作業フォルダ直下のファイルを指定してください。ファイル名の先頭以外に区切り文字(スラッシュ(/),円マーク(\)など)は使用できません。ファイル名の先頭にスラッシュ(/)を使用した場合,スラッシュ(/)は無視されます。

  • 共通フォルダを利用する場合,共通フォルダルート配下のファイルを指定してください。シンボリックリンク以外のファイルを指定してください。

<remote-path>

string

1回

リモートパス名(SFTPサーバに転送するときの転送先パス名)を示すタグです。

<sftp-commands-before>

string

0または1回

ファイル転送前に実行するSFTPコマンドとその引数を示すタグです。

複数のコマンドを実行する場合は,実行する順番にセミコロン(;)で区切って設定します。

<sftp-commands-after>

string

0または1回

ファイル転送後に実行するSFTPコマンドとその引数を示すタグです。

複数のコマンドを実行する場合は,実行する順番にセミコロン(;)で区切って設定します。

(凡例)

−:該当する項目はありません。

注※1

規定の出現回数を超える場合の動作は保証されません。

注※2

使用できる文字を次に示します。

半角英数字,半角空白,感嘆符(!),ダブルクォーテーション("),番号記号(#),ドル記号($),パーセント(%),アンパサンド(&),アポストロフィ('),始め小括弧((),終わり小括弧()),アスタリスク(*),正符号(+),コンマ(,),ハイフン(-),ピリオド(.),スラッシュ(/),コロン(:),セミコロン(;),左アングルブラケット(<),右アングルブラケット(>),等号(=),クエスチョンマーク(?),単価記号(@),始め角括弧([),終わり角括弧(]),円マーク(\),アクサンシルコンフレックス(^),アンダーバー(_),アクサングラーブ(`),始め波括弧({),終わり波括弧(}),パイプライン(|),波ダッシュ(~)

●GETオペレーション

ビジネスプロセスがSFTPアダプタに渡すGETオペレーションの要求電文のフォーマットを次に示します。ファイル名は「sftpadp_get_request.xsd」です。名前空間名は「http://www.hitachi.co.jp/soft/xml/cosminexus/csasftp/get_request」です。

表3‒110 要求電文フォーマット(GETオペレーション)

タグ名

種別

出現回数※1

説明

<request>

1回

<host-ipaddr>

string

0または1回

接続するSFTPサーバのIPアドレスまたはホスト名です。

Windowsを使用する場合,ループバックIPアドレス(127.0.0.1またはlocalhost)を指定すると,SFTP接続に失敗する場合があります。実IPアドレスまたはホスト名を指定してください。

<host-con-port>

long

0または1回

接続するSFTPサーバのポート番号です。

1から65535までのポート番号を指定します。

<sftp-user>※2

string

0または1回

接続するSFTPサーバのユーザ名を示すタグです。

SFTPサーバが存在するマシンのユーザ名を指定します。

<data-compression>

boolean

0または1回

転送データを圧縮するかどうかを指定するタグです。

true:転送データを圧縮します。

false:転送データを圧縮しません。

<host-auth>

0または1回

ホスト認証に関する設定を示すタグです。

<strict-hostkey-checking>

boolean

0または1回

厳格なホスト鍵チェックの実施の有無を指定するタグです。

true:厳格なホスト鍵チェックをします。

false:厳格なホスト鍵チェックをしません。

<user-auth>

0または1回

ユーザ認証に関する設定を示すタグです。

<user-auth-type>

string

0または1回

ユーザ認証の形式を示すタグです。

password:パスワード認証です。

publickey:公開鍵認証です。

<user-auth-info>

string

0または1回

ユーザ認証で使用する認証情報を指定するタグです。

  • パスワード認証を実施する場合

    運用コマンドで設定したユーザ名を指定します。

  • 公開鍵認証を実施する場合

    運用コマンドで設定した鍵IDを指定します。

<request-id>

string

0または1回

受付で作成したリクエストIDを示すタグです。

共通フォルダを利用するときは無視されます。

<local-folder>

string

1回

ローカル側フォルダを示すタグです。

  • タグの属性にcommon="true"が指定されている場合

    ローカルフォルダとして共通フォルダを利用し,このタグには「共通フォルダ定義名」を指定します。

  • タグの属性にcommon="false"が指定されている場合

    ローカルフォルダとして作業フォルダを利用します。

<local-file-name>

string

0または1回

ローカル側ファイル名を示すタグです。

  • 作業フォルダを利用する場合

    この設定は無視されます。

  • 共通フォルダを利用する場合

    共通フォルダルート配下のファイルを指定してください。

    指定したファイル名でファイルが作成されます。

    存在するファイル名を指定した場合,ファイルが上書きされます。

    共通フォルダルートからの相対パスで指定したサブフォルダが存在しない場合は,サブフォルダを作成します。

    また,シンボリックリンク以外のファイルを指定してください。

<remote-path>

string

1回

リモートパス名(SFTPサーバ上にある取得対象パス名)を示すタグです。

<sftp-commands-before>

string

0または1回

ファイル転送前に実行するSFTPコマンドとその引数を示すタグです。

複数のコマンドを実行する場合は,実行する順番にセミコロン(;)で区切って設定します。

<sftp-commands-after>

string

0または1回

ファイル転送後に実行するSFTPコマンドとその引数を示すタグです。

複数のコマンドを実行する場合は,実行する順番にセミコロン(;)で区切って設定します。

(凡例)

−:該当する項目はありません。

注※1

規定の出現回数を超える場合の動作は保証されません。

注※2

使用できる文字を次に示します。

半角英数字,半角空白,感嘆符(!),ダブルクォーテーション("),番号記号(#),ドル記号($),パーセント(%),アンパサンド(&),アポストロフィ('),始め小括弧((),終わり小括弧()),アスタリスク(*),正符号(+),コンマ(,),ハイフン(-),ピリオド(.),スラッシュ(/),コロン(:),セミコロン(;),左アングルブラケット(<),右アングルブラケット(>),等号(=),クエスチョンマーク(?),単価記号(@),始め角括弧([),終わり角括弧(]),円マーク(\),アクサンシルコンフレックス(^),アンダーバー(_),アクサングラーブ(`),始め波括弧({),終わり波括弧(}),パイプライン(|),波ダッシュ(~)

●GETINFOオペレーション

ビジネスプロセスがSFTPアダプタに渡すGETINFOオペレーションの要求電文のフォーマットを次に示します。ファイル名は「sftpadp_getinfo_request.xsd」です。名前空間名は「http://www.hitachi.co.jp/soft/xml/cosminexus/csasftp/getinfo_request」です。

表3‒111 要求電文フォーマット(GETINFOオペレーション)

タグ名

種別

出現回数※1

説明

<request>

1回

<host-ipaddr>

string

0または1回

接続するSFTPサーバのIPアドレスまたはホスト名です。

Windowsを使用する場合,ループバックIPアドレス(127.0.0.1またはlocalhost)を指定すると,SFTP接続に失敗する場合があります。実IPアドレスまたはホスト名を指定してください。

<host-con-port>

long

0または1回

接続するSFTPサーバのポート番号です。

1から65535までのポート番号を指定します。

<sftp-user>※2

string

0または1回

接続するSFTPサーバのユーザ名を示すタグです。

SFTPサーバが存在するマシンのユーザ名を指定します。

<data-compression>

boolean

0または1回

転送データの圧縮の有無を指定するタグです。

true:転送データを圧縮します。

false:転送データを圧縮しません。

<host-auth>

0または1回

ホスト認証に関する設定を示すタグです。

<strict-hostkey-checking>

boolean

0または1回

厳格なホスト鍵チェックの実施の有無を指定するタグです。

true:厳格なホスト鍵チェックをします。

false:厳格なホスト鍵チェックをしません。

<user-auth>

0または1回

ユーザ認証に関する設定を示すタグです。

<user-auth-type>

string

0または1回

ユーザ認証の形式を示すタグです。

password:パスワード認証です。

publickey:公開鍵認証です。

<user-auth-info>

string

0または1回

ユーザ認証で使用する認証情報を指定するタグです。

  • パスワード認証を実施する場合

    運用コマンドで設定したユーザ名を指定します。

  • 公開鍵認証を実施する場合

    運用コマンドで設定した鍵IDを指定します。

<getinfo-type>

string

1回

SFTPサーバから取得する情報の取得種別を指定するタグです。

LIST:ファイル情報の一覧を取得します。

NLST:ファイル名の一覧を取得します。

<getinfo-path>

string

0または1回

接続するSFTPサーバから取得する情報の取得パスを示すタグです。<getinfo-type>で指定したコマンドを実行するときに指定するパスです。

タグがない場合,リストコマンド実行前にcdコマンドを実行したかどうかで,次のように異なります。

  • cdコマンドを実行した場合

    cdコマンドで変更したパスを利用します。

  • cdコマンドを実行していない場合

    リモートサーバのディレクトリのパスを利用します。

<sftp-commands-before>

string

0または1回

ファイル転送前に実行するSFTPコマンドとその引数を示すタグです。

複数のコマンドを実行する場合は,実行する順番にセミコロン(;)で区切って設定します。

<sftp-commands-after>

string

0または1回

ファイル転送後に実行するSFTPコマンドとその引数を示すタグです。

複数のコマンドを実行する場合は,実行する順番にセミコロン(;)で区切って設定します。

(凡例)

−:該当する項目はありません。

注※1

規定の出現回数を超える場合の動作は保証されません。

注※2

使用できる文字を次に示します。

半角英数字,半角空白,感嘆符(!),ダブルクォーテーション("),番号記号(#),ドル記号($),パーセント(%),アンパサンド(&),アポストロフィ('),始め小括弧((),終わり小括弧()),アスタリスク(*),正符号(+),コンマ(,),ハイフン(-),ピリオド(.),スラッシュ(/),コロン(:),セミコロン(;),左アングルブラケット(<),右アングルブラケット(>),等号(=),クエスチョンマーク(?),単価記号(@),始め角括弧([),終わり角括弧(]),円マーク(\),アクサンシルコンフレックス(^),アンダーバー(_),アクサングラーブ(`),始め波括弧({),終わり波括弧(}),パイプライン(|),波ダッシュ(~)

(b) SFTPアダプタの応答電文フォーマット

SFTPアダプタの応答電文フォーマットを,オペレーションごとに説明します。

●PUTオペレーション

SFTPアダプタが呼び出し元のビジネスプロセスに返すPUTオペレーションの応答電文のフォーマットを次に示します。ファイル名は「sftpadp_put_response.xsd」です。名前空間名は「http://www.hitachi.co.jp/soft/xml/cosminexus/csasftp/put_response」です。

表3‒112 応答電文フォーマット(PUTオペレーション)

タグ名

種別

出現回数

説明

<response>

1回

<local-folder>

string

1回

ローカル側フォルダを示すタグです。

作業フォルダを利用した場合,属性に「common="false"」が設定されます。値には空白が設定されます。

共通フォルダを利用した場合,属性に「common="true"」が設定されます。値には,要求電文の<local-folder>タグで指定された共通フォルダ定義名が設定されます。

<local-file-name>

string

1回

ローカル側ファイル名を示すタグです。

要求電文の<local-file-name>で指定した値が設定されます。

(凡例)

−:該当する項目はありません。

●GETオペレーション

SFTPアダプタが呼び出し元のビジネスプロセスに返すGETオペレーションの応答電文のフォーマットを次に示します。ファイル名は「sftpadp_get_response.xsd」です。名前空間名は「http://www.hitachi.co.jp/soft/xml/cosminexus/csasftp/get_response」です。

表3‒113 応答電文フォーマット(GETオペレーション)

タグ名

種別

出現回数

説明

<response>

1回

<local-folder>

string

1回

ローカル側フォルダを示すタグです。

作業フォルダを利用した場合,属性に「common="false"」が設定されます。値には空白が設定されます。

共通フォルダを利用した場合,属性に「common="true"」が設定されます。値には,要求電文の<local-folder>タグで指定された共通フォルダ定義名が設定されます。

<local-file-name>

string

1回

ローカル側ファイル名を示すタグです。

作業フォルダを利用する場合

作業フォルダの下に格納したファイル名が設定されます。ファイル名は,「csc_<内部生成された文字>」の形式となります。

共通フォルダを利用する場合

要求電文の<local-file-name>で指定した値が設定されます。

<file-size>

long

1回

SFTPサーバから取得したローカルファイルのサイズを示すタグです。

(凡例)

−:該当する項目はありません。

●GETINFOオペレーション

SFTPアダプタが呼び出し元のビジネスプロセスに返すGETINFOオペレーションの応答電文のフォーマットを次に示します。ファイル名は「sftpadp_getinfo_response.xsd」です。名前空間名は「http://www.hitachi.co.jp/soft/xml/cosminexus/csasftp/getinfo_response」です。

表3‒114 応答電文フォーマット(GETINFOオペレーション)

タグ名

種別

出現回数

説明

<response>

1回

<list-info>

1回

ファイル一覧情報を示すタグです。

<list>

string

0回以上

ファイル情報を示すタグです。

要求電文のgetinfo-type要素に「LIST」を指定した場合

ファイル情報の一覧を設定します。

要求電文のgetinfo-type要素に「NLST」を指定した場合

ファイル名の一覧を設定します。

リモートサーバから取得したファイル情報が何もない場合,この要素は出現しません。

(凡例)

−:該当する項目はありません。

(2) SFTPアダプタの定義ファイルの作成

作成する定義ファイルの種類を次に示します。

各定義ファイルの作成手順を次に示します。定義ファイルは,SFTPアダプタが提供しているテンプレートファイルを利用して作成できます。

(a) SFTPアダプタ実行環境プロパティファイル

  1. テンプレートファイル(<サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\SFTP\config\templates\adpsftp.properties)をコピーして,次のディレクトリに格納します。

    全HCSCサーバ共通の定義の場合

    <サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\SFTP\config

    特定のHCSCサーバ用の定義の場合

    サブディレクトリ<HCSCサーバ名>を作成して格納してください。Windowsの場合,HCSCサーバ名の大文字・小文字は区別されます。

    <サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\SFTP\config\<HCSCサーバ名>

  2. コピーしたテンプレートファイルのファイル名を「<サービスID>.properties」に変更します。

  3. 定義内容を編集して保存します。

    SFTPアダプタ実行環境プロパティファイルで編集できる定義内容については,マニュアル「サービスプラットフォーム リファレンス」の「6.16.1 SFTPアダプタ実行環境プロパティファイル」を参照してください。

注※

サービスIDは,SFTPアダプタを新規に追加するときにサービスアダプタ定義画面で指定する任意の文字列です。

(b) SFTPアダプタ実行環境共通プロパティファイル

  1. テンプレートファイル(<サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\SFTP\config\templates\adpsftp.properties)をコピーして,次のディレクトリに格納します。

    全HCSCサーバ共通の定義の場合

    commonディレクトリはユーザが作成してください。

    <サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\SFTP\config\common

    特定のHCSCサーバ用の定義の場合

    サブディレクトリ<HCSCサーバ名>と「common」はユーザが作成してください。Windowsの場合,HCSCサーバ名の大文字・小文字は区別されます。

    <サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\SFTP\config\<HCSCサーバ名>\common

    ファイル名は変更しないでください。

  2. 定義内容を編集して保存します。

    SFTPアダプタ実行環境プロパティファイルで編集できる定義内容については,マニュアル「サービスプラットフォーム リファレンス」の「6.16.2 SFTPアダプタ実行環境共通プロパティファイル」を参照してください。

(3) データ変換の定義

データ変換定義画面を利用して,変換元の電文フォーマット定義ファイルおよび変換先の電文フォーマット定義ファイルのデータ変換を定義します。

データ変換の定義方法については,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「7. データ変換の定義」を参照してください。

(4) サービスアダプタ定義画面での操作

SFTPアダプタを定義する場合の手順を次に示します。

  1. サービスアダプタ定義画面を表示します。

    サービスアダプタ定義画面の表示方法については,「3.3.1(4) サービスアダプタ定義画面の表示」を参照してください。

  2. 定義情報を設定します。

    サービスアダプタ定義画面(基本)で設定が必要な項目については,「3.3.18(15) SFTPアダプタの場合」およびマニュアル「サービスプラットフォーム リファレンス」の「1.2.2 サービスアダプタ定義画面」を参照してください。

  3. [サービスアダプタ定義(詳細)]タブをクリックします。

    サービスアダプタ定義画面(詳細)が表示されます。

  4. 定義情報を設定します。

    サービスアダプタ定義画面(詳細)で設定が必要な項目については,「3.3.18(15) SFTPアダプタの場合」およびマニュアル「サービスプラットフォーム リファレンス」の「1.2.2 サービスアダプタ定義画面」を参照してください。