[Seasar-user:13977] S2Maiで送信後、Pageクラスが見つからない
k hase
[E-MAIL ADDRESS DELETED]
2008年 4月 28日 (月) 14:46:02 JST
初めまして。ハセと申します。
S2Maiを使用したメールの送信後の挙動について、質問があります。
Webページからアップロードしたファイルの内容を条件に、メールを送信するという要件が御座います。
その要件を満たした環境で下記の操作をすると、ClassNotFoundExceptionが発生してしまいます。
※デプロイ設定は、ホットデプロイを設定しております。
・ファイルをアップロードするページからファイルをアップロード
・ファイルのアップロードが完了した契機で、そのファイルの内容を条件にメールを送信
・メール送信完了後、アップロードしたページへ遷移(自画面遷移)
・そのページから、アップロードしたファイルをダウンロードするリンクを押下する
・ClassNotFoundException発生
例外のスタックトレースは、次の通りです。
--------------
org.seasar.framework.exception.ClassNotFoundRuntimeException:
[ESSR0044]クラスが見つかりませんでした。詳細はjava.lang.ClassNotFoundException:
jp.co.aaa.bbb.web.aaa.upload.UploadPage$$EnhancedByS2AOP$$110347e
org.seasar.framework.container.hotdeploy.HotdeployUtil$RebuilderImpl.rebuild(HotdeployUtil.java:166)
org.seasar.framework.container.hotdeploy.HotdeployUtil.rebuildValueInternal(HotdeployUtil.java:126)
org.seasar.framework.container.hotdeploy.HotdeployUtil.rebuildValue(HotdeployUtil.java:107)
org.seasar.framework.container.external.RebuildableExternalContextMap.get(RebuildableExternalContextMap.java:59)
javax.faces.internal.scope.VariableScope.getContexts(VariableScope.java:100)
javax.faces.internal.scope.VariableScope.getOrCreateContext(VariableScope.java:58)
javax.faces.internal.scope.RedirectScope.getOrCreateContext(RedirectScope.java:46)
org.seasar.teeda.extension.util.TeedaExtensionErrorPageManagerImpl.saveException(TeedaExtensionErrorPageManagerImpl.java:85)
org.seasar.teeda.extension.util.TeedaExtensionErrorPageManagerImpl.handleException(TeedaExtensionErrorPageManagerImpl.java:59)
org.seasar.teeda.core.lifecycle.LifecycleImpl.handleException(LifecycleImpl.java:113)
org.seasar.teeda.core.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:105)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:92)
org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
jp.co.aaa.bbb.filter.bbbAuthFilter.doFilter(bbbAuthFilter.java:84)
jp.co.aaa.bbb.filter.bbbLoginFilter.doFilter(bbbLoginFilter.java:80)
org.seasar.framework.container.hotdeploy.HotdeployFilter.doFilter(HotdeployFilter.java:63)
org.seasar.framework.container.filter.S2ContainerFilter.doFilter(S2ContainerFilter.java:64)
org.seasar.extension.filter.EncodingFilter.doFilter(EncodingFilter.java:69)
--------------
以前、S2Maiにはホットデプロイにて動作を行うと、例外が発生してしまうという現象があったと思います。
私の環境でも、同問題が発生したので、この問題が解消されているバージョン(現在使用しているバージョン)へアップデートいたしました。
しかし、スタックトレースを見ると、ホットデプロイ関連のクラス内にて例外が発生しているように見受けられます。
S2Maiには、未だホットデプロイに対応していない箇所が存在しているのでしょうか。
使用しているライブラリ等のバージョンは、下記の通りです。
・S2Mai:0.9.6
・Teeda:1.0.8
・Tomcat:5.5.23
以上、宜しくお願いします。
Seasar-user メーリングリストの案内