[Seasar-user:4461] Re: S2StrusのClassFinderImpl#findについて

Katsuhiko Nagashima [E-MAIL ADDRESS DELETED]
2006年 8月 31日 (木) 00:20:21 JST


永島です。

修正に漏れがあり、すみませんm(_ _)m
修正し、コミットしました。

https://www.seasar.org/svn/s2struts/branches/s2struts-1.2.3-branch/

> 次回リリース日はきまっているのでしょうか?

今週末リリースしようと思います。
よろしくお願いします。

06/08/30 に 齋藤 宗範<[E-MAIL ADDRESS DELETED]> さんは書きました:
> 永島様
>
> お世話になっております。
> 齋藤です。
>
> ClassFinderImpl#findの対応確認いたしました。
> ただし、
> org.seasar.struts.config.rule.ZeroConfigActionRuleImpl#getExistFilePathで
> 同様にServletContext.getRealPath(path)を使用しているため
> nullPointerExceptionで異常終了してしまいました。
>
> 同様に後対応可能でしょうか?
>
> java.lang.NullPointerException
>         at java.io.File.<init>(File.java:194)
>         at
> org.seasar.struts.config.rule.ZeroConfigActionRuleImpl.getExistFilePath(Zero
> ConfigActionRuleImpl.java:175)
>         at
> org.seasar.struts.config.rule.ZeroConfigActionRuleImpl.addFowardConfig(ZeroC
> onfigActionRuleImpl.java:155)
>         at
> org.seasar.struts.config.AutoActionRegister.registerFowardConfigs(AutoAction
> Register.java:132)
>         at
> org.seasar.struts.config.AutoActionRegister.registerActionConfig(AutoActionR
> egister.java:88)
>         Truncated. see log file for complete stacktrace>
> javax.servlet.UnavailableException
>         at
> org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:
> 880)
>         at
> org.apache.struts.action.ActionServlet.init(ActionServlet.java:336)
>         at
> org.seasar.struts.servlet.S2ActionServlet.init(S2ActionServlet.java:61)
>         at javax.servlet.GenericServlet.init(GenericServlet.java:256)
>         at
> weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecur
> ityHelper.java:276)
>         at
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubjec
> t.java:321)
>         at
> weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>         at
> weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelpe
> r.java:68)
>         at
> weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycl
> eHelper.java:58)
>         at
> weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.jav
> a:48)
>         at
> weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.jav
> a:504)
>         at
> weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletC
> ontext.java:1698)
>         at
> weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppS
> ervletContext.java:1675)
>         at
> weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServle
> tContext.java:1595)
>         at
> weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.ja
> va:2734)
>         at
> weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:892)
>         at
> weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:336)
>         at
> weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDrive
> r.java:204)
>         at
> weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.j
> ava:26)
>         at
> weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver
> .java:60)
>         at
> weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriv
> er.java:200)
>         at
> weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListene
> rInvoker.java:117)
>         at
> weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDrive
> r.java:204)
>         at
> weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.j
> ava:26)
>         at
> weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver
> .java:60)
>         at
> weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlo
> w.java:26)
>         at
> weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:641)
>         at
> weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.j
> ava:26)
>         at
> weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:22
> 9)
>         at
> weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStat
> eChecker.java:154)
>         at
> weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContai
> nerInvoker.java:80)
>         at
> weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(
> AbstractOperation.java:565)
>
> お忙しい中恐縮ですが、
> ご回答よろしくお願いいたします。
>
> 齋藤
>
> >
> > > ServletContext#getResource()ではないですが、
> > > S2のComponentAutoRegisterのようにReferenceClassを指定し、
> > > クラスを読み込む読み込む機能を追加し、以下にコミットしました。
> > >
> > > https://www.seasar.org/svn/s2struts/branches/s2struts-1.2.3-branch/
> > >
> > > AutoStrutsConfigRegisterPlugInでreferenceClassを指定すれば利用できます。
> > > <plug-in
> > > className="org.seasar.struts.plugin.AutoStrutsConfigRegisterPlugIn">
> > >             :
> > >     <set-property property="referenceClass"
> > >             value="org.seasar.struts.examples.FowardNameConstants"/>
> > >             :
> > > </plug-in>
> > >
> > > 次回(1.2.6)リリース時に反映されます。
> > >
> > > よろしくお願いします。
> > >
> >
> > _______________________________________________
> > Seasar-user mailing list
> > [E-MAIL ADDRESS DELETED]
> > https://www.seasar.org/mailman/listinfo/seasar-user
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://www.seasar.org/mailman/listinfo/seasar-user
>


-- 
Katsuhiko Nagashima



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