Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)
アノテーションで定義した要素は,サーバ管理コマンドのcjgetapppropコマンドまたはcjgetrespropコマンドを使用して参照できます。また,一部の定義はcjsetapppropコマンドまたはcjsetrespropコマンドを使用して更新できます。
サーバ管理コマンドを使用してアノテーションで定義した要素を参照・更新した場合の動作について次の表に示します。動作は,DDがある場合とない場合で異なります。
表12-17 サーバ管理コマンドを使用してアノテーションで定義した要素を参照・更新した場合の動作
要素の種類 | cjgetapppropまたはcjgetrespropによる参照 | cjsetapppropまたはcjsetrespropによる更新 | |
---|---|---|---|
DDがある場合 | DDで定義した要素 | DDで定義した内容が出力されます。 | DDの内容が更新されます。 |
アノテーションで定義した要素 | アノテーションで定義した内容が出力されます。 | 更新はできません。 | |
アノテーションの定義をDDで上書きした要素 | アノテーションとDDの定義をマージした結果が出力されます。 | 「(2) サーバ管理コマンドによる定義の更新」を参照してください。 | |
DDがない場合 | アノテーションで定義した要素 | アノテーションで定義した内容が出力されます。 | 更新はできません。 |
cjsetapppropコマンドまたはcjsetrespropコマンドを使用してアノテーションで定義した属性を上書き更新できるかどうかは,更新する情報がどこに定義されているかによって異なります。
定義されている場所と上書き可否の対応を次の表に示します。
表12-18 定義されている場所と上書き可否の対応
定義されている場所 | 上書き可否 |
---|---|
DDだけに定義されている要素 | 可 |
アノテーションだけに定義されている要素 | 不可 |
アノテーションの定義をDDで上書きされている要素 | 可※ |
注※ 更新後にアプリケーションをエクスポートした場合,エクスポートしたアプリケーションに含まれるWARファイル内のDD(web.xml)に,アノテーションとDDで定義した内容がマージされて出力されます。展開ディレクトリ形式のアプリケーションの場合は,<WARディレクトリ>/WEB-INF/web.xmlに,アノテーションとDDで定義した内容がマージされて出力されます。
アノテーションの定義をDDで上書きした要素を,cjsetapppropコマンドまたはcjsetrespropコマンドを使用して上書き更新した場合,アプリケーションディレクトリ内のDDにはDDとアノテーションの情報がマージされて出力されます。この場合,アノテーションで定義した内容がDDに反映されるため,それ以降にクラスファイル内のアノテーションを変更したときは,DDに残っている定義が優先されて変更したアノテーションの定義は有効になりません。
このような場合,DDに反映されているアノテーションの定義を削除して,アプリケーションを再インポートすることでアノテーションの定義が有効になります。また,属性ファイルで定義を追加,変更した場合は,アプリケーションを再インポートする必要はありません。
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.