読者です 読者をやめる 読者になる 読者になる

かとじゅんの技術日誌

技術の話をするところ

Teedaプロジェクトでview以下が見つからない不具合を修正した

追記:
修正したので,過去形にしました.

Dolteng 0.32.0にて,Teeda/S2Dao/WTP2.4にてプロジェクトを新規に作成し,scaffoldしたHTMLにアクセスすると以下のエラーが発生します.どうやらview以下がtarget/test-classesに出力されているために見つからないようです.
というわけで,Doltengコミッタなんで自分で不具合調査&修正コミットぐらいはしないとっておもっちょりますwww

ClasspathHandler#createClasspathDocumentの

 if (entry.attribute.containsKey("output")) {
                    classpathentry.setAttribute("output", entry.attribute
                            .get("output"));
                }

で,src/main/webapp/WEB-INF/classesではなく,target/test-classesなってしまっているのが問題のようです.
entry.attributeはProjectBuildConfigResolverで生成されているようなのですが,Eclipse弱者なんでwww IConfigurationElementが何者かつかめきれていません...orz

他のコミッタの方々,どうかお助けマンモス....m(__)m

追記:
修正してコミットした〜.Doltengにコミットしたのは2回目.今まではMLに不具合報告にとどまっていましたが(というそれも立派なOSSのかかわり方)最近は自分で何とかした方が早いし,自分のためになるし,みんなのためになる気がしてますwwもちろん自分がコミッタだからというものありますが,その垣根も意識する必要ないんじゃないかと最近思いますね.

2008-09-17 11:52:03,021 [http-8080-1] DEBUG org.seasar.teeda.extension.util.TeedaExtensionErrorPageManagerImpl - [ETDA0107]HTML(/view/emp/empList.html)が見つかりません。
org.seasar.teeda.extension.exception.HtmlNotFoundRuntimeExcpetion: [ETDA0107]HTML(/view/emp/empList.html)が見つかりません。
	at org.seasar.teeda.extension.html.impl.HtmlDescCacheImpl.createHtmlDescFromResource(HtmlDescCacheImpl.java:96)
	at org.seasar.teeda.extension.html.impl.HtmlDescCacheImpl.createHtmlDesc(HtmlDescCacheImpl.java:80)
	at org.seasar.teeda.extension.html.impl.TagProcessorCacheImpl.updateTagProcessor(TagProcessorCacheImpl.java:75)
	at org.seasar.teeda.extension.html.impl.HtmlViewHandler.restoreView(HtmlViewHandler.java:103)
	at org.seasar.teeda.core.lifecycle.impl.RestoreViewPhase.composeViewRoot(RestoreViewPhase.java:115)
	at org.seasar.teeda.core.lifecycle.impl.RestoreViewPhase.executePhase(RestoreViewPhase.java:81)
	at org.seasar.teeda.core.lifecycle.AbstractPhase.execute(AbstractPhase.java:57)
	at org.seasar.teeda.core.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:68)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:100)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.seasar.framework.container.hotdeploy.HotdeployFilter.doFilter(HotdeployFilter.java:63)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.seasar.framework.container.filter.S2ContainerFilter.doFilter(S2ContainerFilter.java:79)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.seasar.teeda.extension.filter.MultipartFormDataFilter.doFilter(MultipartFormDataFilter.java:83)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.seasar.extension.filter.EncodingFilter.doFilter(EncodingFilter.java:69)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Unknown Source)

追記:
とりあえず,ダイちゃんアドバイスで修正箇所がわかった.一行修正するだけでよいっぽい.これよくできてんなぁー
plugin.xml

      <handler type="classpath" resourceLoader="maven">
        <entry output="${testOutPath}" path="${webAppRoot}/view" />

      <handler type="classpath" resourceLoader="maven">
        <entry path="${webAppRoot}/view" />

に直すだけ.