SMART deploy -

このドキュメントでは,SMART deployの概要を説明し, はまらないで使いこなすための指針を紹介します.

SMART deployとは,規約に基づいてコンポーネントを自動登録するものです.

SMART deployには,以下の3種類のモードがあります.

HOT deploy
コンポーネントが必要とされたときに (on demandで) そのコンポーネントだけを自動登録するモードです.
コンポーネントのクラスをHOT deploy専用のクラスローダにロードすることで, WEBコンテナの再起動や再デプロイをすることなく,クラスの変更が反映されます.
Webアプリケーションなど, サーバとしてプロセスを起動したまま実行するプログラムの開発時に適したモードです.
COOL deploy
コンテナの初期化時に全てのコンポーネントを自動登録するモードです.
サーバアプリケーションの実行に適したモードです.
WARM deploy
コンポーネントが必要とされたときに (on demandで) そのコンポーネントだけを自動登録するモードです.
HOT deployとは異なり,専用のクラスローダは使用しません. 一度ロードされたクラスは,.classファイルが変更されても反映されません.
クライアントアプリケーションやテストケースの実行に適したモードです.

SMART deployのモードを切り替える方法は SMART deployの切り替え を参照してください.

Javaのクラスはクラスローダにロードされます. クラスローダに一度ロードされると,クラスファイルが変更されてもそれは反映されません. HOT deployは,

HOT deploy非対象クラスからHOT deploy対象クラスを参照しない

convention.dicon

"jp.co.xxx.yyy.app" "jp.co.xxx.yyy.infra" false ]]> HOT deploy対象クラス(Xxx)が非対象クラスから参照されて通常のクラスローダにロードされています。
具象クラスから継承しない
セッションに登録するクラスはSerializableを実装する
HTTPセッションに設定するクラス({0})はシリアライズ可能でなくてはなりません。 HTTPセッションに設定するクラスはシリアライズ可能でなくてはなりません。 セッションオブジェクト({0})をデシリアライズできなかったため破棄します。