[Seasar-user:21944] Cool Deployモードでjarファイル化して実行した場合のESSR0046コンポーネント見つからないエラー発生に関しまして
[E-MAIL ADDRESS DELETED]
[E-MAIL ADDRESS DELETED]
2014年 9月 25日 (木) 11:06:31 JST
いつも利用させていただき、大変お世話になっております。
バッチ処理での利用です。
jarファイル化してCool Deployモードで実行した場合に以下の様なエラーが発生
いたします。
調査いたしておりますが、原因がつかめておりません。
原因として考えられる内容がございましたらご教示ください。
* 環境
Seasar2
・s2-framework-2.4.47
・s2-extension-2.4.47
・s2-tiger-2.4.47
Java
・Java 1.5.22
* パッケージ構成
+sample.batch.main
SampleBatchMain
+sample.batch.logic
SampleLogic
+impl
SampleLogicImpl
* エラー内容
Smart Deployのパッケージ構成でのコンポーネント自動登録を利用したクラスを
jarファイル化して実行した際のESSR0046コンポーネント見つからないエラーが発
生します。
調査のため、Logicクラスの実装は文字列をSystem.outするのみの処理です。
* エラーメッセージ
org.seasar.framework.container.ComponentNotFoundRuntimeException: [ESSR0
046]コンポーネント(interface sample.batch.main.SampleBatchMain)が見つかり
ません
* 事象
1.上記パッケージをdiconファイル等の設定ファイルを除いてjarファイル化し、
sample.batch.main.SampleBatchMain.mainを実行
・Hot Deployモード→動作OK
・Warm Deployモード→動作OK
・Cool Deployモード→エラー
2.クラスファイル設置(jarファイル化しない)した状態で、sample.batch.main
.SampleBatchMain.mainを実行
・Hot Deployモード→動作OK
・Warm Deployモード→動作OK
・Cool Deployモード→動作OK
* convention.diconのルートパッケージ
sample.batch
* SampleBatchMainのソース
public class SampleBachMain {
public static void main(String argv[]) throws Exception {
SampleBachMain sampleBachMain = new SampleBachMain();
sampleBachMain.execute(argv);
}
public void execute(String argv[]) throws Exception {
SingletonS2ContainerFactory.init();
ComponentDeployerFactory
.setProvider(new ExternalComponentDeployerProvider());
SampleLogic logic = SingletonS2Container
.getComponent(SampleLogic.class);
logic.execute();
SingletonS2ContainerFactory.destroy();
}
}
よろしくお願いいたします。
Seasar-user メーリングリストの案内