6.14.2 HTTPアダプタ実行環境プロパティファイル
- 〈この項の構成〉
(1) 形式
[adphttp.request.method={GET|HEAD|POST|OPTIONS|PUT|DELETE}] [adphttp.request.uri-scheme-authority=URIのスキームとオーソリティ] [adphttp.request.uri-path=URIのパス] [adphttp.request.uri-query.<追番>=URIのクエリ] [adphttp.request.header.authorization.type={none|raw|basic}] [adphttp.request.header.authorization=認証情報] [adphttp.request.header.content-type.charset=Content-Typeヘッダの文字コード] [adphttp.request.header.content-type=Content-Typeヘッダのメディアタイプ] [adphttp.request.header.userdef.<追番>=リクエストヘッダ] [adphttp.request.body.style={single|multipart/form-data}] [adphttp.request.part.message.binding={none|raw|form-data}] [adphttp.request.part.message.part-id=HTTPリクエストボディのパートに付与するID] [adphttp.request.part.message.content-type.charset=Content-Typeの文字コード] [adphttp.request.part.message.content-type=Content-Typeの値] [adphttp.request.part.file.<追番>.part-id=ファイルのパートに付与するID] [adphttp.request.part.file.<追番>.input-folder-name=共通フォルダ定義名] [adphttp.request.part.file.<追番>.local-file-name=読み込み対象のファイル名] [adphttp.request.part.file.<追番>.file-name=送信時のファイル名] [adphttp.request.part.file.<追番>.content-type.charset=Content-Typeの文字コード] [adphttp.request.part.file.<追番>.content-type=Content-Typeの値] [adphttp.request.output-folder-name=共通フォルダ定義名] [adphttp.request.output-sub-folder=ファイル出力先のサブフォルダ名] [adphttp.config.account-inf-filepath=HTTPアダプタアカウント定義ファイルのパス] [adphttp.config.trace.path=ログの出力先の親ディレクトリ] [adphttp.config.messagelog.level={0|10|20}] [adphttp.config.methodtrace.level={1|2|3|4|5}] [adphttp.config.methodtrace.filenum=メンテナンスログファイルの面数] [adphttp.config.methodtrace.filesize=メンテナンスログファイルのファイルサイズ] [adphttp.config.exptrace.filenum=例外ログファイルの面数] [adphttp.config.exptrace.filesize=例外ログファイルのファイルサイズ] [adphttp.config.password-auth-inf-filepath=パスワード認証情報定義ファイルのパス] [adphttp.config.publickey-auth-inf-filepath=公開鍵認証情報定義ファイルのパス]
(2) 機能
HTTPアダプタごとの構成情報を設定します。
(a) ファイルの種類
HTTPアダプタ実行環境プロパティファイルは,次に示す2種類があります。
-
HTTPアダプタ実行環境プロパティファイル
有効範囲:特定のHTTPアダプタ
-
HTTPアダプタ実行環境共通プロパティファイル
有効範囲:すべてのHTTPアダプタ
作成手順については「6.14.3 HTTPアダプタ実行環境共通プロパティファイル」を参照してください。
これらのファイルが両方設定されている場合,2つのファイルの定義内容がマージされます。
また,1つのマシンに複数のHCSCサーバをセットアップした場合,HTTPアダプタ実行環境プロパティファイルをHCSCサーバごとに定義することもできます。これらのファイルが両方設定されている場合,2つのファイルの定義内容がマージされます。
同じ内容が要求電文(ヘッダ),HTTPアダプタ実行環境プロパティファイル,HTTPアダプタ実行環境共通プロパティファイルの間で複数設定された場合,次の表でより優先度の高いものが適用されます。
指定個所 |
重複時の優先度 |
---|---|
要求電文(ヘッダ) |
高 |
HTTPアダプタ実行環境プロパティファイル (HCSCサーバ単位の指定:あり) |
| |
HTTPアダプタ実行環境共通プロパティファイル (HCSCサーバ単位の指定:あり) |
| |
HTTPアダプタ実行環境プロパティファイル (HCSCサーバ単位の指定:なし) |
| |
HTTPアダプタ実行環境共通プロパティファイル (HCSCサーバ単位の指定:なし) |
低 |
プロパティ名と要求電文(ヘッダ)との対応については,マニュアル「サービスプラットフォーム 解説」の「2.16.13 要求電文(ヘッダ)とHTTPアダプタ実行環境(共通)プロパティファイルのパラメタの対応関係」を参照してください。
(b) 作成手順
HTTPアダプタ実行環境プロパティファイルは次の手順で作成してください。HTTPアダプタ実行環境共通プロパティファイルの作成手順は,「6.14.3 HTTPアダプタ実行環境共通プロパティファイル」を参照してください。
-
次のテンプレートファイルを基に,HTTPアダプタ実行環境プロパティファイルを定義します。
<サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\HTTP\config\templates\serviceid.properties
-
編集後のファイルをファイル名「<サービスID>.properties」で次のディレクトリに格納してください。
- 全HCSCサーバ共通の定義の場合
-
<サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\HTTP\config
- 特定のHCSCサーバ用の定義の場合
-
<サービスプラットフォームのインストールディレクトリ>\CSC\custom-adapter\HTTP\config\<HCSCサーバ名>
サブディレクトリ<HCSCサーバ名>を作成する際は,Windowsでは大文字・小文字は区別されないので,注意してください。
サブディレクトリ<HCSCサーバ名>には,HCSCサーバの管理者(Service Coordinator管理者)がアクセスできるよう,適切なアクセス権限を設定してください。
(3) 設定できるプロパティ
(a) リクエストライン
adphttp.request.method={GET|HEAD|POST|OPTIONS|PUT|DELETE}
リクエストのHTTPメソッド名を指定します。
GET,HEAD,POST,OPTIONS,PUT,DELETE以外のメソッド名を指定した場合は,動作を保証しません。
adphttp.request.uri-scheme-authority=URIのスキームとオーソリティ
URIのスキームとオーソリティを「<スキーム>://<オーソリティ>」の形式で指定します。
adphttp.request.uri-path=URIのパス
URIのパス部分を指定します。URIのパスがルートパス("/")の場合は指定を省略できます。
adphttp.request.uri-query.<追番>=URIのクエリ
URIのクエリ部分を「<キー>=<値>」の形式で1つずつ指定します。
<追番>には1〜1024の数字を指定できます。
(b) WWW認証
adphttp.request.header.authorization.type={none|raw|basic} 〜<<none>>
WWW認証の認証タイプを指定します。大文字と小文字は区別されません。
-
none
認証情報は送信されません。
-
raw
adphttp.request.header.authorizationプロパティに指定した認証情報(任意の認証文字列)が,HTTPリクエストヘッダのAuthorizationに設定されて送信されます。
-
basic
ベーシック認証の場合に指定します。認証情報は次のように取得・設定して送信されます。
-
adphttp.request.header.authorizationプロパティに指定した認証情報(ユーザ名)を基に,対応するパスワードがHTTPアダプタアカウント定義ファイルから取得されます。
-
HTTPリクエストヘッダのAuthorizationに,HTTPアダプタ内部で生成したベーシック認証用文字列が設定されます。
-
このプロパティを指定した場合は,必ずadphttp.request.header.authorizationプロパティに認証情報を指定してください。
adphttp.request.header.authorization=認証情報
WWW認証の認証情報を次のように指定します。
-
adphttp.request.header.authorization.typeプロパティでnoneを指定した場合
コメントを外してください(空文字列を指定)。
-
adphttp.request.header.authorization.typeプロパティでrawを指定した場合
任意の認証情報を指定してください。
-
adphttp.request.header.authorization.typeプロパティでbasicを指定した場合
HTTPアダプタアカウント定義ファイルに登録したユーザ名を指定してください。
ベーシック認証の場合の指定例を次に示します。
adphttp.request.header.authorization.type=basic adphttp.request.header.authorization=user1
(c) HTTPヘッダのContent-Typeヘッダ
adphttp.request.header.content-type.charset=Content-Typeヘッダの文字コード
HTTPリクエストヘッダのContent-Typeヘッダの文字コードを指定します。
要求電文(ボディ)のバインド方法にform-dataを指定した場合,ここで指定した文字コードにフォームデータを変換してからHTTPリクエストが送信されます。指定できる文字コードはJavaVMが使用できる文字コードに限ります。
要求電文(ボディ)のバインド方法にrawを指定した場合,要求電文(ボディ)の文字コードに合わせて文字コードを指定してください。
adphttp.request.header.content-typeプロパティを指定しなかった場合,このプロパティの指定は無視されます。キーだけ指定して値を指定しない場合はエラーになります。
adphttp.request.header.content-type=Content-Typeヘッダのメディアタイプ
HTTPリクエストヘッダのContent-Typeヘッダのメディアタイプを「*/*」の形式で指定します。キーだけ指定して値を指定しない場合はエラーになります。
(d) HTTPヘッダの任意指定
adphttp.request.header.userdef.<追番>=リクエストヘッダ
任意のリクエストヘッダ(1つのヘッダ)を「<フィールド名>:<フィールド値>」の形式で指定します。<追番>には1〜1024の数字を指定できます。
このプロパティは拡張ヘッダの設定を推奨します。標準ヘッダを定義した場合の動作は保証しません。また,特殊なHTTPヘッダは指定しても無視されます。詳細については,マニュアル「サービスプラットフォーム 解説」の「2.16.3 HTTPリクエストと要求電文の関係」の,HTTPリクエストヘッダに関する記述を参照してください。
設定した値は,最初の「:」を区切り文字として<フィールド名>と<フィールド値>に分割してHTTPヘッダに設定されます。<フィールド名>と<フィールド値>に余分な空白文字が含まれていても除去されません。
<フィールド名>と<フィールド値>には改行文字を指定しないでください。改行文字が含まれる場合,エラーになります。
(e) リクエストボディのパート形式
adphttp.request.body.style={single|multipart/form-data} 〜<<single>>
リクエストボディのパート形式を次の中から指定します。大文字と小文字は区別されません。
-
single
単一パートの送信処理を実行します。
-
multipart/form-data
マルチパート型の処理を実行します。マルチパート型の処理については,マニュアル「サービスプラットフォーム 解説」の「2.16.3 HTTPリクエストと要求電文の関係」を参照してください。
(f) 要求電文(ボディ)
adphttp.request.part.message.binding={none|raw|form-data} 〜<<none>>
要求電文(ボディ)のHTTPリクエストボディへのバインド方法を指定します。大文字と小文字は区別されません。
-
none
HTTPリクエストボディを送信しません。
-
raw
パススルーモードとして,要求電文(ボディ)で指定したデータがそのままHTTPリクエストボディに設定されます。
-
form-data
ノーマルモードとして,要求電文(ボディ)のフォームデータが「Content-Type: application/x-www-form-urlencoded」の形式でHTTPリクエストボディに設定されます。
OAuth 2.0が対応する認証フローを使用する場合は,認証情報をフォームデータとして送信するため,form-dataを設定してください。
adphttp.request.part.message.part-id=HTTPリクエストボディのパートに付与するID 〜<任意のパートID>
HTTPリクエストボディのパートに付与するIDを指定します。マルチパート型の場合に,各パートのContent-Dispositionヘッダのname属性の値として使用されます。
「csc_http_adapter_telegram_name」で始まる値は設定できません。設定した場合の動作は保証しません。
未定義の場合,HTTPアダプタで生成されたシーケンス番号が使用されます。未定義かつ次に示す条件をすべて満たす場合は,「csc_http_adapter_telegram_name_1」が設定されます。
-
リクエストボディのパート形式が「multipart/form-data」である
-
ボディ要求電文のリクエストボディへのバインド方法が「raw」である
adphttp.request.part.message.content-type.charset=Content-Typeの文字コード 〜<任意の文字コード名>
HTTPリクエストボディのパートのContent-Typeの文字コードを指定します。マルチパート型の場合に,各パートのContent-Typeヘッダのcharset属性として使用されます。未定義の場合はcharset属性を設定しません。
adphttp.request.part.message.content-typeプロパティを指定しなかった場合,このプロパティの指定は無視されます。
adphttp.request.part.message.content-type=Content-Typeの値 〜<任意のメディアタイプ>
HTTPリクエストボディのパートのContent-Typeの値を指定します。マルチパート型の場合に,各パートのContent-Typeヘッダの値として使用されます。未定義の場合はContent-Typeを設定しません。
なお,adphttp.request.part.message.content-type.charsetプロパティに有効な値が設定されていて,かつcharset属性を付加した場合,動作は保証しません。
(g) 入力ファイル
- 注意事項
-
ここで記載するプロパティ名の<追番>には,プロパティ名を一意とするための数値を1〜1,024の範囲で指定します。<追番>の指定時の留意点を次に示します。
-
「001」のように数値の前に0は付けないでください。
-
1つのプロパティを複数指定する場合,重複しない数値を指定してください。連番にする必要はありません。また,数値の大小は参照順などに影響しません。
-
同じ入力ファイルを定義するプロパティ同士には,同じ数値を指定してください。
また,ここに記載するプロパティと要求電文のfile要素と同時に指定した場合,要求電文の指定が優先されます。
-
adphttp.request.part.file.<追番>.part-id=ファイルのパートに付与するID 〜<任意のパートID>
ファイルのパートに付与するIDを指定します。マルチパート型の場合に,各パートのヘッダのContent-Dispositionのnameパラメタの値として使用します。
<追番>の指定については,「(g) 入力ファイル」の冒頭の説明を参照してください。
「csc_http_adapter_file_name」で始まる値は設定できません。設定した場合の動作は保証しません。
未定義の場合,HTTPアダプタで生成されたシーケンス番号が使用されます。未定義かつ次に示す条件をすべて満たす場合は,「csc_http_adapter_file_name_<1から始まる連番>」が設定されます。連番は製品内で採番されます。
-
adphttp.request.body.styleプロパティの値に「multipart/form-data」を指定した
-
adphttp.request.part.file.<追番>.input-folder-nameプロパティおよびadphttp.request.part.file.<追番>.local-file-nameプロパティが設定されている
adphttp.request.part.file.<追番>.input-folder-name=共通フォルダ定義名
読み込み対象のファイルが格納された共通フォルダの定義名を指定します。
<追番>の指定については,「(g) 入力ファイル」の冒頭の説明を参照してください。
指定した共通フォルダ定義名が不正な場合は,エラーになります。キーだけ指定して値を指定しない場合はエラーになります。共通フォルダを使用しない場合は指定を省略できます。
このプロパティを指定した場合は,必ずadphttp.request.part.file.<追番>.local-file-nameプロパティに読み込み対象のファイル名を指定してください。
adphttp.request.part.file.<追番>.local-file-name=読み込み対象のファイル名
読み込み対象のファイルの名称を指定します。
<追番>の指定については,「(g) 入力ファイル」の冒頭の説明を参照してください。
階層構造や上位のパスを指定した場合はエラーになります。サブフォルダを使用する場合は,共通フォルダルートからファイル名までの相対パスで設定してください。キーだけ指定して値を指定しない場合はエラーになります。
このプロパティを指定した場合は,必ずadphttp.request.part.file.<追番>.input-folder-nameプロパティに共通フォルダ定義名を指定してください。
シンボリックリンク以外のファイルを指定してください。
adphttp.request.part.file.<追番>.file-name=送信時のファイル名
送信時のファイルの名称を指定します。マルチパート型の場合に,各パートのContent-Dispositionヘッダのfilename属性の値として使用されます。未定義の場合,filename属性は設定されません。
<追番>の指定については,「(g) 入力ファイル」の冒頭の説明を参照してください。
adphttp.request.part.file.<追番>.content-type.charset=Content-Typeの文字コード 〜<任意の文字コード名>
ファイルのパートのContent-Typeの文字コードとして,任意の文字コード名称を指定します。マルチパート型の場合に,各パートのContent-Typeヘッダのcharset属性として使用されます。未定義の場合,charset属性は設定されません。
このプロパティを指定した場合は,必ずadphttp.request.part.file.<追番>.content-typeプロパティを指定してください。
<追番>の指定については,「(g) 入力ファイル」の冒頭の説明を参照してください。
adphttp.request.part.file.<追番>.content-type=Content-Typeの値 〜<任意のメディアタイプ>
ファイルのパートのContent-Typeの値として,任意のメディアタイプを指定します。マルチパート型の場合に,各パートのContent-Typeヘッダの値として使用されます。未定義の場合,Content-Typeは設定されません。
<追番>の指定については,「(g) 入力ファイル」の冒頭の説明を参照してください。
なおadphttp.request.part.file.<追番>.content-type.charsetプロパティに有効な値が設定されていて,かつcharset属性を付加した場合,動作は保証しません。
(h) 出力ファイル
adphttp.request.output-folder-name=共通フォルダ定義名
書き込み対象のファイルを格納する共通フォルダの定義名を指定します。
指定した共通フォルダ定義名が不正な場合は,エラーになります。キーだけ指定して値を指定しない場合はエラーになります。
共通フォルダを使用しない場合は指定を省略できます。
adphttp.request.output-sub-folder=ファイル出力先のサブフォルダ名
HTTPレスポンス時にダウンロードファイルを出力するサブフォルダを指定します。
adphttp.request.output-folder-nameプロパティで共通フォルダを指定し,かつサブフォルダを使用する場合に,書き込み対象のファイルを出力するサブフォルダを指定します。
共通フォルダルートからサブフォルダまでの相対パスを設定してください。相対パスの先頭および末尾のファイル区切り文字(/)は省略できます。
指定したサブフォルダが存在しない場合は,実行時にフォルダを作成します。
共通フォルダルートより上位のパスを指定した場合はエラーになります。
adphttp.request.output-folder-nameプロパティで共通フォルダ定義名が定義されていない場合,指定値は無視されます。
(i) HTTPアダプタアカウント定義ファイル
adphttp.config.account-inf-filepath=HTTPアダプタアカウント定義ファイルのパス
csahttpuseraddコマンドでベーシック認証の認証情報を登録した,HTTPアダプタアカウント定義ファイルのパスを絶対パスで指定します。
csahttpuseraddコマンドについては,「5. コマンド(運用環境・実行環境)」の「csahttpuseradd(HTTPアダプタのベーシック認証で使用するアカウント情報の登録・更新)」を参照してください。
(j) ロギング
adphttp.config.trace.path=ログの出力先の親ディレクトリ 〜<<<J2EEサーバ用オプション定義ファイル(usrconf.properties)のejb.server.log.directoryキーで指定したログ出力ディレクトリ>>>
メンテナンスログおよび例外ログの出力先の親ディレクトリを絶対パスで指定します。指定したフォルダが存在しない場合はHTTPアダプタ起動時にフォルダを作成します。
ここで指定したパスを基に,ログファイルは次の個所へ出力されます。
<adphttp.config.trace.pathで指定したパス>\CSCADP\ADPHTTP\maintenance\<サービスID>
adphttp.config.messagelog.level={0|10|20} 〜<<10>>
メッセージログの出力レベルを指定します。出力情報と出力レベルを次の表に示します。
出力情報 |
出力内容 |
出力レベル |
||
---|---|---|---|---|
0 |
10 |
20 |
||
エラー情報 |
例外または障害の発生原因 |
○ |
○ |
○ |
警告情報 |
発生した問題など |
△ |
○ |
○ |
インフォメーション |
電文や引数の内容 HTTPアダプタの状態の変更(起動時や終了時) イベントの通知 |
△ |
△ |
○ |
adphttp.config.methodtrace.level={1|2|3|4|5} 〜<<3>>
メンテナンスログの出力レベルを指定します。出力情報と出力レベルを次の表に示します。
出力情報 |
出力レベル |
||||
---|---|---|---|---|---|
1 |
2 |
3 |
4 |
5 |
|
エラー情報(例外発生原因) |
○ |
○ |
○ |
○ |
○ |
主要な外部モジュールのインターフェースの入口/出口情報(クラス名,メソッド名,引数,戻り値) |
× |
○ |
○ |
○ |
○ |
外部モジュールのインターフェースの入口/出口情報(クラス名,メソッド名,引数,戻り値) |
× |
× |
○ |
○ |
○ |
主要なコンポーネント内インターフェースの入口/出口情報(クラス名,メソッド名,引数,戻り値) |
× |
× |
× |
○ |
○ |
コンポーネント内インターフェースの入口/出口情報(クラス名,メソッド名,引数,戻り値)や,デバッグ情報(処理の分岐などの情報) |
× |
× |
× |
× |
○ |
adphttp.config.methodtrace.filenum=メンテナンスログファイルの面数 〜<数字>((1−16)) <<8>>
メンテナンスログのファイルの面数を指定します。
adphttp.config.methodtrace.filesize=メンテナンスログファイルのファイルサイズ 〜<数字>((4096−2147483647)) <<2097152>>
メンテナンスログの1面当たりの最大ファイルサイズをバイト単位で指定します。
adphttp.config.exptrace.filenum=例外ログファイルの面数 〜<数字>((1−16)) <<8>>
例外ログの面数を指定します。
adphttp.config.exptrace.filesize=例外ログファイルのファイルサイズ 〜<数字>((4096−2147483647)) <<2097152>>
例外ログの1面当たりの最大ファイルサイズをバイト単位で指定します。
(k) パスワード認証情報定義ファイル
adphttp.config.password-auth-inf-filepath=パスワード認証情報定義ファイルのパス
パスワード認証のユーザ情報をcsauseraddコマンドで登録している場合,パスワード認証情報定義ファイルのファイル名を絶対パスで指定します。csauseraddコマンドの実行時に-fオプションで指定したパスワード認証情報定義ファイルのパスを指定してください。
指定するファイルには,HCSCサーバの管理者のアクセス権限が必要です。
指定したファイルが存在しない場合は,サービスアダプタの開始時にエラーとなります。
(l) 公開鍵認証情報定義ファイル
adphttp.config.publickey-auth-inf-filepath=公開鍵認証情報定義ファイルのパス
公開鍵認証の秘密鍵情報をcsakeyaddコマンドで登録している場合,公開鍵認証情報定義ファイルのファイル名を絶対パスで指定します。csakeyaddコマンドの実行時に-fオプションで指定した公開鍵認証情報定義ファイルのパスを指定してください。
指定するファイルには,HCSCサーバの管理者のアクセス権限が必要です。
指定したファイルが存在しない場合は,サービスアダプタの開始時にエラーとなります。
(4) 記述例
記述例を次に示します。
adphttp.request.method=GET adphttp.request.uri-scheme-authority=http://localhost:80 adphttp.request.uri-path=trans/EN2JP/something adphttp.request.uri-query.1=name=id adphttp.request.header.authorization.type=none adphttp.request.header.authorization= adphttp.request.header.content-type.charset=utf-8 adphttp.request.header.content-type=application/msword adphttp.request.header.userdef.1=cache-control:no-cache adphttp.request.part.message.binding=none adphttp.config.messagelog.level=10 adphttp.config.methodtrace.level=3 adphttp.config.methodtrace.filenum=8 adphttp.config.methodtrace.filesize=2097152 adphttp.config.exptrace.filenum=8 adphttp.config.exptrace.filesize=2097152
(5) 注意事項
-
プロパティファイルは文字コードをUTF-8にして保存してください。UTF-8以外の文字コードを使用した場合,設定値を正しく解釈できない場合があります。
-
パスを指定する場合の注意事項を次に示します。
-
相対パス,親ディレクトリ表現(「..\」,「../」),およびカレントディレクトリ表現(「.\」,「./」)を含むパスは指定しないでください。
-
シンボリックリンクを含むパスは指定しないでください。
-
Windowsの場合,UNC形式,NTFSのストリーム名,および予約デバイス名を含むパスは指定しないでください。また,パスの大文字と小文字は区別されません。
-