[mayaa-user:614] Re: handled exception, injectedNode is null
荒井 哲三
[E-MAIL ADDRESS DELETED]
2008年 1月 12日 (土) 19:43:37 JST
加藤様、
お忙しい中返信ありがとうございます。
ソースを別途加藤様に送らせていただきます。
取り急ぎ、
荒井
On Fri, 11 Jan 2008 23:28:31 +0900
加藤太朗 <[E-MAIL ADDRESS DELETED]> wrote:
> 加藤です。
>
> > とりあえず前者のpageSerializeをfalseにするで対応したいと思います。
> 確実ですがパフォーマンスも確実に悪くなります。
> HTMLノードが大量にあるページでは、ビルド時間が掛かります。
> シリアライズキャッシュを有効にしていないと重くなります。
>
> > こちら、tomcat(webコンテナ)を再起動したときには必ず発生していまして、
>
> 再起動して必ず発生するのは、シリアライズキャッシュファイルから読み込むためです。
> WEB-INF/.mayaaSpecCache というディレクトリに作られています。
> warを作成する際には、war内にはキャッシュファイルが含まれていないからだと
> 思われます。そのため、WEB-INF/.mayaaSpecCacheにキャッシュファイルが1つもないので、
> 最初のうちは発生しないということになります。
>
> > その後は発生したのは初めてだったのですが、時間がたつにつれて発生する形な
> > のでしょうか?
>
> WEB-INF/.mayaaSpecCacheの中をクリアした上で、tomcat(webコンテナ)を再起動すれば
> しばらくは発生しません。しかし一時的なものです。
>
> 問題のあるページを1回でも開くと、そのページ情報はメモリにしばらくキャッシュ
> されますが、メモリには限界がありますので、GCの頻度が高くなるか、または、
> しばらく誰もそのページをアクセスしなかったか、…のいずれかの理由で、
> ページ情報はアンロードされます。その際にページ情報はシリアライズキャッシュファイルに
> 保存します。
>
> 次回のアンロード済みの同ページにアクセスが来た際には、シリアライズキャッシュファイルを
> 使って復元しようとしますので(テンプレートや.mayaaに変更がない限り)、そこで
> はじめて問題が起きるというわけです。
>
> 一度起きればTomcatを再起動しても、「次回のアンロード済みの同ページにアクセス」と
> 条件は一致しているので、発生しつづけるということになります。
>
> ただ、現物を見ていないので、私の経験した情報からの推測でしかありません。
> シリアライズ・デシリアライズのタイミングについては間違いありませんが、
> 問題が発生している原因については、私の認識している問題とことなるものかも
> しれません。
> できましたら、例外が発生したページの、テンプレートとmayaaファイルを見させていただくと、
> mayaaの品質向上に役立てられる可能性があります。
> 可能な範囲でご協力いただければ幸いです。
>
>
> > 加藤様、
> >
> > お忙しい中、ご返信いただきありがとうございました。
> >
> > とりあえず前者のpageSerializeをfalseにするで対応したいと思います。
> >
> > こちら、tomcat(webコンテナ)を再起動したときには必ず発生していまして、
> > その後は発生したのは初めてだったのですが、時間がたつにつれて発生する形な
> > のでしょうか?
> >
> > 荒井
> >
> > On Fri, 11 Jan 2008 21:29:16 +0900
> > 加藤太朗 <[E-MAIL ADDRESS DELETED]> wrote:
> >
> > > 加藤です。
> > >
> > > 根本理由は少し複雑で解決が難しく、手がつけられていないのですが、
> > > 以下のいずれかで対策できます。
> > >
> > > ・ServiceProviderのpageSerializeをfalseにする(ただし性能が落ちます)。
> > > ・テンプレートのルートノードを静的なものにする。
> > >
> > > 問題が起きるのはデシリアライズした結果が、動的なルートノードを
> > > 復元できないことにあります。
> > > このため、シリアライズキャッシュが無い初期状態では動作し、
> > > キャッシュを使ってページを復元した時には問題が起きます。
> > >
> > > 問題の起きているテンプレートを差し支えない範囲で見せていただけると、
> > > もう少し、具体的なアドバイスができると思います。
> > >
> > >
> > >
> > > --------------------------------------------------------->>
> > > @author Taro KATO (Gluegent, Inc.)
> > > {@link http://d.hatena.ne.jp/t-katochin/}
> > > >> It is better to create than to learn. Creating is the essence of life.
> > >
> > >
> > > _______________________________________________
> > > mayaa-user mailing list
> > > [E-MAIL ADDRESS DELETED]
> > > https://ml.seasar.org/mailman/listinfo/mayaa-user
> >
> > _______________________________________________
> > mayaa-user mailing list
> > [E-MAIL ADDRESS DELETED]
> > https://ml.seasar.org/mailman/listinfo/mayaa-user
>
>
>
> --------------------------------------------------------->>
> @author Taro KATO (Gluegent, Inc.)
> {@link http://d.hatena.ne.jp/t-katochin/}
> >> It is better to create than to learn. Creating is the essence of life.
>
>
> _______________________________________________
> mayaa-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/mayaa-user
>
平素よりお世話になっております、ユーロプランの荒井です。
お忙しい中大変恐縮ですが、何卒よろしくお願い致します。
今後とも、何卒よろしくお願い致します。
取り急ぎ、
荒井
-----------------
有限会社 ユーロプラン
CTO
荒井 哲三
Tetsumi Arai
〒106-0031
東京都港区西麻布4-11-7-PH404
t 050-5534-3199(Direct)
t 03-5485-3166
f 03-5485-3166
m 090-4810-5445
e [E-MAIL ADDRESS DELETED]
www.europlan.co.jp
mayaa-user メーリングリストの案内