[Seasar-user:12367] [teeda] ErrorPage クラスでの Exception について

shaku - i-navigator corporation - [E-MAIL ADDRESS DELETED]
2008年 1月 1日 (火) 02:58:14 JST


はじめまして、釈と申します。
社内システムでteedaの導入を検討しており、調査を兼ねてサンプルの作成を
行っております。
ErrorPageクラスにて、exception がうまく取得出来ないようなのですが、
ご存知の方がいらっしゃいましたらご教示頂ければと存じます。

環境は、Dolteng0.24.0 SuperAgile + dbflute-0.5.9です。
(hotdeploy環境でやってます。)
s2-framework-2.4.18-rc1
teeda-core-1.0.11-SP1
s2-dao-1.0.47-RC1

現象は、ErrorResultPage.javaで、exception が null でインジェクションされ
ていないようなのです。
よろしくお願い致します。


関連ファイル(抜粋)は以下のとおりです。

hogePage.java
-------------
  public void hogeMethod() {
    throw new WebAppRuntimeException("エラーです!");
    ・・・・


WebAppRuntimeException.java
---------------------------
public class WebAppRuntimeException extends RuntimeException {
  public WebAppRuntimeException(String message) {
    super(message);
  }
}


teedaErrorPage.dicon
--------------------
<components namespace="teedaErrorPage" >
  <component
class="org.seasar.teeda.extension.util.TeedaExtensionErrorPageManagerImpl">
    <initMethod name="addErrorPage">
      <arg>@[E-MAIL ADDRESS DELETED]</arg>
      <arg>"/view/error/errorResult.html"</arg>
    </initMethod>
  </component>
</components>


ErrorResultPage.java
--------------------
public class ErrorResultPage {

  public HeaderPage headerPage;
  private static final String SERVLET_NAME =
"javax.faces.webapp.FacesServlet";
  private FacesContext context;
  private String stackTrace;
  private String amessage;
  private Exception exception;

  public Class prerender() {
    stackTrace = buildStackTrace(exception);
    amessage = exception.getMessage();
    return null;
  }

  protected String buildStackTrace(Throwable t) {
    (省略)
  }

  (setter/getter省略)

}


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