[Seasar-user:21946] Re: Cool Deployモードでjarファイル化して実行した場合のESSR0046コンポーネント見つからないエラー発生に関しまして

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2014年 9月 26日 (金) 02:34:51 JST


小林 (koichik) です。

実行時のログを見せてもらえますか?

見つからないのはSampleBatchMainですが、
これをSampleLogicImplにDIしてるのでしょうか?
だとすると、SampleBatchMainはdiconでどのように定義
しているのでしょうか? (diconを見せてもらうのが早そう)

あと、jar tf xxx.jar で出力される内容も見せてください。


On Thu, 25 Sep 2014 11:06:31 +0900, situmon0925 @ inter7.jp wrote:

> いつも利用させていただき、大変お世話になっております。
> バッチ処理での利用です。
> 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 mailing list
> Seasar-user @ ml.seasar.org
> https://ml.seasar.org/mailman/listinfo/seasar-user


-- 
{
  name: "Koichi Kobayashi",
  mail: "koichik @ improvement.jp",
  blog: "http://d.hatena.ne.jp/koichik/",
  twitter: "@koichik"
}



Seasar-user メーリングリストの案内