[Wicket-ja-user 365] Re: FeedbackPanel にメッセージを出力するとStackOverflowError等が起きてしまう。

Back to archive index

shinya okino shiny****@gmail*****
2009年 7月 20日 (月) 03:02:47 JST


沖野です。

wicket1.3.6でMessageListView#populateItemを以下に書き換えて試してみたところ
StackOverflowが発生しなくなくなったので、原因と考えて間違いなさそうです。

矢野さん
出来れば英語MLに送っていただきたいのですが、よろしいでしょうか。

protected void populateItem(final ListItem listItem) {
	final FeedbackMessage message = (FeedbackMessage) listItem.getModelObject();
	message.markRendered();
	final String levelAsString = message.getLevelAsString();
	final IModel replacementModel = new Model() {
		private static final long serialVersionUID = 1L;
		public Object getObject() {
			return "feedbackPanel" + levelAsString;
		}
	};
	final Component label = newMessageDisplayComponent("message",message);
	final AttributeModifier levelModifier = new
AttributeModifier("class", replacementModel);
	label.add(levelModifier);
	listItem.add(levelModifier);
	listItem.add(label);
}



2009/07/20 2:38 に Tsutomu Yano<t_yano****@me*****> さんは書きました:
> 矢野です
>
> maedaさん
>
> とりあえず英語のMLにも投げてみました。リンクのクリックのたびにSessionのサイズを
> ログに出力してみたところ、info()を使っているときは、クリックするたびにサイズが
> 増えていっています。Sessionに余分なデータが溜まっているように見えます。
>
> 沖野さんの推測が関係あるのかもしれません。
>
> とりあえずの回避策なのですが、info()メソッドの呼び出しを次のようにすると、
> Sessionサイズは増大しないようです。
>
> Session.get().info("メッセージ");
>
>
> Session.get().info()とcomponent.info()の大きな違いは、info()呼び出し時につくられる
> FeedbackMessageオブジェクトに、componentが渡るかどうかです(Session.get().info()の
> 時には、FeedbackMessageオブジェクトにはcomponentが渡されず、代わりにnullが渡されます)。
>
> とすると、FeedbackMessageに渡したcomponentが貯まっているような気がしているのですが、
> うまく追い切れませんでした。
>
>
>
>
> On 2009/07/15, at 9:39, maeda wrote:
>
>> maedaです。
>>
>> 矢野様、返信ありがとうございます。
>>
>> 現在は暫定的にJavaScriptを使用してメッセージを出力するように変更致しましたが
>> 自分のソースに問題がありましたら時間がある時でかまいませんのでよろしくお願いいたします。
>>
>> 毎回、質問ばかりしてしまい申し訳ありません・・・。
>>
>> Tsutomu Yano <t_yano****@me*****> wrote:
>>
>>> maedaさん
>>>
>>> サンプルありがとうございます。
>>> いまちょっと時間が取れない状況なので、週末にでも試してみようと思います。
>>>
>>>
>>> On 2009/07/06, at 15:50, maeda wrote:
>>>
>>>> maedaです。
>>>>
>>>> 矢野様、返信ありがとうございます。
>>>>
>>>> 自分がテスト用で作成したHtmlとJavaファイルがありますがこちらで
>>>> 大丈夫でしょうか?
>>>>
>>>> wicketのバージョンは1.3.1です。
>>>> バージョン1.4でも試しましたが同じ現象でした。
>>>
>>>
>>>
>>> ---------------------------------------------------
>>> 矢野 勉(やの つとむ)
>>> 電子メール: t_yano****@me*****
>>> ---------------------------------------------------
>>>
>>> _______________________________________________
>>> Wicket-ja-user mailing list
>>> Wicke****@lists*****
>>> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user
>>
>> _______________________________________________
>> Wicket-ja-user mailing list
>> Wicke****@lists*****
>> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user
>
> ---------------------------------------------------
> 矢野 勉(やの つとむ)
> 電子メール: t_yano****@me*****
> ---------------------------------------------------
>
> _______________________________________________
> Wicket-ja-user mailing list
> Wicke****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user
>



-- 
沖野信也
shiny****@gmail*****




Wicket-ja-user メーリングリストの案内
Back to archive index