[Seasar-user:9968] [Teeda] 存在しない html ファイルを指定された場合の挙動

Nishioka Naoto [E-MAIL ADDRESS DELETED]
2007年 8月 20日 (月) 08:33:10 JST


にしおかです。

S2.4.17 + Teeda0.1.11(SNAPSHOT)の組み合わせで、
存在しないhtmlファイルを指定された場合の挙動に関しての質問です。

Tomcat起動直後に、〜/view/hoge.html(hoge.htmlは存在しないとする)に
アクセスした場合、NullPointerExceptionが発生しますが、、
1回でも存在するページを開いた後だと、
org.seasar.teeda.extension.exception.HtmlNotFoundRuntimeExcpetion
が発生するようです(Teedaを経由して1回以上htmlをレンダリング
したかどうかが影響しているような感じでしょうか)。

期待する動きとしては、Tomcat起動直後でも、
NullPointerExceptionではなく
HtmlNotFoundRuntimeExceptionがスローされて欲しいのですが、
こういうものなのでしょうか?

やりたいこととしましては、存在しないhtmlを指定された場合
(いわゆる404になるような場合)に、
「ページが見つかりません」のメッセージを表示したいと考えております。
(teedaErrorPage.diconでHtmlNotFound〜をaddErrorPageで登録)

以下、NullPointerExceptionの際のトレースです。
java.lang.NullPointerException
  at org.seasar.teeda.extension.html.impl.HtmlDescCacheImpl#createHtmlDesc (Ht
mlDescCacheImpl.java#109)
  at org.seasar.teeda.extension.html.impl.HtmlDescCacheImpl#createHtmlDescFrom
RealPath (HtmlDescCacheImpl.java#87)
  at org.seasar.teeda.extension.html.impl.HtmlDescCacheImpl#createHtmlDesc (Ht
mlDescCacheImpl.java#74)
  at org.seasar.teeda.extension.html.impl.TagProcessorCacheImpl#updateTagProce
ssor (TagProcessorCacheImpl.java#75)
  at org.seasar.teeda.extension.html.impl.HtmlViewHandler#restoreView (HtmlVie
wHandler.java#98)
  at org.seasar.teeda.core.lifecycle.impl.RestoreViewPhase#composeViewRoot (Re
storeViewPhase.java#113)
  at org.seasar.teeda.core.lifecycle.impl.RestoreViewPhase#executePhase (Resto
reViewPhase.java#81)
  at org.seasar.teeda.core.lifecycle.AbstractPhase#execute (AbstractPhase.java
#57)
  at org.seasar.teeda.core.lifecycle.LifecycleImpl#execute (LifecycleImpl.java
#68)

------------------------------
Nishioka Naoto




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