[Seasar-user:8660] Re: SMART Deploy環境下でJunit実行時にNullPointerExceptionのスタックトレースが出力される

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2007年 6月 25日 (月) 22:00:26 JST


小林 (koichik) です.

Date:    Mon, 25 Jun 2007 10:15:31 +0900
From:    "SETO Azusa" <[E-MAIL ADDRESS DELETED]>
To:      <[E-MAIL ADDRESS DELETED]>
Subject: [Seasar-user:8620] SMART Deploy環境下でJunit実行時にNullPointerExceptionのスタックトレースが出力される

> この渡されている"file:/D:\seasar\mistral〜"というパスは、
> org.seasar.framework.mock.servlet.MockServletContextImpl#getResourcePaths
> で生成されています。

Servlet 仕様では,ServletContext#getResourcePaths(String) が
返す Set に含まれるパスは,引数で指定されたパスから始まる
(URL 上の) パスであり,URL ではないようです.

getResourcePaths("/") returns {"/welcome.html", "/catalog/", "/customer/", "/WEB-INF/"}
getResourcePaths("/catalog/") returns {"/catalog/index.html", "/catalog/products.html", "/catalog/offers/"}.

MockServletContextImpl#getResourcePaths(String) で引数に
"/lib" を指定すると,戻り値の Set には

/lib/s2-dao-1.0.43.jar

のようなパスが返るように修正しました.

また,MockServletContextImpl#getResourcePaths(String) の
戻り値の Set に含まれるパスを
MockServletContextImpl#getResourcePath(String) に
渡した場合に URL が変えるように修正しました.

次のリリース (Seasar2.4.14 および Seasar2.3.20) に
含まれます.



-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>




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