[Seasar-user:21413] [SAStruts]CoolDeployのTomcat起動時エラーについて

Takano [E-MAIL ADDRESS DELETED]
2012年 8月 21日 (火) 10:37:37 JST


高です。
初めてご質問させて頂きます。
以下の設定ファイルでエラーとなり原因をお分かりの方
ご教授の程よろしくお願い致します。


【環境】
・SAStruts(sa-struts-1.0.4-sp9.jar)
・S2Container(s2-framework-2.4.44.jar)
・Apache Tomcat7.0.29
・Java7(jdk-7u5)


【現象】
以下の設定ファイルでHotDeployでは、正常に動作しておりますが、
CoolDeployに変更するとTomcatの起動時に以下のエラーが発生致します。


【設定】
ファイル:env.txt
 product
ファイル:s2container.dicon
 <components>
    <include condition="#ENV == 'ut'" path="warmdeploy.dicon"/>
    <include condition="#ENV == 'ct'" path="hotdeploy.dicon"/>
    <include condition="#ENV != 'ut' and #ENV != 'ct'" 
path="cooldeploy-autoregister.dicon"/>
 </components>
ファイル:cooldeploy-autoregister.dicon
 <components>
 <include path="convention.dicon"/>
 <include path="customizer.dicon"/>
 <include path="creator.dicon"/>
 <component 
class="org.seasar.framework.container.cooldeploy.CoolComponentAutoRegister"/>
 </components>
ファイル:app.dicon
 <components>
 <include path="convention.dicon"/>
 <include path="aop.dicon"/>
 <include path="j2ee.dicon"/>
 <include path="s2jdbc.dicon"/>
 <include path="mai.dicon"/>
 <component name="actionMessagesThrowsInterceptor" 
class="org.seasar.struts.interceptor.ActionMessagesThrowsInterceptor"/>
 </components>
ファイル:customizer.dicon
 <components>
    <include path="default-customizer.dicon"/>

    <component name="actionCustomizer"
        class="org.seasar.framework.container.customizer.CustomizerChain">
        <initMethod name="addAspectCustomizer">
            <arg>"aop.traceInterceptor"</arg>
        </initMethod>
        <initMethod name="addAspectCustomizer">
            <arg>"actionMessagesThrowsInterceptor"</arg>
        </initMethod>
        <initMethod name="addCustomizer">
            <arg>
                <component
                    class="org.seasar.framework.container.customizer.TxAttributeCustomizer"/>
            </arg>
        </initMethod>
        <initMethod name="addCustomizer">
            <arg>
                <component
                    class="org.seasar.struts.customizer.ActionCustomizer"/>
            </arg>
        </initMethod>
    </component>

    <component name="formCustomizer"
        class="org.seasar.framework.container.customizer.CustomizerChain">
    </component>

    <component name="serviceCustomizer"
        class="org.seasar.framework.container.customizer.CustomizerChain">
        <initMethod name="addAspectCustomizer">
            <arg>"aop.traceInterceptor"</arg>
        </initMethod>
        <initMethod name="addCustomizer">
            <arg>
                <component
                    class="org.seasar.framework.container.customizer.TxAttributeCustomizer" 
instance="prototype"/>
            </arg>
        </initMethod>
    </component>
 </components>


【スタックトレース】
INFO  2012-08-21 09:31:27,890 [localhost-startStop-1] s2-frameworkのバージョンは2.4.44です。
INFO  2012-08-21 09:31:27,890 [localhost-startStop-1] s2-extensionのバージョンは2.4.44です。
INFO  2012-08-21 09:31:27,890 [localhost-startStop-1] s2-tigerのバージョンは2.4.44です。
DEBUG 2012-08-21 09:31:28,046 [localhost-startStop-1] 環境変数#Envにファイル(env.txt)から値(product)が設定されました
DEBUG 2012-08-21 09:31:28,156 [localhost-startStop-1] S2Containerを作成します。path=cooldeploy-autoregister.dicon
DEBUG 2012-08-21 09:31:28,156 [localhost-startStop-1] S2Containerを作成します。path=convention.dicon
DEBUG 2012-08-21 09:31:28,359 [localhost-startStop-1] S2Containerを作成しました。path=convention.dicon
DEBUG 2012-08-21 09:31:28,359 [localhost-startStop-1] S2Containerを作成します。path=customizer.dicon
DEBUG 2012-08-21 09:31:28,375 [localhost-startStop-1] S2Containerを作成します。path=default-customizer.dicon
DEBUG 2012-08-21 09:31:28,375 [localhost-startStop-1] S2Containerを作成します。path=std-customizer.dicon
DEBUG 2012-08-21 09:31:28,390 [localhost-startStop-1] S2Containerを作成します。path=std-customizer-tiger.dicon
DEBUG 2012-08-21 09:31:28,421 [localhost-startStop-1] S2Containerを作成しました。path=std-customizer-tiger.dicon
DEBUG 2012-08-21 09:31:28,453 [localhost-startStop-1] S2Containerを作成しました。path=std-customizer.dicon
DEBUG 2012-08-21 09:31:28,453 [localhost-startStop-1] S2Containerを作成しました。path=default-customizer.dicon
DEBUG 2012-08-21 09:31:28,484 [localhost-startStop-1] S2Containerを作成しました。path=customizer.dicon
DEBUG 2012-08-21 09:31:28,484 [localhost-startStop-1] S2Containerを作成します。path=creator.dicon
DEBUG 2012-08-21 09:31:28,515 [localhost-startStop-1] S2Containerを作成しました。path=creator.dicon
DEBUG 2012-08-21 09:31:28,515 [localhost-startStop-1] S2Containerを作成しました。path=cooldeploy-autoregister.dicon
8 21, 2012 9:31:28 午前 org.apache.catalina.core.ApplicationContext log
重大: StandardWrapper.Throwable
java.lang.ExceptionInInitializerError
 at 
org.seasar.framework.container.factory.SingletonS2ContainerFactory.init(SingletonS2ContainerFactory.java:152)
 at 
org.seasar.framework.container.servlet.SingletonS2ContainerInitializer.initialize(SingletonS2ContainerInitializer.java:55)
 at 
org.seasar.framework.container.servlet.S2ContainerServlet.initializeContainer(S2ContainerServlet.java:139)
 at 
org.seasar.framework.container.servlet.S2ContainerServlet.init(S2ContainerServlet.java:127)
 at javax.servlet.GenericServlet.init(GenericServlet.java:160)
 at 
org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1266)
 at 
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1185)
 at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1080)
 at 
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5027)
 at 
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314)
 at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
 at 
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
 at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
 at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:618)
 at 
org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:650)
 at 
org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1582)
 at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
 at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
 at java.util.concurrent.FutureTask.run(Unknown Source)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
 at java.lang.Thread.run(Unknown Source)
Caused by: org.seasar.framework.exception.EmptyRuntimeException: 
[ESSR0007]S2Containerはnullあるいは空であってはいけません
 at 
org.seasar.framework.container.factory.SingletonS2ContainerFactory.getContainer(SingletonS2ContainerFactory.java:192)
 at 
org.seasar.framework.container.SingletonS2Container.getComponent(SingletonS2Container.java:43)
 at 
org.seasar.struts.util.ServletContextUtil.getServletContext(ServletContextUtil.java:42)
 at 
org.seasar.struts.util.S2ModuleConfigUtil.getModuleConfig(S2ModuleConfigUtil.java:38)
 at 
org.seasar.struts.customizer.ActionCustomizer.customize(ActionCustomizer.java:81)
 at 
org.seasar.framework.container.customizer.CustomizerChain.doCustomize(CustomizerChain.java:140)
 at 
org.seasar.framework.container.customizer.AbstractCustomizer.customize(AbstractCustomizer.java:145)
 at 
org.seasar.framework.container.creator.ComponentCreatorImpl.customize(ComponentCreatorImpl.java:309)
 at 
org.seasar.framework.container.creator.ComponentCreatorImpl.createComponentDef(ComponentCreatorImpl.java:269)
 at 
org.seasar.framework.container.cooldeploy.CoolComponentAutoRegister.createComponentDef(CoolComponentAutoRegister.java:184)
 at 
org.seasar.framework.container.cooldeploy.CoolComponentAutoRegister.processClass(CoolComponentAutoRegister.java:163)
 at 
org.seasar.framework.util.ClassTraversal.traverseFileSystem(ClassTraversal.java:213)
 at 
org.seasar.framework.util.ClassTraversal.traverseFileSystem(ClassTraversal.java:207)
 at org.seasar.framework.util.ClassTraversal.forEach(ClassTraversal.java:79)
 at 
org.seasar.framework.util.ResourcesUtil$FileSystemResources.forEach(ResourcesUtil.java:374)
 at 
org.seasar.framework.container.cooldeploy.CoolComponentAutoRegister.registerAll(CoolComponentAutoRegister.java:129)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at org.seasar.framework.util.MethodUtil.invoke(MethodUtil.java:96)
 at 
org.seasar.framework.container.assembler.AbstractMethodAssembler.invoke(AbstractMethodAssembler.java:94)
 at 
org.seasar.framework.container.assembler.DefaultInitMethodAssembler.assemble(DefaultInitMethodAssembler.java:49)
 at 
org.seasar.framework.container.deployer.SingletonComponentDeployer.assemble(SingletonComponentDeployer.java:69)
 at 
org.seasar.framework.container.deployer.SingletonComponentDeployer.deploy(SingletonComponentDeployer.java:48)
 at 
org.seasar.framework.container.deployer.SingletonComponentDeployer.init(SingletonComponentDeployer.java:76)
 at 
org.seasar.framework.container.impl.ComponentDefImpl.init(ComponentDefImpl.java:236)
 at 
org.seasar.framework.container.impl.S2ContainerImpl.init(S2ContainerImpl.java:563)
 at 
org.seasar.framework.container.impl.S2ContainerImpl.init(S2ContainerImpl.java:560)
 at 
org.seasar.framework.container.factory.S2ContainerFactory.configure(S2ContainerFactory.java:234)
 at 
org.seasar.framework.container.factory.S2ContainerFactory.configure(S2ContainerFactory.java:211)
 at 
org.seasar.framework.container.factory.S2ContainerFactory.<clinit>(S2ContainerFactory.java:116)
 ... 22 more

以上よろしくお願い致します。 




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