[Seasar-user:19673] Re: [mobylet] mobyletSessionを利用しようとするとエラーが出てしまう

ICHIMURA [E-MAIL ADDRESS DELETED]
2010年 4月 30日 (金) 19:00:04 JST


こちらの件、1つ自己解決しました。
非冗長構成の場合に、NullPointerExceptionとなる原因は、
-------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<mobyletSession>
    <key>GUID</key>
    <timeout>30</timeout>
    <adapter>org.mobylet.core.session.impl.MobyletSingleSessionAdapter</adapter>
</mobyletSession>
-------------------------------------------------------

上記のようにサンプルで記述してあったものをそのまま使っていたのですが、
distribution 要素がないことで、NullPointerExceptionになっているようだったので
mobyletSession.xmlに空で 「<distribution> </distribution>」を用意してあげたところ
動くようになりました。

MobyletMultiSessionAdapterにした場合に固まってしまう現象の方ですが、
distribution/path にHttpConectしようとしてそのままレスポンスがなく
固まったようになっているようです。
distribution/path には自分でなにか実装する必要があるのでしょうか?
どこかに説明があるようでしたらそのありかでよいのでご教示いただけないでしょうか。
よろしくお願いします。



2010年4月30日18:07 ICHIMURA <[E-MAIL ADDRESS DELETED]>:
> お世話になります。いちむらと申します。
>
> こちらを参考に設定をしました。
> http://mobylet.seasar.org/settings/mobyletSessionXml.html
>
> 非冗長構成の場合「MobyletSingleSessionAdapterの設定」を試してみましたが
> SessionUtils#setを呼び出したところで以下のような例外が発生してしまいます。
> -----------------------------------------------------------------------------------------------
> java.lang.NullPointerException
>        at org.mobylet.core.session.impl.MobyletMultiSessionManager.isManaged(MobyletMultiSessionManager.java:114)
>        at org.mobylet.core.http.MobyletFilter.doFilter(MobyletFilter.java:58)
>        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>        at com.gmo_sc.sastruts.filter.ExceptionFilter.doFilter(ExceptionFilter.java:28)
>        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(Thread.java:619)
> -----------------------------------------------------------------------------------------------
>
> Tomcatの起動ログで、「mobyletSession.xml が読み込まれました」と出力されており
> ちゃんと読み込まれていることは確認しています。
>
> 上記のエラーではどのような原因が考えられますでしょうか?
>
> ちなみにデフォルト(jarに含まれているもの)の設定だと
> SessionUtils#set で止まってしまい処理が返ってこなくなってしまいます。
>
> ・環境
> seasar2 + SAStruts + S2JDBC
> Tomcat6
> JDK 1.6.0_18
> eclipse, WTP
>
> 少しでも手がかりになる情報を頂けると助かります。
> よろしくお願いします。
>


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