エクスターナルモード

エクスターナルモードとは

エクスターナルモードとは、サーバとやりとりするリクエストとレスポンスの詳細内容を、リクエスト・レスポンス用の XML ファイルとは別のファイルで提供(リクエストの場合)あるいは受領(レスポンスの場合)するモードのことです。これに対して、詳細内容データを XML ファイル内に記述する通常の用法を「通常モード」と呼びます。

ここで「詳細内容データ」とは、以下を指します:

リクエストの詳細内容

<contents> タグでマークアップされた「リクエスト内容」

レスポンスの詳細内容

<returned-contents> タグでマークアップされた「返却内容」

通常モードでは、詳細内容データでは、特殊文字はエスケープ文字列で表現されているためするため、特殊文字とエスケープ文字列の変換処理が必要ですが、エクスターナルモードを適用する場合、そうした変換処理の必要がないので便利です。

エクスターナルモードの利用法

リクエスタをエクスターナルモードで実行する際は、以下の三点にご留意下さい。

1. コマンドラインパラメタの指定

リクエスタを実行する際に、コマンドラインでパラメタ「-external true」を指定して下さい。これにより、リクエスタはエクスターナルモードで実行されます。

2. リクエスト XML の「リクエスト内容」の指定

リクエスト内容(<contents> タグでマークアップされたデータ)には、通常、リクエストタイプに応じたリクエスト内容が記述されますが、エクスターナルモードを使用する場合は、別のファイルに(エスケープしないで)リクエスト内容を記述して下さい。リクエスト XML の「リクエスト内容」には、以下のように、リクエスト内容ファイル名と、返却内容ファイル名を記述して下さい:

<contents>
  request-contents-file=(リクエスト内容ファイル名)
  returned-contents-file=(返却内容ファイル名)
</contents>

なお、ファイル名中の区切り文字には「&yen;」ではなく「/」を使用して下さい。例をあげると以下の通りです:

<contents>
  request-contents-file=C:/fusionplace/inbox/request1.csv
  returned-contents-file=C:/fusionplace/outbox/request2.csv
</contents>

ファイル名は絶対パス形式ではなく相対パス形式で指定することも可能です。その場合、相対パスは、リクエスタ実行時のカレントフォルダを起点として解釈されます。

「リクエスト内容」が不要なリクエストタイプもあります。その場合は、「request-contents-file=」で始まる行は省略してかまいません。同様に、「返却内容」が不要な場合には、「returned-contents-file=」で始まる行を省略してかまいません。

3. レスポンス XML の「返却内容」について

リクエスタがエクスターナルモードで実行された場合、返却内容は以下のように扱われます。

  1. リクエスト XML の「リクエスト内容」欄で、returned-contents-file が指定された場合、返却内容はそのファイルに書き出されます。レスポンス XML の「返却内容」欄には以下のように、返却内容ファイル名がセットされます。

    returned-contents-file =(返却内容ファイル名)

    上記で、(返却内容ファイル名)は絶対パス指定となります。

  2. リクエスト XML の「リクエスト内容」欄で、returned-contents-file が指定されなかった場合、返却内容はどこにも出力されません。レスポンス XML の「返却内容」欄は空になります。

  3. returned-contents-file で、ファイル名の後に、カンマで区切って 「hex2bin」 と指定した場合、返却内容が 16 進形式であるとの前提で、それをバイナリ形式に変換した上で、指定されたファイルに保存します。

    returned-contents-file =(返却内容ファイル名), hex2bin

    なお、hex2bin は大文字でも小文字でもかまいなせん。また、カンマの前後に任意の数の空白を置いてかまいません。