From tkbyth @ gmail.com Thu Jul 3 16:48:11 2008 From: tkbyth @ gmail.com (takayuki hayashi) Date: Thu, 3 Jul 2008 16:48:11 +0900 Subject: [Wicket-ja-user 139] Re: =?iso-2022-jp?b?d2lja2V0LWphGyRCSlk2LzJxJEokSSRyJGQkQyRGGyhC?= =?iso-2022-jp?b?GyRCJF8kPyQkJE4kRyQ5ISMbKEI=?= In-Reply-To: References: Message-ID: 林です。 いいですね〜。開催の際には私も是非参加したいです。 個人的には読書会とかいいと思うんですが、 それだと回数を重ねてくると新規参加者が来づらい環境になるんでしょうか?? (すみません、自分は読書会に参加したことがないので・・・) あと、 > なお、個人的にはあまりお固くJava的なビジネス寄りにはしたくはないんです。技術者の勉強会で > ありたいです。 この一文におけるビジネス寄りというのは『例えばWicketでERPを構築する場合に注意することは〜云々』 というような事を指すという認識で問題ないですか? 2008/06/22 9:27 Tsutomu Yano : > 矢野です。 > > まず最初に、いま書いてるWicketの本の発売は遅れます。理由はブログ(http://d.hatena.ne.jp/t_yano/)にも > 書いたのですが、そもそもWicket 1.4が遅れているからです。 > > 1.4で出すことは出版社も合意なので、1.4が出るまでは保留です。 > > > 本題ですが、Wicket-jaも何か楽しげに活動などしてみたいのですが、とりあえず勉強会とかを開いて > みたいです。ちなみに「やりたい」というだけで、場所とかは特に押さえていません。 > > 勉強会ってどうやるのかよくわからないので周りに聞いてみましたら、読書会なんかが多いようです。 > 読書会というのは、どうやら大学のゼミの輪読会のようなもののようですね。 > > > まずは東京圏内でなにかやりたいです。みなさん、参加するとしたらどういったことをやってみたい > (またはしてほしい)ですか? > > ・一方的でいいので簡単にサイトを作るところを説明してほしい > ・読書会的に複数回やりたい > ・質問したら誰かがその場でそれを実例で回答するようなプログラムをざっと書くQ&A > (質問したい、プログラムを書きたい) > ・Wicketで作った簡単なものを持ち寄ってライトニングトークのもう少し時間の長い版として > プレゼンをする > > というようなアイデアがなんとなく浮かんでいます。LTとかも楽しそうです。 > > もっとこんなのをやりたいとか、上記4つならこれをやりたいとか、意見があれば聞かせて下さい! > > > なお、個人的にはあまりお固くJava的なビジネス寄りにはしたくはないんです。技術者の勉強会で > ありたいです。 > > ビジネスなことがきらいなわけではないのですが、勉強会は技術中心で、そういう方面については > 個人的に懇親会とかで...とか考えています。 > > > --------------------------------------------------- > 矢野 勉(やの つとむ) > 電子メール:benbrand_at_mac.com > --------------------------------------------------- > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > From wicket @ leangen.net Fri Jul 4 14:48:54 2008 From: wicket @ leangen.net (David Leangen) Date: Fri, 4 Jul 2008 14:48:54 +0900 Subject: [Wicket-ja-user 140] Re: =?iso-2022-jp?b?d2lja2V0LWphGyRCSlk2LzJxJEokSSRyJGQkQyRGGyhC?= =?iso-2022-jp?b?GyRCJF8kPyQkJE4kRyQ5ISMbKEI=?= In-Reply-To: Message-ID: 矢野様 > 本題ですが、Wicket-jaも何か楽しげに活動などしてみたいのですが、とりあえず > 勉強会とかを開いてみたいです。ちなみに「やりたい」というだけで、場所とかは > 特に押さえていません。 Good ideaだと思います。ありがとうございます。 しかし、私の方には、関東なら参加できません。 関西であれば是非参加します。 宜しくお願いします。 David From keisuken @ cappuccino.ne.jp Fri Jul 4 15:28:27 2008 From: keisuken @ cappuccino.ne.jp (NISHIMOTO Keisuke) Date: Fri, 04 Jul 2008 15:28:27 +0900 Subject: [Wicket-ja-user 141] Re: =?iso-2022-jp?b?d2lja2V0LWphGyRCSlk2LzJxJEokSSRyJGQkQyRGGyhC?= =?iso-2022-jp?b?GyRCJF8kPyQkJE4kRyQ5ISMbKEI=?= In-Reply-To: References: Message-ID: <486DC30B.20504@po.cappuccino.ne.jp> 世界の矢野勉様。 David Leangen さんは書きました: >> 本題ですが、Wicket-jaも何か楽しげに活動などしてみたいのですが、とりあえず >> 勉強会とかを開いてみたいです。ちなみに「やりたい」というだけで、場所とかは >> 特に押さえていません。 > > Good ideaだと思います。ありがとうございます。 > > しかし、私の方には、関東なら参加できません。 > 関西であれば是非参加します。 なるほど、関西でも開催、というのはいいアイデアかもしれませんね。 問題は、各種手配と講師を用意できるかどうかですね。 #会場については安い場所を1つ知ってます。 とりあえず、「Scalaから使うWicket」ネタとかはできるかもしれ ません。 -- ---------+---------+---------+---------+---------+---------+---------- NISHIMOTO Keisuke From wicket @ leangen.net Sat Jul 5 13:43:00 2008 From: wicket @ leangen.net (David Leangen) Date: Sat, 5 Jul 2008 13:43:00 +0900 Subject: [Wicket-ja-user 142] Re: =?iso-2022-jp?b?d2lja2V0LWphGyRCSlk2LzJxJEokSSRyJGQkQyRGGyhC?= =?iso-2022-jp?b?GyRCJF8kPyQkJE4kRyQ5ISMbKEI=?= In-Reply-To: <486DC30B.20504@po.cappuccino.ne.jp> Message-ID: リアンジンです。 > なるほど、関西でも開催、というのはいいアイデアかもしれませんね。 > 問題は、各種手配と講師を用意できるかどうかですね。 先ずは、関西の中でWicketを使ってる人達が何人くらいいるでしょう? 声掛けていただけませんか? > #会場については安い場所を1つ知ってます。 たぶん私の会社にもできると思います。 無料ですが、三宮になっています。 > とりあえず、「Scalaから使うWicket」ネタとかはできるかもしれ > ません。 私に対しては面白いと思います。 私の方には興味があればWicket+OSGiの話できると思います。 From kkadowakix @ gmail.com Sat Jul 5 13:55:03 2008 From: kkadowakix @ gmail.com (Kohei Kadowaki) Date: Sat, 5 Jul 2008 13:55:03 +0900 Subject: [Wicket-ja-user 143] Re: =?iso-2022-jp?b?d2lja2V0LWphGyRCSlk2LzJxJEokSSRyJGQkQyRGGyhC?= =?iso-2022-jp?b?GyRCJF8kPyQkJE4kRyQ5ISMbKEI=?= In-Reply-To: References: <486DC30B.20504@po.cappuccino.ne.jp> Message-ID: <49cedcf50807042155t3cc92c96hc5e174fee90b3938@mail.gmail.com> 門脇です。 > 先ずは、関西の中でWicketを使ってる人達が何人くらいいるでしょう? > 声掛けていただけませんか? 私は大阪・京都在住の学生で、アルバイトでWicketを使っています。 関西で勉強会が開催されましたら、是非参加させて頂きたいと思っています。 よろしくお願い致します。 2008/07/05 13:43 David Leangen : > > リアンジンです。 > >> なるほど、関西でも開催、というのはいいアイデアかもしれませんね。 >> 問題は、各種手配と講師を用意できるかどうかですね。 > > 先ずは、関西の中でWicketを使ってる人達が何人くらいいるでしょう? > 声掛けていただけませんか? > > >> #会場については安い場所を1つ知ってます。 > > たぶん私の会社にもできると思います。 > 無料ですが、三宮になっています。 > > >> とりあえず、「Scalaから使うWicket」ネタとかはできるかもしれ >> ません。 > > 私に対しては面白いと思います。 > > 私の方には興味があればWicket+OSGiの話できると思います。 > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > ----------------------------------------------------- 門脇 恒平 kkadowakix @ gmail.com http://www.kadoppe.net/ ----------------------------------------------------- From kimura @ puggle.jp Sat Jul 5 22:43:50 2008 From: kimura @ puggle.jp (Kazuhiro Kimura) Date: Sat, 5 Jul 2008 22:43:50 +0900 Subject: [Wicket-ja-user 144] Re: =?iso-2022-jp?b?d2lja2V0LWphGyRCSlk2LzJxJEokSSRyJGQkQyRGGyhC?= =?iso-2022-jp?b?GyRCJF8kPyQkJE4kRyQ5ISMbKEI=?= References: <486DC30B.20504@po.cappuccino.ne.jp> <49cedcf50807042155t3cc92c96hc5e174fee90b3938@mail.gmail.com> Message-ID: <005401c8dea5$28f8e730$a2cdfe3c@kimura> 木村です。 私は、現在スクリプトを主流としていますが、以前プロジェクトでWicketを利用していたことから、 非常に興味があります。 現在月1ペースで、他コミュニティと自社勉強会をやっており、 また、今秋ぐらいまでは、東京で仕事をしていることから、 毎回参加とはいきませんが、関西で開催となれば、ぜひ参加させていただこうと思います。 _______________________________________________ ジャービル企画 木村 和広 http://gerbil.co.jp/ ger001200011001 @ gerbil.co.jp _______________________________________________ > 門脇です。 > >> 先ずは、関西の中でWicketを使ってる人達が何人くらいいるでしょう? >> 声掛けていただけませんか? > 私は大阪・京都在住の学生で、アルバイトでWicketを使っています。 > 関西で勉強会が開催されましたら、是非参加させて頂きたいと思っています。 > > よろしくお願い致します。 > > 2008/07/05 13:43 David Leangen : >> >> リアンジンです。 >> >>> なるほど、関西でも開催、というのはいいアイデアかもしれませんね。 >>> 問題は、各種手配と講師を用意できるかどうかですね。 >> >> 先ずは、関西の中でWicketを使ってる人達が何人くらいいるでしょう? >> 声掛けていただけませんか? >> >> >>> #会場については安い場所を1つ知ってます。 >> >> たぶん私の会社にもできると思います。 >> 無料ですが、三宮になっています。 >> >> >>> とりあえず、「Scalaから使うWicket」ネタとかはできるかもしれ >>> ません。 >> >> 私に対しては面白いと思います。 >> >> 私の方には興味があればWicket+OSGiの話できると思います。 >> >> _______________________________________________ >> Wicket-ja-user mailing list >> Wicket-ja-user @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user >> > > ----------------------------------------------------- > 門脇 恒平 > kkadowakix @ gmail.com > http://www.kadoppe.net/ > ----------------------------------------------------- > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > From keisuken @ cappuccino.ne.jp Sun Jul 6 00:18:38 2008 From: keisuken @ cappuccino.ne.jp (NISHIMOTO Keisuke) Date: Sun, 06 Jul 2008 00:18:38 +0900 Subject: [Wicket-ja-user 145] Re: =?iso-2022-jp?b?d2lja2V0LWphGyRCSlk2LzJxJEokSSRyJGQkQyRGGyhC?= =?iso-2022-jp?b?GyRCJF8kPyQkJE4kRyQ5ISMbKEI=?= In-Reply-To: References: Message-ID: <486F90CE.10505@po.cappuccino.ne.jp> David Leangen さんは書きました: >> なるほど、関西でも開催、というのはいいアイデアかもしれませんね。 >> 問題は、各種手配と講師を用意できるかどうかですね。 > > 先ずは、関西の中でWicketを使ってる人達が何人くらいいるでしょう? > 声掛けていただけませんか? そこそこいるように見受けられますね。 また使ってなくても関心はあるようです。 >> #会場については安い場所を1つ知ってます。 > > たぶん私の会社にもできると思います。 > 無料ですが、三宮になっています。 いいのではないでしょうか。 会場とプロジェクターがあれば開催可能に思えます。 >> とりあえず、「Scalaから使うWicket」ネタとかはできるかもしれ >> ません。 > > 私に対しては面白いと思います。 > > 私の方には興味があればWicket+OSGiの話できると思います。 おー。 Wicketの概要を説明できる方がいらっしゃると開催できるんじゃ ないでしょうか。 講師2から3人くらいいれば、立派な勉強会が開催できそうです。 ---- ちなみに関西での開催は未定で、今関東(東京?)で開催という話に なってるので、是非関西でもという話なら講師など立候補していた だければと思います。 ちなみに私は岡山なんで現地での手伝いはしにくいのですが、 関西での開催になれば出来る範囲でお手伝いしたいと思います。 -- ---------+---------+---------+---------+---------+---------+---------- NISHIMOTO Keisuke From tma @ gside.org Sun Jul 6 00:22:28 2008 From: tma @ gside.org (Takeshi Matsuba) Date: Sun, 6 Jul 2008 00:22:28 +0900 Subject: [Wicket-ja-user 146] Re: =?iso-2022-jp?b?d2lja2V0LWphGyRCSlk2LzJxJEokSSRyJGQkQyRGGyhC?= =?iso-2022-jp?b?GyRCJF8kPyQkJE4kRyQ5ISMbKEI=?= In-Reply-To: References: <486DC30B.20504@po.cappuccino.ne.jp> Message-ID: <8b6ef9fc0807050822u544c64d7y8e0f8935c9c25ddc@mail.gmail.com> 松葉と申します。 仕事でもプライベートでもWicket触ってます。 関西Wicket勉強会、是非参加したいです。 Scala, OSGiもおもしろそうですね! ---------------------------------------- tma @ gside.org http://www.gside.org/blowg/b/user/tma ---------------------------------------- From benbrand @ mac.com Sun Jul 6 00:53:13 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Sun, 06 Jul 2008 00:53:13 +0900 Subject: [Wicket-ja-user 147] Re: =?iso-2022-jp?b?d2lja2V0LWphGyRCSlk2LzJxJEokSSRyJGQkQyRGGyhC?= =?iso-2022-jp?b?GyRCJF8kPyQkJE4kRyQ5ISMbKEI=?= In-Reply-To: <486F90CE.10505@po.cappuccino.ne.jp> References: <486F90CE.10505@po.cappuccino.ne.jp> Message-ID: <5D2723B9-81A1-4C58-BBCC-ECD189ABFD83@mac.com> 矢野です。 東京主催予定ですが、実は実家は関西なので、もし日付さえあえば参加したいです。 まあ、なかなか難しいのですが... On 2008/07/06, at 0:18, NISHIMOTO Keisuke wrote: > David Leangen さんは書きました: >>> なるほど、関西でも開催、というのはいいアイデアかもしれませんね。 >>> 問題は、各種手配と講師を用意できるかどうかですね。 >> >> 先ずは、関西の中でWicketを使ってる人達が何人くらいいるでしょう? >> 声掛けていただけませんか? > > そこそこいるように見受けられますね。 > また使ってなくても関心はあるようです。 > >>> #会場については安い場所を1つ知ってます。 >> >> たぶん私の会社にもできると思います。 >> 無料ですが、三宮になっています。 > > いいのではないでしょうか。 > 会場とプロジェクターがあれば開催可能に思えます。 > >>> とりあえず、「Scalaから使うWicket」ネタとかはできるかもしれ >>> ません。 >> >> 私に対しては面白いと思います。 >> >> 私の方には興味があればWicket+OSGiの話できると思います。 > > おー。 > > Wicketの概要を説明できる方がいらっしゃると開催できるんじゃ > ないでしょうか。 > > 講師2から3人くらいいれば、立派な勉強会が開催できそうです。 > > ---- > > ちなみに関西での開催は未定で、今関東(東京?)で開催という話に > なってるので、是非関西でもという話なら講師など立候補していた > だければと思います。 > > ちなみに私は岡山なんで現地での手伝いはしにくいのですが、 > 関西での開催になれば出来る範囲でお手伝いしたいと思います。 > > -- > ---------+---------+---------+---------+---------+---------+---------- > NISHIMOTO Keisuke > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From benbrand @ mac.com Mon Jul 21 00:55:21 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Mon, 21 Jul 2008 00:55:21 +0900 Subject: [Wicket-ja-user 148] Re: =?iso-2022-jp?b?d2lja2V0LWphGyRCSlk2LzJxJEokSSRyJGQkQyRGGyhC?= =?iso-2022-jp?b?GyRCJF8kPyQkJE4kRyQ5ISMbKEI=?= In-Reply-To: References: Message-ID: <0951B0E0-E72E-42C9-A460-70F31AC74E4A@mac.com> 矢野です。 すみませんものすごく返事が遅くなりました。見逃していました... > あと、 >> なお、個人的にはあまりお固くJava的なビジネス寄りにはしたくはないんです。技術者の勉強会で >> ありたいです。 > この一文におけるビジネス寄りというのは『例えばWicketでERPを構築する場合に注意することは〜云々』 > というような事を指すという認識で問題ないですか?  そうですね...曖昧な話なのですが、それが「技術的にWicketではどうやってやるのか」という具体的な 話になるのであればいいかなあと思ってます。  勉強会ではWicketでどうやってコードを書けばどう動くのか、ポイントはどこか、とかそういうことを やっていければと思ってまして、コードの書き方とかでないある種概念的なお話は勉強会でない場所で やったほうがいいんじゃないかと思ってます。 --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From benbrand @ mac.com Tue Jul 22 00:01:05 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Tue, 22 Jul 2008 00:01:05 +0900 Subject: [Wicket-ja-user 149] =?iso-2022-jp?b?GyRCQmgjMTJzGyhCV2lja2V0GyRCSlk2LzJxIUpFbDV+GyhC?= =?iso-2022-jp?b?GyRCIUsbKEI=?= Message-ID: 矢野です。 以前にWicket勉強会をやりたいとMLにも流しましたが、場所が確保できたので告知ページを作りました。 http://www.javelindev.jp/kaigi/first 8月2日(土)の14:30から、文京区後楽園駅近くの下記の会社様のオフィスを借りて行います。 Xarts株式会社様 hhttp://www.xarts.jp/access.html#map_tokyo 一応2日でほぼ確定なのですが、まだ若干の問題があるので1日(金)夜に変更になる可能性があります。 その場合は早めにMLに情報を流します。また確定した場合も連絡します。 勉強会ということでプレゼンと聴く人ではなく、その場で調べるようなことがあってもよいと思っています。 なお、参加だけでなくライトニングトークをやりたいとかプレゼンをやりたいという方も募集しています。 ライトニングトークとかで、ご自分のサービスを紹介してみたりするとおもしろいと思います。どうでしょうか。 10から15人あつまればなーとは思ってますが、5人集まれば開催できると思ってます。 会場はそれなりに広いので、30人くらいは入ると思いますが。 是非ご参加ください。よろしくお願いします。 --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From benbrand @ mac.com Tue Jul 22 00:13:44 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Tue, 22 Jul 2008 00:13:44 +0900 Subject: [Wicket-ja-user 150] Re: =?iso-2022-jp?b?GyRCQmgjMTJzGyhCV2lja2V0GyRCSlk2LzJxIUobKEI=?= =?iso-2022-jp?b?GyRCRWw1fiFLGyhC?= In-Reply-To: References: Message-ID:  すみません記入漏れしました。  参加登録は、リンク先の告知ページに登録用のフォームが用意してあります。  そちらに記入ください  よろしくお願いします。 > http://www.javelindev.jp/kaigi/first --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From benbrand @ mac.com Tue Jul 22 13:55:39 2008 From: benbrand @ mac.com (=?ISO-2022-JP?B?IhskQkxwTG4bKEIgGyRCSlkbKEIi?=) Date: Tue, 22 Jul 2008 13:55:39 +0900 Subject: [Wicket-ja-user 151] =?iso-2022-jp?b?V2lja2V0GyRCSlk2LzJxRnxJVUpROTkkRyQ5ISMbKEI=?= Message-ID: <35634194575162235496773272701773533509-Webmail2@me.com> 矢野です。 すみません、先方より今朝連絡が入りまして、2日(土)は担当者不在のため無理になりました。 申し訳ありませんが、日付は8月1日(金)18:30からに変更になります。 日付変更で出席できなくなる方もいるとおもうのでキャンセル用のフォームを作成する予定ですが、 とりあえず私にメールいただければこちらで手動で更新いたします。 benbrand at mac.com までメールください。 告知ページ: http://www.javelindev.jp/kaigi/first --------------------- 矢野 勉(やの つとむ) benbrand @ mac.com 火曜日、7月22、2008、12:10AM、 "Tsutomu Yano" のメッセージ: >矢野です。 > >以前にWicket勉強会をやりたいとMLにも流しましたが、場所が確保できたので告知ページを作りました。 > >http://www.javelindev.jp/kaigi/first > > >8月2日(土)の14:30から、文京区後楽園駅近くの下記の会社様のオフィスを借りて行います。 > >Xarts株式会社様 hhttp://www.xarts.jp/access.html#map_tokyo > > >一応2日でほぼ確定なのですが、まだ若干の問題があるので1日(金)夜に変更になる可能性があります。 >その場合は早めにMLに情報を流します。また確定した場合も連絡します。 > >勉強会ということでプレゼンと聴く人ではなく、その場で調べるようなことがあってもよいと思っています。 > > >なお、参加だけでなくライトニングトークをやりたいとかプレゼンをやりたいという方も募集しています。 >ライトニングトークとかで、ご自分のサービスを紹介してみたりするとおもしろいと思います。どうでしょうか。 > >10から15人あつまればなーとは思ってますが、5人集まれば開催できると思ってます。 >会場はそれなりに広いので、30人くらいは入ると思いますが。 > > >是非ご参加ください。よろしくお願いします。 > > >--------------------------------------------------- >矢野 勉(やの つとむ) >電子メール:benbrand_at_mac.com >--------------------------------------------------- > >_______________________________________________ >Wicket-ja-user mailing list >Wicket-ja-user @ lists.sourceforge.jp >http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > > From r_f_315 @ hotmail.com Wed Jul 23 12:30:37 2008 From: r_f_315 @ hotmail.com (=?iso-2022-jp?B?GyRCOEVAbhsoQiAbJEJOdRsoQg==?=) Date: Wed, 23 Jul 2008 03:30:37 +0000 Subject: [Wicket-ja-user 152] =?iso-2022-jp?b?IFJlZGlyZWN0GyRCO34kThsoQlNlc3Npb24bJEIkSyREGyhC?= =?iso-2022-jp?b?GyRCJCQkRhsoQg==?= Message-ID: 古川です。 リンクとセッションについて悩み、どなたかご教示いただけないかと思い投稿です。 WebSessionクラスを継承した独自クラスを作成し、 aタグでページ遷移しながらセッション情報を取得したまでは良かったのですが、 セッション情報が取得できたのはPageLink()を使用したときのみで、 BookmarkablePageLink()を使用したときはセッション情報が落ちてしまっていました。 やりたいことはURLを汚さずに(NiceURLで)遷移を行いながらセッション情報を維持することです。 ユーザー操作でページが A -> B -> C と遷移するときに、 A、B、C共にNiceURLで、ユーザーが B のページをブックマークした場合に、 Aからのセッション情報が無いので処理を切り替える  というようなことを実現したいのですが、 Wicketがリダイレクト時にセッションを自動的に維持してくれたりはしないのでしょうか??? また自動でなくても上記の動きを実現するような方法が存在するのでしょうか? --------------------------------------------------- 古川 烈(ふるかわ れつ) 電子メール:r_f_315 @ hotmail.com --------------------------------------------------- _________________________________________________________________ イカ天やWe舞台のWebオーディション、夢をかなえるチャンス!詳しくはこちら http://transform.jp.msn.com/ -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/wicket-ja-user/attachments/20080723/8bf8aa9a/attachment.htm From sari.nakamura @ nttcom.co.jp Wed Jul 23 13:40:21 2008 From: sari.nakamura @ nttcom.co.jp (Sari Nakamura) Date: Wed, 23 Jul 2008 13:40:21 +0900 Subject: [Wicket-ja-user 153] Re: =?iso-2022-jp?b?UmVkaXJlY3QbJEI7fiROGyhCU2Vzc2lvbhskQiRLGyhC?= =?iso-2022-jp?b?GyRCJEQkJCRGGyhC?= References: Message-ID: <003f01c8ec7e$376f88f0$c24e850a@rfidpc26> 中村(yuripop)と申します。 > ユーザー操作でページが A -> B -> C と遷移するときに、 > A、B、C共にNiceURLで、ユーザーが B のページをブックマークした場合に、 > Aからのセッション情報が無いので処理を切り替える  > というようなことを実現したいのですが NiceURLに任意のパラメータ(PageParameters.getString()で取り出せるもの) を付けることが可能なら、以下のやり方ができるかもしれません。  # 「NiceURL」が完全な固定値という意味なら、  # 当てはまらないです、すみません^^; ---例---- A -> B -> C と一連の画面遷移があるとき、 すべてのページでセッションID(AppSession.getId()の値)等を意識する。 ページBのURLは mount(new MixedParamUrlCodingStrategy("/waiting", WaitPage.class, new String[] {"sessionid"})); などとマウントしておいて、 Aからの遷移先URLとしては session.getId() したものを / の先にくっつけるイメージです。 次に、ページBではコンストラクタなどで、  ・URLから"sessionid"パラメータを取り出す  ・そのときの AppSession から getId() する この両者を比較して、結果で処理を分岐する。 ---------- これなら、A -> B ときたセッションをセッション1とし、 まったく別に機会にたまたまBのURLを呼び出した際の セッションをセッション2とすると、 セッション1とセッション2を区別して処理を分けられます。 Wicket1.3.1で、これでうまくいった覚えがあります。 ご質問内容とはズレる部分がありますが、以下のエントリで もう少し詳しく実装内容を書いていました。 (参考)http://d.hatena.ne.jp/yuripop/20080316/p1 なお、説明がかなり下手くそなうえ、もしかすると趣旨を理解 してないかもしれません、その場合はご容赦くださいませ。 古川です。 リンクとセッションについて悩み、どなたかご教示いただけないかと思い投稿です。 WebSessionクラスを継承した独自クラスを作成し、 aタグでページ遷移しながらセッション情報を取得したまでは良かったのですが、 セッション情報が取得できたのはPageLink()を使用したときのみで、 BookmarkablePageLink()を使用したときはセッション情報が落ちてしまっていました。 やりたいことはURLを汚さずに(NiceURLで)遷移を行いながらセッション情報を維持することです。 ユーザー操作でページが A -> B -> C と遷移するときに、 A、B、C共にNiceURLで、ユーザーが B のページをブックマークした場合に、 Aからのセッション情報が無いので処理を切り替える  というようなことを実現したいのですが、 Wicketがリダイレクト時にセッションを自動的に維持してくれたりはしないのでしょうか??? また自動でなくても上記の動きを実現するような方法が存在する・u桙フでしょうか? --------------------------------------------------- 古川 烈(ふるかわ れつ) 電子メール:r_f_315 @ hotmail.com --------------------------------------------------- *-*-*-*-*-*-- SARI Nakamura (sari.nakamura @ nttcom.co.jp) From r_f_315 @ hotmail.com Wed Jul 23 15:43:17 2008 From: r_f_315 @ hotmail.com (=?iso-2022-jp?B?GyRCOEVAbhsoQiAbJEJOdRsoQg==?=) Date: Wed, 23 Jul 2008 06:43:17 +0000 Subject: [Wicket-ja-user 154] =?iso-2022-jp?b?IFJFOiAgUmU6CVJlZGlyZWN0GyRCO34kThsoQlNlc3Npb24=?= =?iso-2022-jp?b?GyRCJEskRCQkJEYbKEI=?= In-Reply-To: <003f01c8ec7e$376f88f0$c24e850a@rfidpc26> References: <003f01c8ec7e$376f88f0$c24e850a@rfidpc26> Message-ID: 古川です。 すいません、説明が少し足りていませんでした。 NiceURLは完全固定にしたいと思っております。 もっと簡単に言うと、 トップページからリンク視点でみるとツリー上に配置されている固定URLのページに対して パンくずリストをヘッダー辺りに表示したいということです。 セッションが存在する場合は以前までに経由してきたページへのリンク用パンくずを表示し、 ユーザーによって途中のページがブックマークされ、そこに突然飛んでこられた場合は、 セッション情報無しとして何も表示しない といった切り分けを予定しております。 現在調査したところによると WebPage継承のページクラスのコンストラクタで public コンストラクタ { MySession session = (MySession)this.getSession(); /* データを詰める */ session.getBreadURLMap().put( "トップ", "http://localhost:8080/SessionTest01/" ); /* セッションをバインドする */ session.bind(); } と記述すれば、固定URLへのリダイレクト時もセッションが自動で維持されることを確認しました。 しかし、これだと固定URLの後ろに http://localhost:8080/MyNiceURL;jsessionid=ほげほげ のようにセッションIDが表示されURLが汚されてしまったので、 session.bind();のすぐ下で /* URLが汚いって言う??? */ session.dirty(); という一文を追加してみたところ、綺麗なURLのまま遷移先のページまでセッションが維持できました。 session.dirty()については 「感」 でやってみただけなのでそもそも使い方や使う場所自体間違えているかもしれません。 もう少し調査を続けたいと思います。 しかし、なるほど、こういうやり方もあるのですね。 ありがとうございました、勉強になりました。 > From: sari.nakamura @ nttcom.co.jp > To: wicket-ja-user @ lists.sourceforge.jp > Date: Wed, 23 Jul 2008 13:40:21 +0900 > Subject: [Wicket-ja-user 153] Re: Redirect時のSessionについて > > 中村(yuripop)と申します。 > > > ユーザー操作でページが A -> B -> C と遷移するときに、 > > A、B、C共にNiceURLで、ユーザーが B のページをブックマークした場合に、 > > Aからのセッション情報が無いので処理を切り替える  > > というようなことを実現したいのですが > > NiceURLに任意のパラメータ(PageParameters.getString()で取り出せるもの) > を付けることが可能なら、以下のやり方ができるかもしれません。 >  # 「NiceURL」が完全な固定値という意味なら、 >  # 当てはまらないです、すみません^^; > > ---例---- > A -> B -> C と一連の画面遷移があるとき、 > すべてのページでセッションID(AppSession.getId()の値)等を意識する。 > > ページBのURLは > mount(new MixedParamUrlCodingStrategy("/waiting", WaitPage.class, new > String[] {"sessionid"})); > などとマウントしておいて、 > Aからの遷移先URLとしては session.getId() したものを > / の先にくっつけるイメージです。 > > 次に、ページBではコンストラクタなどで、 >  ・URLから"sessionid"パラメータを取り出す >  ・そのときの AppSession から getId() する > この両者を比較して、結果で処理を分岐する。 > ---------- > > これなら、A -> B ときたセッションをセッション1とし、 > まったく別に機会にたまたまBのURLを呼び出した際の > セッションをセッション2とすると、 > セッション1とセッション2を区別して処理を分けられます。 > > Wicket1.3.1で、これでうまくいった覚えがあります。 > > ご質問内容とはズレる部分がありますが、以下のエントリで > もう少し詳しく実装内容を書いていました。 > (参考)http://d.hatena.ne.jp/yuripop/20080316/p1 > > なお、説明がかなり下手くそなうえ、もしかすると趣旨を理解 > してないかもしれません、その場合はご容赦くださいませ。 > > > > 古川です。 > > リンクとセッションについて悩み、どなたかご教示いただけないかと思い投稿です。 > > WebSessionクラスを継承した独自クラスを作成し、 > aタグでページ遷移しながらセッション情報を取得したまでは良かったのですが、 > セッション情報が取得できたのはPageLink()を使用したときのみで、 > BookmarkablePageLink()を使用したときはセッション情報が落ちてしまっていました。 > > > やりたいことはURLを汚さずに(NiceURLで)遷移を行いながらセッション情報を維持することです。 > > ユーザー操作でページが A -> B -> C と遷移するときに、 > A、B、C共にNiceURLで、ユーザーが B のページをブックマークした場合に、 > Aからのセッション情報が無いので処理を切り替える  > > というようなことを実現したいのですが、 > Wicketがリダイレクト時にセッションを自動的に維持してくれたりはしないのでしょうか??? > また自動でなくても上記の動きを実現するような方法が存在する・u桙フでしょうか? > > > --------------------------------------------------- > 古川 烈(ふるかわ れつ) > 電子メール:r_f_315 @ hotmail.com > --------------------------------------------------- > > > *-*-*-*-*-*-- > SARI Nakamura > (sari.nakamura @ nttcom.co.jp) > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user _________________________________________________________________ MSN相談党、誕生。あなたの知識で日本を変えよう。党首には押切もえが就任! http://questionbox.jp.msn.com/index.php3?StatusCheck=ON -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/wicket-ja-user/attachments/20080723/e07304ac/attachment.htm From tma @ gside.org Wed Jul 23 23:42:05 2008 From: tma @ gside.org (Takeshi Matsuba) Date: Wed, 23 Jul 2008 23:42:05 +0900 Subject: [Wicket-ja-user 155] Re: =?iso-2022-jp?b?UmVkaXJlY3QbJEI7fiROGyhCU2Vzc2lvbhskQiRLGyhC?= =?iso-2022-jp?b?GyRCJEQkJCRGGyhC?= In-Reply-To: References: <003f01c8ec7e$376f88f0$c24e850a@rfidpc26> Message-ID: <8b6ef9fc0807230742i65045859t9c5e9b2b4700a93e@mail.gmail.com> 松葉です。 解決というわけではないので、申し訳ないのですが一点だけ。 BookmarkablePageLinkはstatelessなので、 Sessionを維持したければgetStatelessHint()メソッドをオーバーライドするのが良いかもしれません。 add(new BookmarkablePageLink("stateless", Next1.class){ protected boolean getStatelessHint() { return false; } }); > http://localhost:8080/MyNiceURL;jsessionid=ほげほげ > > のようにセッションIDが表示されURLが汚されてしまったので、 すいません、これの回避はちょっとわからないです。 From tc512842 @ ybb.ne.jp Thu Jul 24 00:02:13 2008 From: tc512842 @ ybb.ne.jp (=?iso-2022-jp?B?GyRCQG5FaCEhQD87ShsoQg==?=) Date: Thu, 24 Jul 2008 00:02:13 +0900 Subject: [Wicket-ja-user 156] =?iso-2022-jp?b?GyRCJCIkayU/JTAkcj1QJDckPyQkO34hIj1QJDckPyQvGyhC?= =?iso-2022-jp?b?GyRCJEokJDt+JE5AKThmGyhC?= Message-ID: <002601c8ecd5$1799be40$0200a8c0@skawashi10> 川嶋です ありがちなケースだと思われましたが サンプルが見つかりませんでした なにか良い実装方法はないでしょうか? やりたいこと) 市町村Listをつかってtdが3列のtabelを作りたい。 例) ○○市△△市□□市 ・・・・ ・・・・ ○△町△□町○□村 考えた方法) populateItem内で・・・・ 1.start_tr、end_trのコンポーネントを出したくない時は addするけどsetVisible(false) 2.start_tr、end_trのコンポーネントのreplaceComponentTagBody で、を出したり出さなかったり。 hoge市 1.も2.も、出力したくないときでもコンポーネントを addしなければいけないのが嫌です かわしま From benbrand @ mac.com Thu Jul 24 03:15:23 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Thu, 24 Jul 2008 03:15:23 +0900 Subject: [Wicket-ja-user 157] Re: =?iso-2022-jp?b?GyRCJCIkayU/JTAkcj1QJDckPyQkO34hIj1QJDcbKEI=?= =?iso-2022-jp?b?GyRCJD8kLyRKJCQ7fiROQCk4ZhsoQg==?= In-Reply-To: <002601c8ecd5$1799be40$0200a8c0@skawashi10> References: <002601c8ecd5$1799be40$0200a8c0@skawashi10> Message-ID: んーありがちなケースとのことなのでやりたいことはシンプルなことなのでしょうが ちょっとよくわからないんです。 を出したかったり出したくなかったりする理由はなんなのでしょうか? 通常、テーブルの行繰り返しならにListViewを適用すれば済むと思うのですが、今回は タグだけ出したり出さなかったりして、その内側のタグは常に表示するのですよね? 「結果としてこういうタグを出力したい」というのが見えてくれば、なにか別の解決法も 見えてくるように思うのですが...いかがでしょうか。 On 2008/07/24, at 0:02, 川嶋 誠司 wrote: > 川嶋です > > ありがちなケースだと思われましたが > サンプルが見つかりませんでした > なにか良い実装方法はないでしょうか? > > やりたいこと) > 市町村Listをつかってtdが3列のtabelを作りたい。 > > 例) > > ○○市△△市□□市 > ・・・・ > ・・・・ > ○△町△□町○□村 > > 考えた方法) > populateItem内で・・・・ > 1.start_tr、end_trのコンポーネントを出したくない時は > addするけどsetVisible(false) > 2.start_tr、end_trのコンポーネントのreplaceComponentTagBody > で、を出したり出さなかったり。 > > > > hoge市 > > > > 1.も2.も、出力したくないときでもコンポーネントを > addしなければいけないのが嫌です > > かわしま > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From benbrand @ mac.com Thu Jul 24 03:31:55 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Thu, 24 Jul 2008 03:31:55 +0900 Subject: [Wicket-ja-user 158] Re: =?iso-2022-jp?b?UmVkaXJlY3QbJEI7fiROGyhCU2Vzc2lvbhskQiRLGyhC?= =?iso-2022-jp?b?GyRCJEQkJCRGGyhC?= In-Reply-To: References: <003f01c8ec7e$376f88f0$c24e850a@rfidpc26> Message-ID: <322BF37B-DA2F-4833-8059-2A2304DAF0A3@mac.com> > しかし、これだと固定URLの後ろに > > http://localhost:8080/MyNiceURL;jsessionid=ほげほげ > > のようにセッションIDが表示されURLが汚されてしまったので、 > session.bind();のすぐ下で > > /* URLが汚いって言う??? */ > session.dirty(); > > という一文を追加してみたところ、綺麗なURLのまま遷移先のページまでセッションが維持できました。 > session.dirty()については 「感」 でやってみただけなのでそもそも使い方や使う場所自体間違えているかもしれません。 > もう少し調査を続けたいと思います。 矢野です。 前記だとURLにセッションIDがついて、後記だとつかない(jsessionid cookieをちゃんと使ってると思われます)理由までは わかりませんが、session.dirty()の使い方としては正しいと思いますよ。 独自のSessionサブクラスを使う場合(使うことが奨励されています)、Sessson#setProperty()を介さずにセッションの 内容が変更されるため、WicketはバックエンドのHttpSessionとの同期タイミングを知ることが出来ません。 ですから「session.getBreadURLMap().put(key, value)」でセッションの内容を変更したあとにdirty()メソッドを呼ぶことは 正しい操作です。これによりWicketはレスポンス返却タイミングでHttpSessionとWicket Sessionを同期します。 ただ、これが生成されるURLになぜ影響を与えるかまでは追いかけられてません。 --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From benbrand @ mac.com Thu Jul 24 03:49:15 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Thu, 24 Jul 2008 03:49:15 +0900 Subject: [Wicket-ja-user 159] Re: =?iso-2022-jp?b?UmVkaXJlY3QbJEI7fiROGyhCU2Vzc2lvbhskQiRLGyhC?= =?iso-2022-jp?b?GyRCJEQkJCRGGyhC?= In-Reply-To: References: <003f01c8ec7e$376f88f0$c24e850a@rfidpc26> Message-ID: <2C640407-4167-403B-8100-E82824D3E910@mac.com> 矢野です。 一つ関係ありそうなところを見つけたので報告しておきます。 PageクラスのonBeforeRender()メソッドに次のようなコメントがあります。 // If any of the components on page is not stateless, we need to bind the session // before we start rendering components, as then jsessionid won't be appended // for links rendered before first stateful component ページがステートレスだった場合(ステートフルコンポーネントが一つもない場合)、 ページレンダリングの前にセッションのbind()が行われないため、リンクのjessionidが 付与されてしまうのかもしれません。 コンストラクタの中でbindすることによってセッションが維持されるようになったのであれば、 おそらくそのページはステートレスなのでしょう。 ならば、松葉さんの指摘するように「BookmarkablePageLinkのgetStatelessHint()をオーバー ライドしてステートフルコンポーネントとみなす」のは有効かもしれません。 onBeforeRenderの段階でステートフルのコンポーネントが一つでもあれば、リクエストごとに 必ずセッションがbindされるのでセッションが維持されるのではないでしょうか。 コメントを見る限りでは、この方法であればjsessionidがlinkにつけられることがないように 見えます。 すみません、ためしてないまま書いています。 --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From benbrand @ mac.com Thu Jul 24 03:55:20 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Thu, 24 Jul 2008 03:55:20 +0900 Subject: [Wicket-ja-user 160] =?iso-2022-jp?b?V2lja2V0GyRCSlk2LzJxOXBDTiU1JSQlSCRLJS0lYyVzGyhC?= =?iso-2022-jp?b?GyRCJTslazUhRz0kciREJDEkXiQ3JD8bKEI=?= Message-ID: <55E7EC0E-6A47-438F-8C78-972FAFC7FA05@mac.com> 矢野です。 先日お知らせしましたWicket勉強会はいきなり日付が変更になってしまったため、人によっては キャンセルになる人もいるかもしれません。 登録フォームにキャンセル機能をつけました。 もしキャンセルする方は、登録ページのご自分の名前の横にある編集ボタンをクリックしますと、 キャンセルすることが出来ます。 ちなみにキャンセルするだけでなく、単にコメントを変更するなどの操作もできます ご報告までに。 http://www.javelindev.jp/kaigi/first/ ↑すみません、先日お送りしたメールでは末尾の/が抜けていたためアクセスできなかったかもしれません... いまは/なしでもアクセスできるのですが... --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From r_f_315 @ hotmail.com Thu Jul 24 11:35:31 2008 From: r_f_315 @ hotmail.com (=?iso-2022-jp?B?GyRCOEVAbhsoQiAbJEJOdRsoQg==?=) Date: Thu, 24 Jul 2008 02:35:31 +0000 Subject: [Wicket-ja-user 161] =?iso-2022-jp?b?IFJFOiAgUmU6IFJlZGlyZWN0GyRCO34kThsoQlNlc3Npb24=?= =?iso-2022-jp?b?GyRCJEskRCQkJEYbKEI=?= In-Reply-To: <2C640407-4167-403B-8100-E82824D3E910@mac.com> References: <003f01c8ec7e$376f88f0$c24e850a@rfidpc26> <2C640407-4167-403B-8100-E82824D3E910@mac.com> Message-ID: 古川です。 調査を進めたので報告です。 松葉様にご教示頂いた方法を試してみました。 protected boolean getStatelessHint() { return false; } 結果、確かに有効でセッションは維持されました。 また、ページ内にBookmarkablePageLinkが複数合った場合、 一つでも false 指定でオーバーライドした場合はそのページ全体のBookmarkablePageLink全てに jsessionidが付与され、セッションの維持がなされました。 コンポーネントをページにaddする順番を前後させたりしてみましたが、結果は同じでした。 ページに複数のリンクがある場合その全てに対してオーバーライドしなくても、 一つだけ記述するだけでいけることと、一つでも記述してしまえば全てがセッション維持になることを考えると、 記述が冗長であることと、どのリンクでオーバーライドするのか?という問題もあり個人的にはどうかなと思いました。 あるBookmarkablePageLinkはセッションを維持したく、 別のBookmarkablePageLinkはセッションを維持したくない という切り分けができるのであれば正しい使い方のような気がします。 (バグ? ですかねコレ? それともフレームの動き上こういう風にならざる負えないのでしょうか・・・) 以上、報告でした。 > From: benbrand @ mac.com > To: wicket-ja-user @ lists.sourceforge.jp > Date: Thu, 24 Jul 2008 03:49:15 +0900 > Subject: [Wicket-ja-user 159] Re: Redirect時のSessionについて > > 矢野です。 > > 一つ関係ありそうなところを見つけたので報告しておきます。 > > PageクラスのonBeforeRender()メソッドに次のようなコメントがあります。 > > // If any of the components on page is not stateless, we need to bind the session > // before we start rendering components, as then jsessionid won't be appended > // for links rendered before first stateful component > > ページがステートレスだった場合(ステートフルコンポーネントが一つもない場合)、 > ページレンダリングの前にセッションのbind()が行われないため、リンクのjessionidが > 付与されてしまうのかもしれません。 > > コンストラクタの中でbindすることによってセッションが維持されるようになったのであれば、 > おそらくそのページはステートレスなのでしょう。 > > ならば、松葉さんの指摘するように「BookmarkablePageLinkのgetStatelessHint()をオーバー > ライドしてステートフルコンポーネントとみなす」のは有効かもしれません。 > > onBeforeRenderの段階でステートフルのコンポーネントが一つでもあれば、リクエストごとに > 必ずセッションがbindされるのでセッションが維持されるのではないでしょうか。 > > > コメントを見る限りでは、この方法であればjsessionidがlinkにつけられることがないように > 見えます。 > > すみません、ためしてないまま書いています。 > > > > --------------------------------------------------- > 矢野 勉(やの つとむ) > 電子メール:benbrand_at_mac.com > --------------------------------------------------- > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user _________________________________________________________________ 5GBのオンラインファイル保存サービス。Hotmailでファイル共有もできる! http://get.live.com/skydrive/overview -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/wicket-ja-user/attachments/20080724/48bc2ef4/attachment.htm From benbrand @ mac.com Thu Jul 24 12:09:21 2008 From: benbrand @ mac.com (=?ISO-2022-JP?B?IhskQkxwTG4bKEIgGyRCSlkbKEIi?=) Date: Thu, 24 Jul 2008 12:09:21 +0900 Subject: [Wicket-ja-user 162] Re: =?iso-2022-jp?b?UmVkaXJlY3QbJEI7fiROGyhCU2Vzc2lvbhskQiRLGyhC?= =?iso-2022-jp?b?GyRCJEQkJCRGGyhC?= In-Reply-To: <3463169.1144629076617.JavaMail.announce@igeekinc.com> References: <3463169.1144629076617.JavaMail.announce@igeekinc.com> Message-ID: <66759204272405379973347214343741873869-Webmail2@me.com> 矢野です >という切り分けができるのであれば正しい使い方のような気がします。 >(バグ? ですかねコレ? それともフレームの動き上こういう風にならざる負えないのでしょうか・・・) getStatelessHint()はコンポーネントがステートレスかどうかを指定するというよりも、コンポーネントを 貼り付けたページがセッションにバインドされるべきかどうか(ページをステートフルにすべきか否か)の ヒントです。 詳しくはwicket-jaのwikiに書いてます。 http://sourceforge.jp/projects/wicket-ja/wiki/%E3%82%B9%E3%83%86%E3%83%BC%E3%83%88%E3%83%AC%E3%82%B9%E3%81%AA%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%A8%E3%81%AF (リンクURLが長いので切れるかもしれませんが、その場合はwikiのトップ http://sourceforge.jp/projects/wicket-ja/wiki/FrontPageから「ステートレスなページとは」を ご参照ください) 簡単にいうと、Wicketはページ上の「すべての」コンポーネントのgetStatelessHint()がtrueを返したときに、 ページ全体がステートレスだと判断します。 逆にひとつでもfalseを返すコンポーネントがあれば(ステートフルなコンポーネントがあれば)、ページは ステートフルだと考えられて、セッションにバインドされます。今回の例はこのパターンで、ページ上のひとつの BookmarkablePageLinkがステートフルであれば、ページはステートフル・ページだとみなされます。 Wicket 1.2のころはすべてのページが自動的にステートフルでしたが、1.3からこの機能が導入されました。 --------------------- 矢野 勉(やの つとむ) benbrand @ mac.com 木曜日、7月24、2008、11:35AM、 "古川 烈" のメッセージ: > >古川です。 >調査を進めたので報告です。 > >松葉様にご教示頂いた方法を試してみました。 > >protected boolean getStatelessHint() { > return false; >} > >結果、確かに有効でセッションは維持されました。 >また、ページ内にBookmarkablePageLinkが複数合った場合、 >一つでも false 指定でオーバーライドした場合はそのページ全体のBookmarkablePageLink全てに >jsessionidが付与され、セッションの維持がなされました。 >コンポーネントをページにaddする順番を前後させたりしてみましたが、結果は同じでした。 > >ページに複数のリンクがある場合その全てに対してオーバーライドしなくても、 >一つだけ記述するだけでいけることと、一つでも記述してしまえば全てがセッション維持になることを考えると、 >記述が冗長であることと、どのリンクでオーバーライドするのか?という問題もあり個人的にはどうかなと思いました。 > >あるBookmarkablePageLinkはセッションを維持したく、 >別のBookmarkablePageLinkはセッションを維持したくない > >という切り分けができるのであれば正しい使い方のような気がします。 >(バグ? ですかねコレ? それともフレームの動き上こういう風にならざる負えないのでしょうか・・・) > >以上、報告でした。 > > >> From: benbrand @ mac.com >> To: wicket-ja-user @ lists.sourceforge.jp >> Date: Thu, 24 Jul 2008 03:49:15 +0900 >> Subject: [Wicket-ja-user 159] Re: Redirect時のSessionについて >> >> 矢野です。 >> >> 一つ関係ありそうなところを見つけたので報告しておきます。 >> >> PageクラスのonBeforeRender()メソッドに次のようなコメントがあります。 >> >> // If any of the components on page is not stateless, we need to bind the session >> // before we start rendering components, as then jsessionid won't be appended >> // for links rendered before first stateful component >> >> ページがステートレスだった場合(ステートフルコンポーネントが一つもない場合)、 >> ページレンダリングの前にセッションのbind()が行われないため、リンクのjessionidが >> 付与されてしまうのかもしれません。 >> >> コンストラクタの中でbindすることによってセッションが維持されるようになったのであれば、 >> おそらくそのページはステートレスなのでしょう。 >> >> ならば、松葉さんの指摘するように「BookmarkablePageLinkのgetStatelessHint()をオーバー >> ライドしてステートフルコンポーネントとみなす」のは有効かもしれません。 >> >> onBeforeRenderの段階でステートフルのコンポーネントが一つでもあれば、リクエストごとに >> 必ずセッションがbindされるのでセッションが維持されるのではないでしょうか。 >> >> >> コメントを見る限りでは、この方法であればjsessionidがlinkにつけられることがないように >> 見えます。 >> >> すみません、ためしてないまま書いています。 >> >> >> >> --------------------------------------------------- >> 矢野 勉(やの つとむ) >> 電子メール:benbrand_at_mac.com >> --------------------------------------------------- >> >> _______________________________________________ >> Wicket-ja-user mailing list >> Wicket-ja-user @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > >_________________________________________________________________ >5GBのオンラインファイル保存サービス。Hotmailでファイル共有もできる! >http://get.live.com/skydrive/overview From h.kishi47 @ gmail.com Thu Jul 24 12:26:38 2008 From: h.kishi47 @ gmail.com (Hiromichi Kishi) Date: Thu, 24 Jul 2008 12:26:38 +0900 Subject: [Wicket-ja-user 163] =?iso-2022-jp?b?SW50ZXJuYWwbJEIlKCVpITw7fiROJWElQyU7ITwlOCROGyhC?= =?iso-2022-jp?b?GyRCPHUkMTxoJGobKEI=?= Message-ID: <55191e440807232026o416b8ef3ib95df5c8dee210b7@mail.gmail.com> 岸@Kishiです。 以前、InternalErrorPageの変更の方法を質問しましたところ、 WebApplicationで setApplicationSettings().setInternalErrorPage(エラークラス.class); とやれば変更することがわかりました。(その節はありがとうございました。) 今回の質問は、このInternalErrorPageが出る前に見ていたページや発生した例外のメッセージを受け取る方法についてです。 InternalErrorPageでエラーについてまとめてログを取りたいと思っているのですが、方法がわかる方がいましたらご教示ください。 よろしくお願いします。 From r_f_315 @ hotmail.com Thu Jul 24 17:35:28 2008 From: r_f_315 @ hotmail.com (=?iso-2022-jp?B?GyRCOEVAbhsoQiAbJEJOdRsoQg==?=) Date: Thu, 24 Jul 2008 08:35:28 +0000 Subject: [Wicket-ja-user 164] =?iso-2022-jp?b?IFJFOiAgUmU6IFJlZGlyZWN0GyRCO34kThsoQlNlc3Npb24=?= =?iso-2022-jp?b?GyRCJEskRCQkJEYbKEI=?= In-Reply-To: <66759204272405379973347214343741873869-Webmail2@me.com> References: <3463169.1144629076617.JavaMail.announce@igeekinc.com> <66759204272405379973347214343741873869-Webmail2@me.com> Message-ID: 古川です。 分り易いページへの誘導ありがとうございます。 なるほど、納得しました。 さらに調査した結果を報告します。 dirty()で綺麗なURLになると書きましたが、間違いでした。 誤情報を流して申し訳ありませんでした。 dirty()を記述しようがしまいが、初回のリクエスト時だけはjsessionidがURLの後ろに付けられます。 ※結局のところdirty()が何を行うメソッドなのか不明です。 動きとしては、bind()を呼ぶだけでセッションが維持され、 1.cookieを使用可能にしているブラウザでアクセスした場合、  初回のみURLにjsessionidが付与され、次ページ以降の遷移に関してはURLは綺麗なままでした。 2.cookieを使用不可にしているブラウザでアクセスした場合は、  初回以降も遷移する度に同じjsessionidがURLの後ろに自動で割り振られました。 なんというか、とても歯がゆい状態です。。。 理想の動作としては、 ・初回もURLを汚してほしくない ・Cookieが使用できないブラウザでアクセスされた場合は常にURLにjsessionidを付与する という動作が望ましいのですが。。。 ためしにBookmarkablePageLinkの protected CharSequence getURL() の中身を { String url = new StringBuffer( super.getURL() ).toString(); return url.replaceAll(";jsessionid=.*(\\?|$)", ""); } こんな感じでオーバーライドしてみたら、初回からもURLは汚されませんでしたが、 当然cookieが無効になっているブラウザでURLにjsessionidが付かないので問題有りでした。 但し、cookieが有効なブラウザで初回のURLが綺麗でも問題なくセッションは維持されていました。 BookmarkablePageLinkの中身を見て上記の動作が実現できるようにもう少し研究してみます。 --------------------------------------------------- 古川 烈(ふるかわ れつ) 電子メール:r_f_315 @ hotmail.com --------------------------------------------------- _________________________________________________________________ MSN相談党、誕生。あなたの知識で日本を変えよう。党首には押切もえが就任! http://questionbox.jp.msn.com/index.php3?StatusCheck=ON -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/wicket-ja-user/attachments/20080724/c8dab214/attachment.htm From higayasuo @ gmail.com Thu Jul 24 18:01:29 2008 From: higayasuo @ gmail.com (=?ISO-2022-JP?B?GyRCI0gjaSNnI2EjWSNhI3MjdSNvGyhC?=) Date: Thu, 24 Jul 2008 18:01:29 +0900 Subject: [Wicket-ja-user 165] Re: =?iso-2022-jp?b?UmVkaXJlY3QbJEI7fiROGyhCU2Vzc2lvbhskQiRLGyhC?= =?iso-2022-jp?b?GyRCJEQkJCRGGyhC?= In-Reply-To: References: <3463169.1144629076617.JavaMail.announce@igeekinc.com> <66759204272405379973347214343741873869-Webmail2@me.com> Message-ID: <18d626fb0807240201s491f4cbct8d942069bced0c64@mail.gmail.com> ひがです。 2008/07/24 17:35 古川 烈 : > 古川です。 > ・初回もURLを汚してほしくない > ・Cookieが使用できないブラウザでアクセスされた場合は常にURLにjsessionidを付与する > > という動作が望ましいのですが。。。 > 上記のように動作する方法をblogに書いておいたので、 よろしければごらんください。 http://d.hatena.ne.jp/higayasuo/20080724/1216889790 From benbrand @ mac.com Thu Jul 24 19:05:15 2008 From: benbrand @ mac.com (=?ISO-2022-JP?B?IhskQkxwTG4bKEIgGyRCSlkbKEIi?=) Date: Thu, 24 Jul 2008 19:05:15 +0900 Subject: [Wicket-ja-user 166] Re: =?iso-2022-jp?b?UmVkaXJlY3QbJEI7fiROGyhCU2Vzc2lvbhskQiRLGyhC?= =?iso-2022-jp?b?GyRCJEQkJCRGGyhC?= In-Reply-To: References: Message-ID: <98568559320374171630348826413802650252-Webmail2@me.com> 矢野です。 > 1.cookieを使用可能にしているブラウザでアクセスした場合、 >  初回のみURLにjsessionidが付与され、次ページ以降の遷移に関してはURLは綺麗なままでした。 > > 2.cookieを使用不可にしているブラウザでアクセスした場合は、 >  初回以降も遷移する度に同じjsessionidがURLの後ろに自動で割り振られました。 なるほど、見えてきました。初回アクセス時のみjessionidが付与されるのですね。 これはWicketというよりもHttpServletResponse#encodeUrl()の問題なんです。 実はStrutsの時代でもタグが初回アクセス時だけリンクにjsessionidを付与すると いうことで知られていました。 参考: http://d.hatena.ne.jp/hyperash/200310 つまりサーブレット仕様としてjsessionidクッキーが送られてこない場合はCookieによるセッション維持が できるかどうかわからないので、URLを生成するときにはjsessionidを付与しよう、という仕組みになってる ようですね。 解決方法としてはリンク先のようにjsessionidを付与してもいいですが、私はむしろ、Cookieが来てなければ 一度リダイレクトさせてCookieを発行してやったほうがいいんじゃないかと思います。 ブラウザのCookieが有効かどうかはSession#getClientInfo()でわかります。 (IRequestCycleSettings#setGatherExtendedBrowserInfo(true)を呼んでいることが前提ですが)。 ただ、getClientInfo()メソッド自体がクライアント情報取得のためにいったんリダイレクトをするはずですので、 結局そのタイミングでクッキーが発行されると思いますし、結局getClientInfo()だけで解決してしまうかもしれませんが。 --------------------- 矢野 勉(やの つとむ) benbrand @ mac.com 木曜日、7月24、2008、05:35PM、 "古川 烈" のメッセージ: > >古川です。 > >分り易いページへの誘導ありがとうございます。 >なるほど、納得しました。 > >さらに調査した結果を報告します。 > >dirty()で綺麗なURLになると書きましたが、間違いでした。 >誤情報を流して申し訳ありませんでした。 >dirty()を記述しようがしまいが、初回のリクエスト時だけはjsessionidがURLの後ろに付けられます。 >※結局のところdirty()が何を行うメソッドなのか不明です。 > >動きとしては、bind()を呼ぶだけでセッションが維持され、 > >1.cookieを使用可能にしているブラウザでアクセスした場合、 > 初回のみURLにjsessionidが付与され、次ページ以降の遷移に関してはURLは綺麗なままでした。 > >2.cookieを使用不可にしているブラウザでアクセスした場合は、 > 初回以降も遷移する度に同じjsessionidがURLの後ろに自動で割り振られました。 > > >なんというか、とても歯がゆい状態です。。。 > >理想の動作としては、 > >・初回もURLを汚してほしくない >・Cookieが使用できないブラウザでアクセスされた場合は常にURLにjsessionidを付与する > >という動作が望ましいのですが。。。 > >ためしにBookmarkablePageLinkの protected CharSequence getURL() の中身を >{ > String url = new StringBuffer( super.getURL() ).toString(); > > return url.replaceAll(";jsessionid=.*(\\?|$)", ""); >} >こんな感じでオーバーライドしてみたら、初回からもURLは汚されませんでしたが、 >当然cookieが無効になっているブラウザでURLにjsessionidが付かないので問題有りでした。 >但し、cookieが有効なブラウザで初回のURLが綺麗でも問題なくセッションは維持されていました。 > >BookmarkablePageLinkの中身を見て上記の動作が実現できるようにもう少し研究してみます。 > > >--------------------------------------------------- >古川 烈(ふるかわ れつ) >電子メール:r_f_315 @ hotmail.com >--------------------------------------------------- > >_________________________________________________________________ >MSN相談党、誕生。あなたの知識で日本を変えよう。党首には押切もえが就任! >http://questionbox.jp.msn.com/index.php3?StatusCheck=ON From tkbyth @ gmail.com Thu Jul 24 20:00:34 2008 From: tkbyth @ gmail.com (takayuki hayashi) Date: Thu, 24 Jul 2008 20:00:34 +0900 Subject: [Wicket-ja-user 167] Re: =?iso-2022-jp?b?d2lja2V0LWphGyRCSlk2LzJxJEokSSRyJGQkQyRGGyhC?= =?iso-2022-jp?b?GyRCJF8kPyQkJE4kRyQ5ISMbKEI=?= In-Reply-To: <0951B0E0-E72E-42C9-A460-70F31AC74E4A@mac.com> References: <0951B0E0-E72E-42C9-A460-70F31AC74E4A@mac.com> Message-ID: 林です。 >矢野さん 返信ありがとう御座います。 考えてみれば自分もWicketは我流で使ってる的な所があるので、Wicketのポイントとか基本的なところはきちんと理解したいですねぇ。 勉強会楽しみにしています。 2008/07/21 0:55 Tsutomu Yano : > 矢野です。 > > すみませんものすごく返事が遅くなりました。見逃していました... > >> あと、 >>> なお、個人的にはあまりお固くJava的なビジネス寄りにはしたくはないんです。技術者の勉強会で >>> ありたいです。 >> この一文におけるビジネス寄りというのは『例えばWicketでERPを構築する場合に注意することは〜云々』 >> というような事を指すという認識で問題ないですか? > >  そうですね...曖昧な話なのですが、それが「技術的にWicketではどうやってやるのか」という具体的な > 話になるのであればいいかなあと思ってます。 > > 勉強会ではWicketでどうやってコードを書けばどう動くのか、ポイントはどこか、とかそういうことを > やっていければと思ってまして、コードの書き方とかでないある種概念的なお話は勉強会でない場所で > やったほうがいいんじゃないかと思ってます。 > > > > --------------------------------------------------- > 矢野 勉(やの つとむ) > 電子メール:benbrand_at_mac.com > --------------------------------------------------- > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > From tma @ gside.org Thu Jul 24 20:26:01 2008 From: tma @ gside.org (Takeshi Matsuba) Date: Thu, 24 Jul 2008 20:26:01 +0900 Subject: [Wicket-ja-user 168] Re: =?iso-2022-jp?b?SW50ZXJuYWwbJEIlKCVpITw7fiROJWElQyU7ITwbKEI=?= =?iso-2022-jp?b?GyRCJTgkTjx1JDE8aCRqGyhC?= In-Reply-To: <55191e440807232026o416b8ef3ib95df5c8dee210b7@mail.gmail.com> References: <55191e440807232026o416b8ef3ib95df5c8dee210b7@mail.gmail.com> Message-ID: <8b6ef9fc0807240426wc8cefccq8b36b21f05a5d043@mail.gmail.com> 松葉です。 WebApplicationクラスでnewRequestCycleメソッドをオーバライドして、 さらにonRuntimeExceptionをオーバライドすると、PageとRuntimeExceptionは取得できそうです。 public RequestCycle newRequestCycle(Request request, Response response) { return new WebRequestCycle(this, (WebRequest) request, response) { public Page onRuntimeException(Page page, RuntimeException e) { return super.onRuntimeException(page, e); } }; } これでInternalErrorPageが出る前に見ていたページや、発生した例外のメッセージに関する、 ログの出力も出きると思います。 ソースを追った感じではこれでいけそうなんですが、どうでしょうか? From tkbyth @ gmail.com Thu Jul 24 20:41:44 2008 From: tkbyth @ gmail.com (takayuki hayashi) Date: Thu, 24 Jul 2008 20:41:44 +0900 Subject: [Wicket-ja-user 169] Re: =?iso-2022-jp?b?SW50ZXJuYWwbJEIlKCVpITw7fiROJWElQyU7ITwbKEI=?= =?iso-2022-jp?b?GyRCJTgkTjx1JDE8aCRqGyhC?= In-Reply-To: <55191e440807232026o416b8ef3ib95df5c8dee210b7@mail.gmail.com> References: <55191e440807232026o416b8ef3ib95df5c8dee210b7@mail.gmail.com> Message-ID: 林です。 Wicketのバージョンは1.3.xということと、 独自のInternalErroPageをFooErrorPageとした場合で話を進めさせていただきます。 まず、org.apache.wicket.protocol.http.WebRequestCycleクラスを継承したクラスを作成し、onRuntimeExceptionメソッドをオーバーライドします。 こんな感じです。 -------------- public class FooRequestCycle extends WebRequestCycle{ public TestRequestCycle(WebApplication application, WebRequest request, Response response) { super(application, request, response); } @Override public Page onRuntimeException(Page page, RuntimeException e) { //第一引数のpageはExceptionが発生したページクラスのインスタンスです。 //Exception発生時の状態が保持されているので、必要であればダウンキャストして //フィールドの値を取得したりできます。 //エラーページのコンストラクタにExceptionを渡す。 return new FooErrorPage(e); } } ---------- 次にWebApplicationを継承したクラス内にてnewRequestCycleメソッドをオーバーライドします。 そしてそのメソッド内で上記で作成したFooRequestCycleを返します。 こんなかんじです。 ----------- public class FooApplication extends WebApplication{ @Override public Class getHomePage() { return FooPage.class; } @Override public RequestCycle newRequestCycle(Request request, Response response) { return new FooRequestCycle(this,(WebRequest)request, (WebResponse)response); } } ---------- これで一応Errorページへエラー情報を渡すことは可能です。 ただ、FooRequestCycle#onRuntimeExceptionで渡されるExceptionはInvocationTargetException とWicketRuntimeExceptionにラップされているので、instanceof等で実際に発生したExceptionを比較するにはe.getCause().getCause()としないといけないのですが。。(あくまで我流なので、どなたかもっとスマートなやり方を知っている方はいませんか?) 2008/07/24 12:26 Hiromichi Kishi : > 岸@Kishiです。 > > 以前、InternalErrorPageの変更の方法を質問しましたところ、 > WebApplicationで > > setApplicationSettings().setInternalErrorPage(エラークラス.class); > > とやれば変更することがわかりました。(その節はありがとうございました。) > > 今回の質問は、このInternalErrorPageが出る前に見ていたページや発生した例外のメッセージを受け取る方法についてです。 > InternalErrorPageでエラーについてまとめてログを取りたいと思っているのですが、方法がわかる方がいましたらご教示ください。 > > よろしくお願いします。 > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > From tkbyth @ gmail.com Thu Jul 24 20:45:14 2008 From: tkbyth @ gmail.com (takayuki hayashi) Date: Thu, 24 Jul 2008 20:45:14 +0900 Subject: [Wicket-ja-user 170] Re: =?iso-2022-jp?b?SW50ZXJuYWwbJEIlKCVpITw7fiROJWElQyU7ITwbKEI=?= =?iso-2022-jp?b?GyRCJTgkTjx1JDE8aCRqGyhC?= In-Reply-To: References: <55191e440807232026o416b8ef3ib95df5c8dee210b7@mail.gmail.com> Message-ID: 林です。 すみません、ソースに記述ミスがありました。FooRequestCycleのコンストラクタをTestRequestCycleと記述してしまってます。。。。 ごめんなさい。 2008/07/24 20:41 takayuki hayashi : > 林です。 > > Wicketのバージョンは1.3.xということと、 > 独自のInternalErroPageをFooErrorPageとした場合で話を進めさせていただきます。 > > まず、org.apache.wicket.protocol.http.WebRequestCycleクラスを継承したクラスを作成し、onRuntimeExceptionメソッドをオーバーライドします。 > こんな感じです。 > -------------- > public class FooRequestCycle extends WebRequestCycle{ > > public TestRequestCycle(WebApplication application, WebRequest > request, Response response) { > super(application, request, response); > } > > @Override > public Page onRuntimeException(Page page, RuntimeException e) { > > //第一引数のpageはExceptionが発生したページクラスのインスタンスです。 > //Exception発生時の状態が保持されているので、必要であればダウンキャストして > //フィールドの値を取得したりできます。 > > //エラーページのコンストラクタにExceptionを渡す。 > return new FooErrorPage(e); > } > } > > ---------- > > > 次にWebApplicationを継承したクラス内にてnewRequestCycleメソッドをオーバーライドします。 > そしてそのメソッド内で上記で作成したFooRequestCycleを返します。 > こんなかんじです。 > > ----------- > public class FooApplication extends WebApplication{ > > @Override > public Class getHomePage() { > return FooPage.class; > } > > @Override > public RequestCycle newRequestCycle(Request request, Response response) { > return new FooRequestCycle(this,(WebRequest)request, > (WebResponse)response); > } > } > > ---------- > これで一応Errorページへエラー情報を渡すことは可能です。 > ただ、FooRequestCycle#onRuntimeExceptionで渡されるExceptionはInvocationTargetException > とWicketRuntimeExceptionにラップされているので、instanceof等で実際に発生したExceptionを比較するにはe.getCause().getCause()としないといけないのですが。。(あくまで我流なので、どなたかもっとスマートなやり方を知っている方はいませんか?) > > > > 2008/07/24 12:26 Hiromichi Kishi : >> 岸@Kishiです。 >> >> 以前、InternalErrorPageの変更の方法を質問しましたところ、 >> WebApplicationで >> >> setApplicationSettings().setInternalErrorPage(エラークラス.class); >> >> とやれば変更することがわかりました。(その節はありがとうございました。) >> >> 今回の質問は、このInternalErrorPageが出る前に見ていたページや発生した例外のメッセージを受け取る方法についてです。 >> InternalErrorPageでエラーについてまとめてログを取りたいと思っているのですが、方法がわかる方がいましたらご教示ください。 >> >> よろしくお願いします。 >> >> _______________________________________________ >> Wicket-ja-user mailing list >> Wicket-ja-user @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user >> > From h.kishi47 @ gmail.com Thu Jul 24 21:34:50 2008 From: h.kishi47 @ gmail.com (Hiromichi Kishi) Date: Thu, 24 Jul 2008 21:34:50 +0900 Subject: [Wicket-ja-user 171] Re: =?iso-2022-jp?b?SW50ZXJuYWwbJEIlKCVpITw7fiROJWElQyU7ITwbKEI=?= =?iso-2022-jp?b?GyRCJTgkTjx1JDE8aCRqGyhC?= In-Reply-To: References: <55191e440807232026o416b8ef3ib95df5c8dee210b7@mail.gmail.com> Message-ID: <55191e440807240534t664de130o6d713195c8913ab2@mail.gmail.com> 岸です。 >松葉様、林様 お返事ありがとうございます。 今開発環境が手元にないので、まだ試していないのですが、 これで望んだ処理が実行できそうです。 本当にありがとうございました。 #ちょうど今話題に上がっているjsessionidの話も私自身困っていたので非常に参考になっています。 2008/07/24 20:45 takayuki hayashi : > 林です。 > すみません、ソースに記述ミスがありました。FooRequestCycleのコンストラクタをTestRequestCycleと記述してしまってます。。。。 > > ごめんなさい。 > > 2008/07/24 20:41 takayuki hayashi : >> 林です。 >> >> Wicketのバージョンは1.3.xということと、 >> 独自のInternalErroPageをFooErrorPageとした場合で話を進めさせていただきます。 >> >> まず、org.apache.wicket.protocol.http.WebRequestCycleクラスを継承したクラスを作成し、onRuntimeExceptionメソッドをオーバーライドします。 >> こんな感じです。 >> -------------- >> public class FooRequestCycle extends WebRequestCycle{ >> >> public TestRequestCycle(WebApplication application, WebRequest >> request, Response response) { >> super(application, request, response); >> } >> >> @Override >> public Page onRuntimeException(Page page, RuntimeException e) { >> >> //第一引数のpageはExceptionが発生したページクラスのインスタンスです。 >> //Exception発生時の状態が保持されているので、必要であればダウンキャストして >> //フィールドの値を取得したりできます。 >> >> //エラーページのコンストラクタにExceptionを渡す。 >> return new FooErrorPage(e); >> } >> } >> >> ---------- >> >> >> 次にWebApplicationを継承したクラス内にてnewRequestCycleメソッドをオーバーライドします。 >> そしてそのメソッド内で上記で作成したFooRequestCycleを返します。 >> こんなかんじです。 >> >> ----------- >> public class FooApplication extends WebApplication{ >> >> @Override >> public Class getHomePage() { >> return FooPage.class; >> } >> >> @Override >> public RequestCycle newRequestCycle(Request request, Response response) { >> return new FooRequestCycle(this,(WebRequest)request, >> (WebResponse)response); >> } >> } >> >> ---------- >> これで一応Errorページへエラー情報を渡すことは可能です。 >> ただ、FooRequestCycle#onRuntimeExceptionで渡されるExceptionはInvocationTargetException >> とWicketRuntimeExceptionにラップされているので、instanceof等で実際に発生したExceptionを比較するにはe.getCause().getCause()としないといけないのですが。。(あくまで我流なので、どなたかもっとスマートなやり方を知っている方はいませんか?) >> >> >> >> 2008/07/24 12:26 Hiromichi Kishi : >>> 岸@Kishiです。 >>> >>> 以前、InternalErrorPageの変更の方法を質問しましたところ、 >>> WebApplicationで >>> >>> setApplicationSettings().setInternalErrorPage(エラークラス.class); >>> >>> とやれば変更することがわかりました。(その節はありがとうございました。) >>> >>> 今回の質問は、このInternalErrorPageが出る前に見ていたページや発生した例外のメッセージを受け取る方法についてです。 >>> InternalErrorPageでエラーについてまとめてログを取りたいと思っているのですが、方法がわかる方がいましたらご教示ください。 >>> >>> よろしくお願いします。 >>> >>> _______________________________________________ >>> Wicket-ja-user mailing list >>> Wicket-ja-user @ lists.sourceforge.jp >>> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user >>> >> > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > From tc512842 @ ybb.ne.jp Thu Jul 24 22:28:39 2008 From: tc512842 @ ybb.ne.jp (=?iso-2022-jp?B?GyRCQG5FaCEhQD87ShsoQg==?=) Date: Thu, 24 Jul 2008 22:28:39 +0900 Subject: [Wicket-ja-user 172] Re: =?iso-2022-jp?b?GyRCJCIkayU/JTAkcj1QJDckPyQkO34hIj1QJDcbKEI=?= =?iso-2022-jp?b?GyRCJD8kLyRKJCQ7fiROQCk4ZhsoQg==?= References: <002601c8ecd5$1799be40$0200a8c0@skawashi10> Message-ID: <003101c8ed91$34570c60$0200a8c0@skawashi10> やのさん、すいません やはりわかりづらかったですか やりたいことは市区町村のListから 1行3列のtableを作りたいのですが ListView に市区町村Listを渡して populateItemで 市区町村名 の単位で普通に出力すると1行1列になってしまうので インデックスが3n-2の時だけを出力し インデックスが3nの時だけを出力すれば 新宿区 豊島区 文京区 渋谷区 町田市 立川市 のように1行3列になるかなと思いましたが スマートな実現方法がわからなかったのです ----- Original Message ----- From: "Tsutomu Yano" To: Sent: Thursday, July 24, 2008 3:15 AM Subject: [Wicket-ja-user 157] Re: あるタグを出したい時、出したくない時の制御 > んーありがちなケースとのことなのでやりたいことはシンプルなことなのでしょうが > > > ちょっとよくわからないんです。 > > を出したかったり出したくなかったりする理由はなんなのでしょうか? > > 通常、テーブルの行繰り返しならにListViewを適用すれば済むと思うのですが、今回は > タグだけ出したり出さなかったりして、その内側のタグは常に表示するのですよね? > > > 「結果としてこういうタグを出力したい」というのが見えてくれば、なにか別の解決法も > 見えてくるように思うのですが...いかがでしょうか。 > > > On 2008/07/24, at 0:02, 川嶋 誠司 wrote: > >> 川嶋です >> >> ありがちなケースだと思われましたが >> サンプルが見つかりませんでした >> なにか良い実装方法はないでしょうか? >> >> やりたいこと) >> 市町村Listをつかってtdが3列のtabelを作りたい。 >> >> 例) >> >> ○○市△△市□□市 >> ・・・・ >> ・・・・ >> ○△町△□町○□村 >> >> 考えた方法) >> populateItem内で・・・・ >> 1.start_tr、end_trのコンポーネントを出したくない時は >> addするけどsetVisible(false) >> 2.start_tr、end_trのコンポーネントのreplaceComponentTagBody >> で、を出したり出さなかったり。 >> >> >> >> hoge市 >> >> >> >> 1.も2.も、出力したくないときでもコンポーネントを >> addしなければいけないのが嫌です >> >> かわしま >> >> _______________________________________________ >> Wicket-ja-user mailing list >> Wicket-ja-user @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > > --------------------------------------------------- > 矢野 勉(やの つとむ) > 電子メール:benbrand_at_mac.com > --------------------------------------------------- > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user From benbrand @ mac.com Thu Jul 24 23:30:22 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Thu, 24 Jul 2008 23:30:22 +0900 Subject: [Wicket-ja-user 173] Re: =?iso-2022-jp?b?GyRCJCIkayU/JTAkcj1QJDckPyQkO34hIj1QJDcbKEI=?= =?iso-2022-jp?b?GyRCJD8kLyRKJCQ7fiROQCk4ZhsoQg==?= In-Reply-To: <003101c8ed91$34570c60$0200a8c0@skawashi10> References: <002601c8ecd5$1799be40$0200a8c0@skawashi10> <003101c8ed91$34570c60$0200a8c0@skawashi10> Message-ID: <0A69A710-77B6-4141-8DC1-CA02C203535B@mac.com> 矢野です。 それでしたら、もとのリストを市町村を三つでひと単位とした配列のリストに組み直した ほうが簡単ではないでしょうか。 トリッキーな操作が必要なくなりますし、ListViewを単純にそのまま使えます。 ListViewに渡すオブジェクトはListに限らず「Listを返すモデル」を渡せますので、 データが格納されたListをコンストラクタに渡したら getObject()がList>を返すようなモデルを定義したらどうでしょう。 下記は簡単な例でエラーチェックがあまいかもしれませんが、 まあ、例ということで。 import java.util.*; /** * 三つでひとかたまりの文字列のリストを返すモデル **/ public class MyModel extends AbstractReadOnlyModel> { List source; public MyModel(List source) { this.source = new ArrayList(source); } public List> getObject() { List> result = new ArrayList>(); for(int i = 0; i < source.size(); i += 3) { List trio = new ArrayList(3); trio.add(source.get(i)); trio.add(source.get(i+1)); trio.add(source.get(i+2)); result.add(trio); } return result; } } このようなMyModelを定義しておくと、 List source = Arrays.asList("新宿区", "豊島区", "文京区", "渋谷区", "町田市", "立川市"); ListView> view = new ListView>("view", new MyModel(source)) { @Override protected void populateItem(ListItem> item) { List data = item.getModelObject(); item.add(new Label("id1", data.get(0)); item.add(new Label("id2", data.get(1)); item.add(new Label("id3", data.get(2)); } } のようなコードを書くことが出来るようになります。すると と単純なHTMLを書くだけで三つ単位の繰り返しができます。を出したり消したりも必要ありません。 私が思うにWicketの利点の一つは基本的に全部Java側で処理することにあるわけで、三つ単位にデータを 処理したいのであれば、タグを変に加工するよりJava側で三つ単位にデータを処理すれば良いのだと思う のですがどうでしょうか。 On 2008/07/24, at 22:28, 川嶋 誠司 wrote: > やのさん、すいません > > やはりわかりづらかったですか > > やりたいことは市区町村のListから > 1行3列のtableを作りたいのですが > > ListView に市区町村Listを渡して > populateItemで > > 市区町村名 > > の単位で普通に出力すると1行1列になってしまうので > > インデックスが3n-2の時だけを出力し > インデックスが3nの時だけを出力すれば > > 新宿区 > 豊島区 > 文京区 > 渋谷区 > 町田市 > 立川市 > > のように1行3列になるかなと思いましたが > > スマートな実現方法がわからなかったのです > > ----- Original Message ----- > From: "Tsutomu Yano" > To: > Sent: Thursday, July 24, 2008 3:15 AM > Subject: [Wicket-ja-user 157] Re: あるタグを出したい時、出したくない時の制御 > > >> んーありがちなケースとのことなのでやりたいことはシンプルなことなのでしょうが >> >> >> ちょっとよくわからないんです。 >> >> を出したかったり出したくなかったりする理由はなんなのでしょうか? >> >> 通常、テーブルの行繰り返しならにListViewを適用すれば済むと思うのですが、今回は >> タグだけ出したり出さなかったりして、その内側のタグは常に表示するのですよね? >> >> >> 「結果としてこういうタグを出力したい」というのが見えてくれば、なにか別の解決法も >> 見えてくるように思うのですが...いかがでしょうか。 >> >> >> On 2008/07/24, at 0:02, 川嶋 誠司 wrote: >> >>> 川嶋です >>> >>> ありがちなケースだと思われましたが >>> サンプルが見つかりませんでした >>> なにか良い実装方法はないでしょうか? >>> >>> やりたいこと) >>> 市町村Listをつかってtdが3列のtabelを作りたい。 >>> >>> 例) >>> >>> ○○市△△市□□市 >>> ・・・・ >>> ・・・・ >>> ○△町△□町○□村 >>> >>> 考えた方法) >>> populateItem内で・・・・ >>> 1.start_tr、end_trのコンポーネントを出したくない時は >>> addするけどsetVisible(false) >>> 2.start_tr、end_trのコンポーネントのreplaceComponentTagBody >>> で、を出したり出さなかったり。 >>> >>> >>> >>> hoge市 >>> >>> >>> >>> 1.も2.も、出力したくないときでもコンポーネントを >>> addしなければいけないのが嫌です >>> >>> かわしま >>> >>> _______________________________________________ >>> Wicket-ja-user mailing list >>> Wicket-ja-user @ lists.sourceforge.jp >>> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user >> >> --------------------------------------------------- >> 矢野 勉(やの つとむ) >> 電子メール:benbrand_at_mac.com >> --------------------------------------------------- >> >> _______________________________________________ >> Wicket-ja-user mailing list >> Wicket-ja-user @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user From benbrand @ mac.com Thu Jul 24 23:42:17 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Thu, 24 Jul 2008 23:42:17 +0900 Subject: [Wicket-ja-user 174] Re: =?iso-2022-jp?b?GyRCJCIkayU/JTAkcj1QJDckPyQkO34hIj1QJDcbKEI=?= =?iso-2022-jp?b?GyRCJD8kLyRKJCQ7fiROQCk4ZhsoQg==?= In-Reply-To: <0A69A710-77B6-4141-8DC1-CA02C203535B@mac.com> References: <002601c8ecd5$1799be40$0200a8c0@skawashi10> <003101c8ed91$34570c60$0200a8c0@skawashi10> <0A69A710-77B6-4141-8DC1-CA02C203535B@mac.com> Message-ID: すみません、一つ前のコードをコピペしてしまいました。MyModelの定義の部分はほんとは 次のコードでした。 まあリストからget()するところに範囲チェックを入れただけなんですけど。 import java.util.*; /** * 三つでひとかたまりの文字列のリストを返すモデル **/ public class MyModel extends AbstractReadOnlyModel> { List source; public MyModel(List source) { this.source = new ArrayList(source); } public List> getObject() { List> result = new ArrayList>(); for(int i = 0; i < source.size(); i += 3) { List trio = new ArrayList(3); trio.add( i >= source.size() ? "" : source.get(i)); trio.add( i + 1 >= source.size() ? "" : source.get(i+1)); trio.add( i + 2 >= source.size() ? "" : source.get(i+2)); result.add(trio); } return result; } } --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From benbrand @ mac.com Thu Jul 24 23:47:32 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Thu, 24 Jul 2008 23:47:32 +0900 Subject: [Wicket-ja-user 175] Re: =?iso-2022-jp?b?GyRCJCIkayU/JTAkcj1QJDckPyQkO34hIj1QJDcbKEI=?= =?iso-2022-jp?b?GyRCJD8kLyRKJCQ7fiROQCk4ZhsoQg==?= In-Reply-To: References: <002601c8ecd5$1799be40$0200a8c0@skawashi10> <003101c8ed91$34570c60$0200a8c0@skawashi10> <0A69A710-77B6-4141-8DC1-CA02C203535B@mac.com> Message-ID: うああ、型パラメータも間違っている。 連投すみませんすみません。 /** * 三つでひとかたまりの文字列のリストを返すモデル **/ public class MyModel extends AbstractReadOnlyModel>> { List source; public MyModel(List source) { this.source = new ArrayList(source); } public List> getObject() { List> result = new ArrayList>(); for(int i = 0; i < source.size(); i += 3) { List trio = new ArrayList(3); trio.add( i >= source.size() ? "" : source.get(i)); trio.add( i + 1 >= source.size() ? "" : source.get(i+1)); trio.add( i + 2 >= source.size() ? "" : source.get(i+2)); result.add(trio); } return result; } } On 2008/07/24, at 23:42, Tsutomu Yano wrote: > すみません、一つ前のコードをコピペしてしまいました。MyModelの定義の部分はほんとは > 次のコードでした。 > > まあリストからget()するところに範囲チェックを入れただけなんですけど。 > > > import java.util.*; > > /** > * 三つでひとかたまりの文字列のリストを返すモデル > **/ > public class MyModel extends AbstractReadOnlyModel> { > List source; > > public MyModel(List source) { > this.source = new ArrayList(source); > } > > public List> getObject() { > List> result = new ArrayList>(); > for(int i = 0; i < source.size(); i += 3) { > List trio = new ArrayList(3); > trio.add( i >= source.size() ? "" : source.get(i)); > trio.add( i + 1 >= source.size() ? "" : source.get(i+1)); > trio.add( i + 2 >= source.size() ? "" : source.get(i+2)); > result.add(trio); > } > return result; > } > } > > > --------------------------------------------------- > 矢野 勉(やの つとむ) > 電子メール:benbrand_at_mac.com > --------------------------------------------------- > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From tc512842 @ ybb.ne.jp Fri Jul 25 00:09:23 2008 From: tc512842 @ ybb.ne.jp (=?iso-2022-jp?B?GyRCQG5FaCEhQD87ShsoQg==?=) Date: Fri, 25 Jul 2008 00:09:23 +0900 Subject: [Wicket-ja-user 176] Re: =?iso-2022-jp?b?GyRCJCIkayU/JTAkcj1QJDckPyQkO34hIj1QJDcbKEI=?= =?iso-2022-jp?b?GyRCJD8kLyRKJCQ7fiROQCk4ZhsoQg==?= References: <002601c8ecd5$1799be40$0200a8c0@skawashi10><003101c8ed91$34570c60$0200a8c0@skawashi10><0A69A710-77B6-4141-8DC1-CA02C203535B@mac.com> Message-ID: <000d01c8ed9f$41e10cb0$0200a8c0@skawashi10> やのさん かわしまです こんな時間にコードまでありがとうございます あとだしですが3このデータをもったListかMapを Listに保持させるやり方は考えてはいました >私が思うにWicketの利点の一つは基本的に >全部Java側で処理することにあるわけで、三つ単位にデータを >処理したいのであれば、タグを変に加工するより >Java側で三つ単位にデータを処理すれば良いのだと思う >のですがどうでしょうか。 たしかにこの方がてんぷれHTMLは出力時と 同じなりますし、よっぽど良いです 最近、業務でS2のMayaaをつかっていて タグである条件のときだけ子要素を 出力・・・的な考え方からなかなか切替ができませんです ----- Original Message ----- From: "Tsutomu Yano" To: Sent: Thursday, July 24, 2008 11:47 PM Subject: [Wicket-ja-user 175] Re: あるタグを出したい時、出したくない時の制御 > うああ、型パラメータも間違っている。 > 連投すみませんすみません。 > > /** > * 三つでひとかたまりの文字列のリストを返すモデル > **/ > public class MyModel extends AbstractReadOnlyModel>> { > List source; > > public MyModel(List source) { > this.source = new ArrayList(source); > } > > public List> getObject() { > List> result = new ArrayList>(); > for(int i = 0; i < source.size(); i += 3) { > List trio = new ArrayList(3); > trio.add( i >= source.size() ? "" : source.get(i)); > trio.add( i + 1 >= source.size() ? "" : source.get(i+1)); > trio.add( i + 2 >= source.size() ? "" : source.get(i+2)); > result.add(trio); > } > return result; > } > } > > > On 2008/07/24, at 23:42, Tsutomu Yano wrote: > >> すみません、一つ前のコードをコピペしてしまいました。MyModelの定義の部分はほんとは >> 次のコードでした。 >> >> まあリストからget()するところに範囲チェックを入れただけなんですけど。 >> >> >> import java.util.*; >> >> /** >> * 三つでひとかたまりの文字列のリストを返すモデル >> **/ >> public class MyModel extends AbstractReadOnlyModel> { >> List source; >> >> public MyModel(List source) { >> this.source = new ArrayList(source); >> } >> >> public List> getObject() { >> List> result = new ArrayList>(); >> for(int i = 0; i < source.size(); i += 3) { >> List trio = new ArrayList(3); >> trio.add( i >= source.size() ? "" : source.get(i)); >> trio.add( i + 1 >= source.size() ? "" : source.get(i+1)); >> trio.add( i + 2 >= source.size() ? "" : source.get(i+2)); >> result.add(trio); >> } >> return result; >> } >> } >> >> >> --------------------------------------------------- >> 矢野 勉(やの つとむ) >> 電子メール:benbrand_at_mac.com >> --------------------------------------------------- >> >> _______________________________________________ >> Wicket-ja-user mailing list >> Wicket-ja-user @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > > --------------------------------------------------- > 矢野 勉(やの つとむ) > 電子メール:benbrand_at_mac.com > --------------------------------------------------- > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user From r_f_315 @ hotmail.com Fri Jul 25 10:00:13 2008 From: r_f_315 @ hotmail.com (=?iso-2022-jp?B?GyRCOEVAbhsoQiAbJEJOdRsoQg==?=) Date: Fri, 25 Jul 2008 01:00:13 +0000 Subject: [Wicket-ja-user 177] =?iso-2022-jp?b?IFJFOiAgUmU6CVJlZGlyZWN0GyRCO34kThsoQlNlc3Npb24=?= =?iso-2022-jp?b?GyRCJEskRCQkJEYbKEI=?= In-Reply-To: <18d626fb0807240201s491f4cbct8d942069bced0c64@mail.gmail.com> References: <3463169.1144629076617.JavaMail.announce@igeekinc.com> <66759204272405379973347214343741873869-Webmail2@me.com> <18d626fb0807240201s491f4cbct8d942069bced0c64@mail.gmail.com> Message-ID: 古川です 返答ありがとうございます。 しかしながら、 自分としてはせっかくWicketを使うのですからできる限りJspは使いたくないという思いです。 「言語やフレームの種類などは手段であって目的ではない」 と言ってしまえばそれまでですが、 Wicketのフレーム内で解決できたらそれに越したことは無いと思います。;-) > Date: Thu, 24 Jul 2008 18:01:29 +0900 > From: higayasuo @ gmail.com > To: wicket-ja-user @ lists.sourceforge.jp > Subject: [Wicket-ja-user 165] Re: Redirect時のSessionについて > > ひがです。 > > 2008/07/24 17:35 古川 烈 : > > 古川です。 > > > ・初回もURLを汚してほしくない > > ・Cookieが使用できないブラウザでアクセスされた場合は常にURLにjsessionidを付与する > > > > という動作が望ましいのですが。。。 > > > 上記のように動作する方法をblogに書いておいたので、 > よろしければごらんください。 > http://d.hatena.ne.jp/higayasuo/20080724/1216889790 > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user _________________________________________________________________ MSNビデオオリジナルCLIMAXのレアなトークをチェック!ピエール瀧やYOUが出演! http://climax.jp.msn.com/ -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/wicket-ja-user/attachments/20080725/7cbf44a9/attachment.htm From r_f_315 @ hotmail.com Fri Jul 25 10:13:38 2008 From: r_f_315 @ hotmail.com (=?iso-2022-jp?B?GyRCOEVAbhsoQiAbJEJOdRsoQg==?=) Date: Fri, 25 Jul 2008 01:13:38 +0000 Subject: [Wicket-ja-user 178] =?iso-2022-jp?b?IFJFOiAgUmU6IFJlZGlyZWN0GyRCO34kThsoQlNlc3Npb24=?= =?iso-2022-jp?b?GyRCJEskRCQkJEYbKEI=?= In-Reply-To: <98568559320374171630348826413802650252-Webmail2@me.com> References: <98568559320374171630348826413802650252-Webmail2@me.com> Message-ID: 古川です。 早速試してみました。 WebApplication内のinitで { /* リクエストサイクルセッティングを取得する */ IRequestCycleSettings iRequestCycleSettings = this.getRequestCycleSettings(); /* 拡張ブラウザ情報取得モードに設定 */ iRequestCycleSettings.setGatherExtendedBrowserInfo( true ); } として WebPage内のコンストラクタで { /* セッション情報を取得する */ MySession session = (MySession) this.getSession(); /* セッションをバインドする */ session.bind(); /* セッションからクライアント情報を取得する(jsessionidの問題のため必ず一回呼び出す) */ @SuppressWarnings( "unused" ) ClientInfo info = session.getClientInfo(); this.add( new BookmarkablePageLink( "pageA", ChildA.class ) ); } のようにすれば期待の動作が実現できました。 ブラウザのCookieの有効無効にかかわらず、 セッションが無い状態の初回アクセス時に現在のページにリダイレクトされて jsessionidをURLに付与するか?、付与しないか?が解決される期待通りの動作です。 また、セッションが存在する状態では初回アクセス以降の遷移先ページでは、 Cookieがの有効無効に関わらずクライアント情報取得のために何度もリダイレクトが発生するというなこともありませんでした。 もっと他に良い方法があるのかもしれませんが、現状目標としていた     NiceURL+セッションの維持+Cookie有効無効によってURLにjsessionid付与 が、実現できたので自分の中で良しとしておきます。 Wicketメーリングリスト、最高ですね;-) > Date: Thu, 24 Jul 2008 19:05:15 +0900 > From: benbrand @ mac.com > To: wicket-ja-user @ lists.sourceforge.jp > Subject: [Wicket-ja-user 166] Re: Redirect時のSessionについて > > 矢野です。 > > > 1.cookieを使用可能にしているブラウザでアクセスした場合、 > >  初回のみURLにjsessionidが付与され、次ページ以降の遷移に関してはURLは綺麗なままでした。 > > > > 2.cookieを使用不可にしているブラウザでアクセスした場合は、 > >  初回以降も遷移する度に同じjsessionidがURLの後ろに自動で割り振られました。 > > なるほど、見えてきました。初回アクセス時のみjessionidが付与されるのですね。 > > これはWicketというよりもHttpServletResponse#encodeUrl()の問題なんです。 > 実はStrutsの時代でもタグが初回アクセス時だけリンクにjsessionidを付与すると > いうことで知られていました。 > > 参考: > http://d.hatena.ne.jp/hyperash/200310 > > つまりサーブレット仕様としてjsessionidクッキーが送られてこない場合はCookieによるセッション維持が > できるかどうかわからないので、URLを生成するときにはjsessionidを付与しよう、という仕組みになってる > ようですね。 > > 解決方法としてはリンク先のようにjsessionidを付与してもいいですが、私はむしろ、Cookieが来てなければ > 一度リダイレクトさせてCookieを発行してやったほうがいいんじゃないかと思います。 > > ブラウザのCookieが有効かどうかはSession#getClientInfo()でわかります。 > (IRequestCycleSettings#setGatherExtendedBrowserInfo(true)を呼んでいることが前提ですが)。 > > ただ、getClientInfo()メソッド自体がクライアント情報取得のためにいったんリダイレクトをするはずですので、 > 結局そのタイミングでクッキーが発行されると思いますし、結局getClientInfo()だけで解決してしまうかもしれませんが。 > > --------------------- > 矢野 勉(やの つとむ) > benbrand @ mac.com > > > 木曜日、7月24、2008、05:35PM、 "古川 烈" のメッセージ: > > > >古川です。 > > > >分り易いページへの誘導ありがとうございます。 > >なるほど、納得しました。 > > > >さらに調査した結果を報告します。 > > > >dirty()で綺麗なURLになると書きましたが、間違いでした。 > >誤情報を流して申し訳ありませんでした。 > >dirty()を記述しようがしまいが、初回のリクエスト時だけはjsessionidがURLの後ろに付けられます。 > >※結局のところdirty()が何を行うメソッドなのか不明です。 > > > >動きとしては、bind()を呼ぶだけでセッションが維持され、 > > > >1.cookieを使用可能にしているブラウザでアクセスした場合、 > > 初回のみURLにjsessionidが付与され、次ページ以降の遷移に関してはURLは綺麗なままでした。 > > > >2.cookieを使用不可にしているブラウザでアクセスした場合は、 > > 初回以降も遷移する度に同じjsessionidがURLの後ろに自動で割り振られました。 > > > > > >なんというか、とても歯がゆい状態です。。。 > > > >理想の動作としては、 > > > >・初回もURLを汚してほしくない > >・Cookieが使用できないブラウザでアクセスされた場合は常にURLにjsessionidを付与する > > > >という動作が望ましいのですが。。。 > > > >ためしにBookmarkablePageLinkの protected CharSequence getURL() の中身を > >{ > > String url = new StringBuffer( super.getURL() ).toString(); > > > > return url.replaceAll(";jsessionid=.*(\\?|$)", ""); > >} > >こんな感じでオーバーライドしてみたら、初回からもURLは汚されませんでしたが、 > >当然cookieが無効になっているブラウザでURLにjsessionidが付かないので問題有りでした。 > >但し、cookieが有効なブラウザで初回のURLが綺麗でも問題なくセッションは維持されていました。 > > > >BookmarkablePageLinkの中身を見て上記の動作が実現できるようにもう少し研究してみます。 > > > > > >--------------------------------------------------- > >古川 烈(ふるかわ れつ) > >電子メール:r_f_315 @ hotmail.com > >--------------------------------------------------- > > > >_________________________________________________________________ > >MSN相談党、誕生。あなたの知識で日本を変えよう。党首には押切もえが就任! > >http://questionbox.jp.msn.com/index.php3?StatusCheck=ON > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user _________________________________________________________________ MSN相談党、誕生。あなたの知識で日本を変えよう。党首には押切もえが就任! http://questionbox.jp.msn.com/index.php3?StatusCheck=ON -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/wicket-ja-user/attachments/20080725/f6f68bf9/attachment.htm From takumann @ gmail.com Fri Jul 25 10:59:03 2008 From: takumann @ gmail.com (K T) Date: Fri, 25 Jul 2008 10:59:03 +0900 Subject: [Wicket-ja-user 179] =?iso-2022-jp?b?GyRCQj5OT0tcNGobKEI=?= Message-ID: <889bbb9c0807241859l680bd479n8be171cb935c1b90@mail.gmail.com> はじめまして、タクマンと申します。 ずっとROMりまくりの人です。 疑問をメーリングリストに投げかける→知識者が解決策等を導く→解決 という流れが出来ているので・・・ できれば誰かがWikiか何かにまとめて欲しいなぁって思っちゃったり 皆さん仕事持ちだと思いながらも無理な要求でした -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/wicket-ja-user/attachments/20080725/e6acc153/attachment.htm From r_f_315 @ hotmail.com Fri Jul 25 11:58:19 2008 From: r_f_315 @ hotmail.com (=?iso-2022-jp?B?GyRCOEVAbhsoQiAbJEJOdRsoQg==?=) Date: Fri, 25 Jul 2008 02:58:19 +0000 Subject: [Wicket-ja-user 180] =?iso-2022-jp?b?IG1vdW50Qm9va21hcmthYmxlUGFnZRskQiRIQDhALiQ1GyhC?= =?iso-2022-jp?b?GyRCJGwkayVqJXMlLxsoQlVSTBskQiRLJEQkJCRGGyhC?= Message-ID: 古川です。 ページレンダー時のNiceURLについて悩んでおります。 毎度質問ばかりですが、遺産になればと思い図々しくメールさせてもらってます;-p WebApplicationのinit()内で { mountBookmarkablePage( "child_a0", ChildA.class ); mountBookmarkablePage( "child_a2", ChildA.class ); mountBookmarkablePage( "child_a1", ChildA.class ); } とバインドしたページがあったとして、 WebPageのコンストラクタ内で { this.add( new BookmarkablePageLink( "pageA", ChildA.class ) ); } とした場合、 レンダリング後のリンクURLは http://localhost:8080/○○○/child_a2 となります。 (もちろんどのURLを叩いてもちゃんとアクセスできるわけですが) マウントする順番は関係なく、 マウントするURL文字列(ここでは"child_a*")同士を何らかのルールで比較してレンダリングする??? 複数のURLにマウントされたページのURLをレンダラーが一つに絞り込むルールがわかりません。 また、WebPageのコンストラクタ内で ChildA.classなど利用して、自身がマウントされているURLを取得したりすることは可能でしょうか? その情報を元にするなどして、レンダリングされるリンクURLを指定する方法ってあるのでしょうか? --------------------------------------------------- 古川 烈(ふるかわ れつ) 電子メール:r_f_315 @ hotmail.com --------------------------------------------------- _________________________________________________________________ ボーナスが出たら、同僚が次々転職!転職活動ってやったほうがいいの?プロに相談してみよう。 http://search.msn.co.jp/results.aspx?q=%E8%BB%A2%E8%81%B7%E3%80%80%E7%9B%B8%E8%AB%87&form=MJCEAA -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/wicket-ja-user/attachments/20080725/82067d13/attachment.htm From koyane @ gmail.com Fri Jul 25 14:24:15 2008 From: koyane @ gmail.com (koyane) Date: Fri, 25 Jul 2008 14:24:15 +0900 Subject: [Wicket-ja-user 181] Re: =?iso-2022-jp?b?bW91bnRCb29rbWFya2FibGVQYWdlGyRCJEhAOEAuGyhC?= =?iso-2022-jp?b?GyRCJDUkbCRrJWolcyUvGyhCVVJMGyRCJEskRCQkJEYbKEI=?= In-Reply-To: References: Message-ID: <4889637F.4010803@gmail.com> 日置です。 mountBookmarkablePage()でマウントするパスとクラスのセットは 最終的に WebRequestCodingStrategy.MountsMap内のTreeMapにマウントするURL文字列をキーとして格納されるようです。 で、このTreeMapのComparatorが、MountsMap.LENGTH_COMPARATORですね。 なので、 > マウントするURL文字列(ここでは"child_a*")同士を何らかのルールで比較してレンダリングする??? > 複数のURLにマウントされたページのURLをレンダラーが一つに絞り込むルールがわかりません。 のルールというのは MountsMap.LENGTH_COMPARATORの生成した順序ではじめに条件にひっかかるもの ってことになります。 この実装だとURLの文字列比較逆順ですね。 私にはこのComparatorがどうしてこの順序を指定しているかの意図までは分かりません。 From r_f_315 @ hotmail.com Fri Jul 25 16:01:23 2008 From: r_f_315 @ hotmail.com (=?iso-2022-jp?B?GyRCOEVAbhsoQiAbJEJOdRsoQg==?=) Date: Fri, 25 Jul 2008 07:01:23 +0000 Subject: [Wicket-ja-user 182] =?iso-2022-jp?b?IFJFOiAgUmU6IG1vdW50Qm9va21hcmthYmxlUGFnZQ==?= =?iso-2022-jp?b?GyRCJEhAOEAuJDUkbCRrJWolcyUvGyhCVVJMGyRCJEskRCQkJEYbKEI=?= In-Reply-To: <4889637F.4010803@gmail.com> References: <4889637F.4010803@gmail.com> Message-ID: 古川です。 返答ありがとうございます。 なるほど、最後はTreeMapに格納されて、Comparatorで判断しているのですね。 TreeMapにアクセスしてClassなクラスでマウントしたキーを逆引きしたいところですけど、 WebPageのコンストラクタ内で this.getRequestCycle().getProcessor().getRequestCodingStrategy(). で引っ張っても公開されているようなメソッドは無いですね。 (IRequestCodingStrategyには当然そんなメソッドは無いですし) リフレクションで無理矢理抜いたらいけるでしょうけど、 明らかに手法として間違っているのでしょうね。 > Date: Fri, 25 Jul 2008 14:24:15 +0900 > From: koyane @ gmail.com > To: wicket-ja-user @ lists.sourceforge.jp > Subject: [Wicket-ja-user 181] Re: mountBookmarkablePageと生成されるリンクURLについて > > 日置です。 > > mountBookmarkablePage()でマウントするパスとクラスのセットは > 最終的に > WebRequestCodingStrategy.MountsMap内のTreeMapにマウントするURL文字列をキーとして格納されるようです。 > で、このTreeMapのComparatorが、MountsMap.LENGTH_COMPARATORですね。 > > なので、 > > > マウントするURL文字列(ここでは"child_a*")同士を何らかのルールで比較してレンダリングする??? > > 複数のURLにマウントされたページのURLをレンダラーが一つに絞り込むルールがわかりません。 > > のルールというのは > MountsMap.LENGTH_COMPARATORの生成した順序ではじめに条件にひっかかるもの > ってことになります。 > この実装だとURLの文字列比較逆順ですね。 > > 私にはこのComparatorがどうしてこの順序を指定しているかの意図までは分かりません。 > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user _________________________________________________________________ MSN相談党、誕生。あなたの知識で日本を変えよう。党首には押切もえが就任! http://questionbox.jp.msn.com/index.php3?StatusCheck=ON -------------- next part -------------- HTMLの添付ファイルを保管しました... URL: http://lists.sourceforge.jp/mailman/archives/wicket-ja-user/attachments/20080725/bdeb5e4e/attachment.htm From koyane @ gmail.com Fri Jul 25 19:41:19 2008 From: koyane @ gmail.com (koyane) Date: Fri, 25 Jul 2008 19:41:19 +0900 Subject: [Wicket-ja-user 183] Re: =?iso-2022-jp?b?bW91bnRCb29rbWFya2FibGVQYWdlGyRCJEhAOEAuGyhC?= =?iso-2022-jp?b?GyRCJDUkbCRrJWolcyUvGyhCVVJMGyRCJEskRCQkJEYbKEI=?= In-Reply-To: References: <4889637F.4010803@gmail.com> Message-ID: <4889ADCF.8020000@gmail.com> 日置です。 指定したページクラスを取得できる BookmarkablePageRequestTargetUrlCodingStrategy を継承したクラスを作って 直接mountすれば逆引きだけは無理やりでも実現できるとは思うのですが、 > また、WebPageのコンストラクタ内で > ChildA.classなど利用して、自身がマウントされているURLを取得したりすることは可能でしょうか? > その情報を元にするなどして、レンダリングされるリンクURLを指定する方法ってあるのでしょうか? BookmarkablePageLinkがURL文字列を生成する際には、Pageのインスタンスは絡んでいないと思うので、 レンダリングされるリンクURLの操作は少なくともページ側からは無理そうな気がします。 というかBookmarkablePageLink.getURL()が追いきれない>< お役に立てず、申し訳ありません。。。 From webmaster @ chimera.st Fri Jul 25 20:06:05 2008 From: webmaster @ chimera.st (TAKEUCHI Hideyuki) Date: Fri, 25 Jul 2008 20:06:05 +0900 Subject: [Wicket-ja-user 184] Re: =?iso-2022-jp?b?GyRCQmgjMTJzGyhCV2lja2V0GyRCSlk2LzJxIUobKEI=?= =?iso-2022-jp?b?GyRCRWw1fiFLGyhC?= In-Reply-To: References: Message-ID: <4889B39D.4070602@chimera.st> 勉強会でライトニングトークする予定で登録している たけうちと言います。 ほかの人と話がかぶるとあれなのでいくつか話そうと思って いる内容についての予告をば。それと、会場についての質問。 まず先に、会場について質問ですが、プロジェクタの ようなものを使用することはできるのでしょうか?また、 資料を作るつもりですが、印刷して配ってもかまわないでしょうか? 話す内容についてですが、詳しい内容については長くなるので 下に書きました。「1」がメインで、「2」は半分宣伝(?)、 「3」については時間が余ればぼちぼちと。といった感じで やろうかと考えています。 ほとんどがWicketをつかってページを作るというより、 フレームワークを作るというようなメタな話で、 Wicket初心者向けじゃない話になってしまうと思いますが、 なんかこうした方がいいよとかいう意見がありましたら お願いいたします。 -- 以下予告 -- 1. ComponentResolverを使用したTe○daライクなプロパティ解決&  コンポーネント自動生成+α Wicketはcontainer.add(...).setVisible(...);などなど 延々とaddをやらないといけないくてめんどくさいと勝手に 思い込んでいる人向けの、Wicketの拡張性の高さの 一端についてのお話。 Tee○aもどき+αをWicketを使って実装する方法を話そうかと 思います。Wicketはそんなことしない方がよいよとかいう 批難とかも受けたいです。 2. 1.4時代のSeasarとWicketのつなぎこみ・設計と実装 なんかS2Wicketの更新の止まっているので、似非S2Wicketを wicket-iocを使用して、SMART Deploy、Wicket1.4に対応 したものを独自に作ってつかっています。 これを作る上で使用した、Wicket上の知っているともしかしたら 何かに使えるかもしれない、おもしろい拡張ポイントをいくつか 紹介しようかなと思います。 3. London Wicket Users' Groupのプレゼンからいくつか紹介 BehaviorやComponent Visitorを使用したコンポーネントへの 楽ちんな振る舞いの追加。ほかJavascriptとの連携とかいろいろ。 以上 -- たけうち Tsutomu Yano さんは書きました: > 矢野です。 > > 以前にWicket勉強会をやりたいとMLにも流しましたが、場所が確保できたので告知ページを作りました。 > > http://www.javelindev.jp/kaigi/first > > > 8月2日(土)の14:30から、文京区後楽園駅近くの下記の会社様のオフィスを借りて行います。 > > Xarts株式会社様 hhttp://www.xarts.jp/access.html#map_tokyo > > > 一応2日でほぼ確定なのですが、まだ若干の問題があるので1日(金)夜に変更になる可能性があります。 > その場合は早めにMLに情報を流します。また確定した場合も連絡します。 > > 勉強会ということでプレゼンと聴く人ではなく、その場で調べるようなことがあってもよいと思っています。 > > > なお、参加だけでなくライトニングトークをやりたいとかプレゼンをやりたいという方も募集しています。 > ライトニングトークとかで、ご自分のサービスを紹介してみたりするとおもしろいと思います。どうでしょうか。 > > 10から15人あつまればなーとは思ってますが、5人集まれば開催できると思ってます。 > 会場はそれなりに広いので、30人くらいは入ると思いますが。 > > > 是非ご参加ください。よろしくお願いします。 > > > --------------------------------------------------- > 矢野 勉(やの つとむ) > 電子メール:benbrand_at_mac.com > --------------------------------------------------- > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > From benbrand @ mac.com Sat Jul 26 03:30:27 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Sat, 26 Jul 2008 03:30:27 +0900 Subject: [Wicket-ja-user 185] Re: =?iso-2022-jp?b?GyRCQmgjMTJzGyhCV2lja2V0GyRCSlk2LzJxIUobKEI=?= =?iso-2022-jp?b?GyRCRWw1fiFLGyhC?= In-Reply-To: <4889B39D.4070602@chimera.st> References: <4889B39D.4070602@chimera.st> Message-ID: たけうちさん 矢野です。 会場ですが、プロジェクタは用意してくださっています。ただ現状、マイクが用意できてないです。 もしかしたらマイクなしかもしれません。 マイクなしでも声は通るのですが、あったほうが楽ですからね... 資料は配ってもらってかまいませんが、プロジェクタがあるのでそれで説明してもいいように 思います。資料を現地で印刷するのはさすがにちょっと気が引けるので先に準備しないといけません。 人数的に先に用意するのは大変ではないでしょうか。 なお、上限人数はまだ調整中です。 今回はかなり応募が多かったので、上位から何名、と切らざるを得ないです。。。 --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From benbrand @ mac.com Sat Jul 26 03:55:08 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Sat, 26 Jul 2008 03:55:08 +0900 Subject: [Wicket-ja-user 186] Re: =?iso-2022-jp?b?GyRCQj5OT0tcNGobKEI=?= In-Reply-To: <889bbb9c0807241859l680bd479n8be171cb935c1b90@mail.gmail.com> References: <889bbb9c0807241859l680bd479n8be171cb935c1b90@mail.gmail.com> Message-ID: Wicket-jaにはwicket-ja用のWikiもあるので、そこにまとめていきたいですねー。 ちょっと忙しくてなかなか更新できないのですが.... 貴重な情報ですしWikiにまとめておけば 次に同じ疑問が来たときに誘導できますしね。 http://sourceforge.jp/projects/wicket-ja/wiki/FrontPage On 2008/07/25, at 10:59, K T wrote: > はじめまして、タクマンと申します。 > ずっとROMりまくりの人です。 > > 疑問をメーリングリストに投げかける→知識者が解決策等を導く→解決 > > という流れが出来ているので・・・ > > できれば誰かがWikiか何かにまとめて欲しいなぁって思っちゃったり > > 皆さん仕事持ちだと思いながらも無理な要求でした > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From webmaster @ chimera.st Sat Jul 26 08:41:48 2008 From: webmaster @ chimera.st (TAKEUCHI Hideyuki) Date: Sat, 26 Jul 2008 08:41:48 +0900 Subject: [Wicket-ja-user 187] Re: =?iso-2022-jp?b?GyRCJCIkayU/JTAkcj1QJDckPyQkO34hIj1QJDcbKEI=?= =?iso-2022-jp?b?GyRCJD8kLyRKJCQ7fiROQCk4ZhsoQg==?= In-Reply-To: <000d01c8ed9f$41e10cb0$0200a8c0@skawashi10> References: <002601c8ecd5$1799be40$0200a8c0@skawashi10><003101c8ed91$34570c60$0200a8c0@skawashi10><0A69A710-77B6-4141-8DC1-CA02C203535B@mac.com> <000d01c8ed9f$41e10cb0$0200a8c0@skawashi10> Message-ID: <488A64BC.1000207@chimera.st> たけうちといいます。 GridViewコンポーネントを使用すると幸せになれるかもしれません。 Wicket Example - repeater http://www.wicket-library.com/wicket-examples/repeater この中の GridView Example - demonstrates a grid view が参考になります。 Wicketは自分で気合でゴリゴリ書くというより、既存の コンポーネントをどう組み合わせたらよりスマートに書けるか 考えるといった開発スタイルのほうがあっている気がします。 ではでは。 -- たけうち 川嶋 誠司 さんは書きました: > やのさん > > かわしまです > こんな時間にコードまでありがとうございます > > あとだしですが3このデータをもったListかMapを > Listに保持させるやり方は考えてはいました > >> 私が思うにWicketの利点の一つは基本的に >> 全部Java側で処理することにあるわけで、三つ単位にデータを >> 処理したいのであれば、タグを変に加工するより >> Java側で三つ単位にデータを処理すれば良いのだと思う >> のですがどうでしょうか。 > > たしかにこの方がてんぷれHTMLは出力時と > 同じなりますし、よっぽど良いです > > 最近、業務でS2のMayaaをつかっていて > タグである条件のときだけ子要素を > 出力・・・的な考え方からなかなか切替ができませんです > > ----- Original Message ----- > From: "Tsutomu Yano" > To: > Sent: Thursday, July 24, 2008 11:47 PM > Subject: [Wicket-ja-user 175] Re: あるタグを出したい時、出したくない時の制御 > > >> うああ、型パラメータも間違っている。 >> 連投すみませんすみません。 >> >> /** >> * 三つでひとかたまりの文字列のリストを返すモデル >> **/ >> public class MyModel extends AbstractReadOnlyModel>> { >> List source; >> >> public MyModel(List source) { >> this.source = new ArrayList(source); >> } >> >> public List> getObject() { >> List> result = new ArrayList>(); >> for(int i = 0; i < source.size(); i += 3) { >> List trio = new ArrayList(3); >> trio.add( i >= source.size() ? "" : source.get(i)); >> trio.add( i + 1 >= source.size() ? "" : source.get(i+1)); >> trio.add( i + 2 >= source.size() ? "" : source.get(i+2)); >> result.add(trio); >> } >> return result; >> } >> } >> >> >> On 2008/07/24, at 23:42, Tsutomu Yano wrote: >> >>> すみません、一つ前のコードをコピペしてしまいました。MyModelの定義の部分はほんとは >>> 次のコードでした。 >>> >>> まあリストからget()するところに範囲チェックを入れただけなんですけど。 >>> >>> >>> import java.util.*; >>> >>> /** >>> * 三つでひとかたまりの文字列のリストを返すモデル >>> **/ >>> public class MyModel extends AbstractReadOnlyModel> { >>> List source; >>> >>> public MyModel(List source) { >>> this.source = new ArrayList(source); >>> } >>> >>> public List> getObject() { >>> List> result = new ArrayList>(); >>> for(int i = 0; i < source.size(); i += 3) { >>> List trio = new ArrayList(3); >>> trio.add( i >= source.size() ? "" : source.get(i)); >>> trio.add( i + 1 >= source.size() ? "" : source.get(i+1)); >>> trio.add( i + 2 >= source.size() ? "" : source.get(i+2)); >>> result.add(trio); >>> } >>> return result; >>> } >>> } >>> >>> >>> --------------------------------------------------- >>> 矢野 勉(やの つとむ) >>> 電子メール:benbrand_at_mac.com >>> --------------------------------------------------- >>> >>> _______________________________________________ >>> Wicket-ja-user mailing list >>> Wicket-ja-user @ lists.sourceforge.jp >>> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user >> --------------------------------------------------- >> 矢野 勉(やの つとむ) >> 電子メール:benbrand_at_mac.com >> --------------------------------------------------- >> >> _______________________________________________ >> Wicket-ja-user mailing list >> Wicket-ja-user @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > From webmaster @ chimera.st Sat Jul 26 08:53:21 2008 From: webmaster @ chimera.st (TAKEUCHI Hideyuki) Date: Sat, 26 Jul 2008 08:53:21 +0900 Subject: [Wicket-ja-user 188] Re: =?iso-2022-jp?b?GyRCQmgjMTJzGyhCV2lja2V0GyRCSlk2LzJxIUobKEI=?= =?iso-2022-jp?b?GyRCRWw1fiFLGyhC?= In-Reply-To: References: <4889B39D.4070602@chimera.st> Message-ID: <488A6771.7030305@chimera.st> 矢野さん たけうちです。 了解しました、声は通るほうなので個人的にはマイクなしでも大丈夫です。 資料については印刷して持っていこうかと思っています。 どうしてもソースコードが入ってくるとプロジェクタでは見づらく なりますので^^。 それにしても参加者多いですね^^ 普段のメールの数からすると、びっくりする数ですw -- たけうち Tsutomu Yano さんは書きました: > たけうちさん > > 矢野です。 > > 会場ですが、プロジェクタは用意してくださっています。ただ現状、マイクが用意できてないです。 > もしかしたらマイクなしかもしれません。 > > マイクなしでも声は通るのですが、あったほうが楽ですからね... > > 資料は配ってもらってかまいませんが、プロジェクタがあるのでそれで説明してもいいように > 思います。資料を現地で印刷するのはさすがにちょっと気が引けるので先に準備しないといけません。 > 人数的に先に用意するのは大変ではないでしょうか。 > > なお、上限人数はまだ調整中です。 > 今回はかなり応募が多かったので、上位から何名、と切らざるを得ないです。。。 > > > --------------------------------------------------- > 矢野 勉(やの つとむ) > 電子メール:benbrand_at_mac.com > --------------------------------------------------- > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > From tc512842 @ ybb.ne.jp Sat Jul 26 13:18:16 2008 From: tc512842 @ ybb.ne.jp (=?iso-2022-jp?B?GyRCQG5FaCEhQD87ShsoQg==?=) Date: Sat, 26 Jul 2008 13:18:16 +0900 Subject: [Wicket-ja-user 189] Re: =?iso-2022-jp?b?GyRCJCIkayU/JTAkcj1QJDckPyQkO34hIj1QJDcbKEI=?= =?iso-2022-jp?b?GyRCJD8kLyRKJCQ7fiROQCk4ZhsoQg==?= References: <002601c8ecd5$1799be40$0200a8c0@skawashi10><003101c8ed91$34570c60$0200a8c0@skawashi10><0A69A710-77B6-4141-8DC1-CA02C203535B@mac.com> <000d01c8ed9f$41e10cb0$0200a8c0@skawashi10> <488A64BC.1000207@chimera.st> Message-ID: <003001c8eed6$a156ee20$0200a8c0@skawashi10> たけうちさん かわしまです
[firstname]
で gridView.setColumns(3); ですね〜。まさにズバリです もっといろいろなexample見るべきですね ありがとうございました。たすかりました。 ----- Original Message ----- From: "TAKEUCHI Hideyuki" To: Sent: Saturday, July 26, 2008 8:41 AM Subject: [Wicket-ja-user 187] Re: あるタグを出したい時、出したくない時の制御 > たけうちといいます。 > > GridViewコンポーネントを使用すると幸せになれるかもしれません。 > > Wicket Example - repeater > http://www.wicket-library.com/wicket-examples/repeater > > この中の > GridView Example - demonstrates a grid view > が参考になります。 > > Wicketは自分で気合でゴリゴリ書くというより、既存の > コンポーネントをどう組み合わせたらよりスマートに書けるか > 考えるといった開発スタイルのほうがあっている気がします。 > > ではでは。 > > -- > たけうち > > 川嶋 誠司 さんは書きました: >> やのさん >> >> かわしまです >> こんな時間にコードまでありがとうございます >> >> あとだしですが3このデータをもったListかMapを >> Listに保持させるやり方は考えてはいました >> >>> 私が思うにWicketの利点の一つは基本的に >>> 全部Java側で処理することにあるわけで、三つ単位にデータを >>> 処理したいのであれば、タグを変に加工するより >>> Java側で三つ単位にデータを処理すれば良いのだと思う >>> のですがどうでしょうか。 >> >> たしかにこの方がてんぷれHTMLは出力時と >> 同じなりますし、よっぽど良いです >> >> 最近、業務でS2のMayaaをつかっていて >> タグである条件のときだけ子要素を >> 出力・・・的な考え方からなかなか切替ができませんです >> >> ----- Original Message ----- >> From: "Tsutomu Yano" >> To: >> Sent: Thursday, July 24, 2008 11:47 PM >> Subject: [Wicket-ja-user 175] Re: あるタグを出したい時、出したくない時の制御 >> >> >>> うああ、型パラメータも間違っている。 >>> 連投すみませんすみません。 >>> >>> /** >>> * 三つでひとかたまりの文字列のリストを返すモデル >>> **/ >>> public class MyModel extends AbstractReadOnlyModel>> { >>> List source; >>> >>> public MyModel(List source) { >>> this.source = new ArrayList(source); >>> } >>> >>> public List> getObject() { >>> List> result = new ArrayList>(); >>> for(int i = 0; i < source.size(); i += 3) { >>> List trio = new ArrayList(3); >>> trio.add( i >= source.size() ? "" : source.get(i)); >>> trio.add( i + 1 >= source.size() ? "" : source.get(i+1)); >>> trio.add( i + 2 >= source.size() ? "" : source.get(i+2)); >>> result.add(trio); >>> } >>> return result; >>> } >>> } >>> >>> >>> On 2008/07/24, at 23:42, Tsutomu Yano wrote: >>> >>>> すみません、一つ前のコードをコピペしてしまいました。MyModelの定義の部分はほんとは >>>> 次のコードでした。 >>>> >>>> まあリストからget()するところに範囲チェックを入れただけなんですけど。 >>>> >>>> >>>> import java.util.*; >>>> >>>> /** >>>> * 三つでひとかたまりの文字列のリストを返すモデル >>>> **/ >>>> public class MyModel extends AbstractReadOnlyModel> { >>>> List source; >>>> >>>> public MyModel(List source) { >>>> this.source = new ArrayList(source); >>>> } >>>> >>>> public List> getObject() { >>>> List> result = new ArrayList>(); >>>> for(int i = 0; i < source.size(); i += 3) { >>>> List trio = new ArrayList(3); >>>> trio.add( i >= source.size() ? "" : source.get(i)); >>>> trio.add( i + 1 >= source.size() ? "" : source.get(i+1)); >>>> trio.add( i + 2 >= source.size() ? "" : source.get(i+2)); >>>> result.add(trio); >>>> } >>>> return result; >>>> } >>>> } >>>> >>>> >>>> --------------------------------------------------- >>>> 矢野 勉(やの つとむ) >>>> 電子メール:benbrand_at_mac.com >>>> --------------------------------------------------- >>>> >>>> _______________________________________________ >>>> Wicket-ja-user mailing list >>>> Wicket-ja-user @ lists.sourceforge.jp >>>> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user >>> --------------------------------------------------- >>> 矢野 勉(やの つとむ) >>> 電子メール:benbrand_at_mac.com >>> --------------------------------------------------- >>> >>> _______________________________________________ >>> Wicket-ja-user mailing list >>> Wicket-ja-user @ lists.sourceforge.jp >>> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user >> >> _______________________________________________ >> Wicket-ja-user mailing list >> Wicket-ja-user @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user >> > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user From benbrand @ mac.com Sun Jul 27 07:16:20 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Sun, 27 Jul 2008 07:16:20 +0900 Subject: [Wicket-ja-user 190] =?iso-2022-jp?b?V2lja2V0LWphGyRCSlk2LzJxJE4xfkpnJVohPCU4OTkbKEI=?= =?iso-2022-jp?b?GyRCPzcbKEI=?= Message-ID: <226B3855-1F55-499E-B163-15F797D62A6F@mac.com> 矢野です。 Wicket-ja勉強会の応募ページを更新しました。 前回の更新で登録内容を変更できると同時にキャンセル登録できるようにしましたが、今回は、 ・懇親会への参加登録をできるようにしました。 ・「懇親会のみ」という参加形態を追加しました。 初期状態では登録しているみなさん「参加しない」になっています。これで参加者が多いようであれば どこか予約しようと思っていますので、参加される方はご自分の登録分を更新お願いします。 また、今回は予想以上に参加者が多いもので、人数を限らざるを得ません。 本会には参加出来なくても懇親会は出たい、という人向けに、懇親会のみ参加という区分を設けました。 今回は本当に人数がものすごく多いので悩んでいます。 基本的には上位から人数を限る形になると思いますが、LTなり発表をしてくれる人は数に含めない(原則参加) 方向で考えています。やはり、発表してくれる人は貴重ですし、Wicketについて何か発表できる人には場を与えたい ので。ちょっと迷いましたがそこは優先する方向で考えてます。 初回でしかも想定以上に人数が集まったので、どたばたしてますがご容赦ください。 あと、当日は会場を貸してくださる会社の社員さんも何名か出席されます。それも含めた上限数計算になると 思いますのでご了承ください。 ともかく、懇親会に参加してみたい方は登録お願いします。 http://www.javelindev.jp/kaigi/first --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From benbrand @ mac.com Sun Jul 27 07:23:35 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Sun, 27 Jul 2008 07:23:35 +0900 Subject: [Wicket-ja-user 191] Re: =?iso-2022-jp?b?V2lja2V0LWphGyRCSlk2LzJxJE4xfkpnJVohPCU4GyhC?= =?iso-2022-jp?b?GyRCOTk/NxsoQg==?= In-Reply-To: <226B3855-1F55-499E-B163-15F797D62A6F@mac.com> References: <226B3855-1F55-499E-B163-15F797D62A6F@mac.com> Message-ID: <4E1D6F20-23E9-47F3-847F-4270C3A76DB4@mac.com> すみません書き漏れました。 社員さんの参加人数が月曜日夜くらいにわかることになっています。 それを聞いてから上限数を決定しようと思っています。 正確な参加可能者の通知はそれまでお待ちください。 On 2008/07/27, at 7:16, Tsutomu Yano wrote: > 矢野です。 > > Wicket-ja勉強会の応募ページを更新しました。 > > 前回の更新で登録内容を変更できると同時にキャンセル登録できるようにしましたが、今回は、 > > ・懇親会への参加登録をできるようにしました。 > ・「懇親会のみ」という参加形態を追加しました。 > > > 初期状態では登録しているみなさん「参加しない」になっています。これで参加者が多いようであれば > どこか予約しようと思っていますので、参加される方はご自分の登録分を更新お願いします。 > > また、今回は予想以上に参加者が多いもので、人数を限らざるを得ません。 > 本会には参加出来なくても懇親会は出たい、という人向けに、懇親会のみ参加という区分を設けました。 > > > 今回は本当に人数がものすごく多いので悩んでいます。 > 基本的には上位から人数を限る形になると思いますが、LTなり発表をしてくれる人は数に含めない(原則参加) > 方向で考えています。やはり、発表してくれる人は貴重ですし、Wicketについて何か発表できる人には場を与えたい > ので。ちょっと迷いましたがそこは優先する方向で考えてます。 > > 初回でしかも想定以上に人数が集まったので、どたばたしてますがご容赦ください。 > > > あと、当日は会場を貸してくださる会社の社員さんも何名か出席されます。それも含めた上限数計算になると > 思いますのでご了承ください。 > > > ともかく、懇親会に参加してみたい方は登録お願いします。 > > http://www.javelindev.jp/kaigi/first > > > --------------------------------------------------- > 矢野 勉(やの つとむ) > 電子メール:benbrand_at_mac.com > --------------------------------------------------- > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From h.kishi47 @ gmail.com Sun Jul 27 16:43:20 2008 From: h.kishi47 @ gmail.com (Hiromichi Kishi) Date: Sun, 27 Jul 2008 16:43:20 +0900 Subject: [Wicket-ja-user 192] Re: =?iso-2022-jp?b?UmVkaXJlY3QbJEI7fiROGyhCU2Vzc2lvbhskQiRLGyhC?= =?iso-2022-jp?b?GyRCJEQkJCRGGyhC?= In-Reply-To: References: <98568559320374171630348826413802650252-Webmail2@me.com> Message-ID: <55191e440807270043v3cde52a4ld545ca237cff1bca@mail.gmail.com> 岸です。 jsessionidの問題は私も困っていたので参考になりました。 ところで、 session.getClientInfo(); を実行すると、 "If you see this, it means that both javascript and meta-refresh are not support by your browser configuration. Please click this link to continue to the original destination" というページが一瞬表示されるのですが、これを表示しない、あるいは文章を変更する方法はあるのでしょうか? 2008/07/25 10:13 古川 烈 : > 古川です。 > > 早速試してみました。 > > WebApplication内のinitで > { > /* リクエストサイクルセッティングを取得する */ > IRequestCycleSettings iRequestCycleSettings = > this.getRequestCycleSettings(); > > /* 拡張ブラウザ情報取得モードに設定 */ > iRequestCycleSettings.setGatherExtendedBrowserInfo( true ); > } > > として > > WebPage内のコンストラクタで > { > /* セッション情報を取得する */ > MySession session = (MySession) this.getSession(); > > /* セッションをバインドする */ > session.bind(); > > /* セッションからクライアント情報を取得する(jsessionidの問題のため必ず一回呼び出す) */ > @SuppressWarnings( "unused" ) > ClientInfo info = session.getClientInfo(); > > this.add( new BookmarkablePageLink( "pageA", ChildA.class ) ); > } > > のようにすれば期待の動作が実現できました。 > > ブラウザのCookieの有効無効にかかわらず、 > セッションが無い状態の初回アクセス時に現在のページにリダイレクトされて > jsessionidをURLに付与するか?、付与しないか?が解決される期待通りの動作です。 > また、セッションが存在する状態では初回アクセス以降の遷移先ページでは、 > Cookieがの有効無効に関わらずクライアント情報取得のために何度もリダイレクトが発生するというなこともありませんでした。 > > もっと他に良い方法があるのかもしれませんが、現状目標としていた > >     NiceURL+セッションの維持+Cookie有効無効によってURLにjsessionid付与 > > が、実現できたので自分の中で良しとしておきます。 > > Wicketメーリングリスト、最高ですね;-) > >> Date: Thu, 24 Jul 2008 19:05:15 +0900 >> From: benbrand @ mac.com >> To: wicket-ja-user @ lists.sourceforge.jp >> Subject: [Wicket-ja-user 166] Re: Redirect時のSessionについて >> >> 矢野です。 >> >> > 1.cookieを使用可能にしているブラウザでアクセスした場合、 >> >  初回のみURLにjsessionidが付与され、次ページ以降の遷移に関してはURLは綺麗なままでした。 >> > >> > 2.cookieを使用不可にしているブラウザでアクセスした場合は、 >> >  初回以降も遷移する度に同じjsessionidがURLの後ろに自動で割り振られました。 >> >> なるほど、見えてきました。初回アクセス時のみjessionidが付与されるのですね。 >> >> これはWicketというよりもHttpServletResponse#encodeUrl()の問題なんです。 >> 実はStrutsの時代でもタグが初回アクセス時だけリンクにjsessionidを付与すると >> いうことで知られていました。 >> >> 参考: >> http://d.hatena.ne.jp/hyperash/200310 >> >> つまりサーブレット仕様としてjsessionidクッキーが送られてこない場合はCookieによるセッション維持が >> できるかどうかわからないので、URLを生成するときにはjsessionidを付与しよう、という仕組みになってる >> ようですね。 >> >> 解決方法としてはリンク先のようにjsessionidを付与してもいいですが、私はむしろ、Cookieが来てなければ >> 一度リダイレクトさせてCookieを発行してやったほうがいいんじゃないかと思います。 >> >> ブラウザのCookieが有効かどうかはSession#getClientInfo()でわかります。 >> (IRequestCycleSettings#setGatherExtendedBrowserInfo(true)を呼んでいることが前提ですが)。 >> >> ただ、getClientInfo()メソッド自体がクライアント情報取得のためにいったんリダイレクトをするはずですので、 >> 結局そのタイミングでクッキーが発行されると思いますし、結局getClientInfo()だけで解決してしまうかもしれませんが。 >> >> --------------------- >> 矢野 勉(やの つとむ) >> benbrand @ mac.com >> >> >> 木曜日、7月24、2008、05:35PM、 "古川 烈" のメッセージ: >> > >> >古川です。 >> > >> >分り易いページへの誘導ありがとうございます。 >> >なるほど、納得しました。 >> > >> >さらに調査した結果を報告します。 >> > >> >dirty()で綺麗なURLになると書きましたが、間違いでした。 >> >誤情報を流して申し訳ありませんでした。 >> >dirty()を記述しようがしまいが、初回のリクエスト時だけはjsessionidがURLの後ろに付けられます。 >> >※結局のところdirty()が何を行うメソッドなのか不明です。 >> > >> >動きとしては、bind()を呼ぶだけでセッションが維持され、 >> > >> >1.cookieを使用可能にしているブラウザでアクセスした場合、 >> > 初回のみURLにjsessionidが付与され、次ページ以降の遷移に関してはURLは綺麗なままでした。 >> > >> >2.cookieを使用不可にしているブラウザでアクセスした場合は、 >> > 初回以降も遷移する度に同じjsessionidがURLの後ろに自動で割り振られました。 >> > >> > >> >なんというか、とても歯がゆい状態です。。。 >> > >> >理想の動作としては、 >> > >> >・初回もURLを汚してほしくない >> >・Cookieが使用できないブラウザでアクセスされた場合は常にURLにjsessionidを付与する >> > >> >という動作が望ましいのですが。。。 >> > >> >ためしにBookmarkablePageLinkの protected CharSequence getURL() の中身を >> >{ >> > String url = new StringBuffer( super.getURL() ).toString(); >> > >> > return url.replaceAll(";jsessionid=.*(\\?|$)", ""); >> >} >> >こんな感じでオーバーライドしてみたら、初回からもURLは汚されませんでしたが、 >> >当然cookieが無効になっているブラウザでURLにjsessionidが付かないので問題有りでした。 >> >但し、cookieが有効なブラウザで初回のURLが綺麗でも問題なくセッションは維持されていました。 >> > >> >BookmarkablePageLinkの中身を見て上記の動作が実現できるようにもう少し研究してみます。 >> > >> > >> >--------------------------------------------------- >> >古川 烈(ふるかわ れつ) >> >電子メール:r_f_315 @ hotmail.com >> >--------------------------------------------------- >> > >> >_________________________________________________________________ >> >MSN相談党、誕生。あなたの知識で日本を変えよう。党首には押切もえが就任! >> >http://questionbox.jp.msn.com/index.php3?StatusCheck=ON >> >> _______________________________________________ >> Wicket-ja-user mailing list >> Wicket-ja-user @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > > ________________________________ > MSN相談党、誕生。あなたの知識で日本を変えよう。党首には押切もえが就任! Hotmailで質問・回答できる!今すぐ参加! > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > > From benbrand @ mac.com Sun Jul 27 18:06:37 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Sun, 27 Jul 2008 18:06:37 +0900 Subject: [Wicket-ja-user 193] Re: =?iso-2022-jp?b?UmVkaXJlY3QbJEI7fiROGyhCU2Vzc2lvbhskQiRLGyhC?= =?iso-2022-jp?b?GyRCJEQkJCRGGyhC?= In-Reply-To: <55191e440807270043v3cde52a4ld545ca237cff1bca@mail.gmail.com> References: <98568559320374171630348826413802650252-Webmail2@me.com> <55191e440807270043v3cde52a4ld545ca237cff1bca@mail.gmail.com> Message-ID: 矢野です。 まず、Wicketのソースコードをダウンロードしてきて、org.apache.wicket.markup.html.pages.BrowserInfoPageという クラスのJavaソースに並んでBrowserInfoPage.htmlがあるので、それを入手してください。 つぎにWebRequestCycleのサブクラスを作って、newClientInfo()メソッドをオーバーライドしてください。 下記のように実装します(このコードはWebRequestCycle.javaからコピーしたものです) @Override protected ClientInfo newClientInfo() { if (getApplication().getRequestCycleSettings().getGatherExtendedBrowserInfo()) { Session session = getSession(); if (session.getMetaData(BROWSER_WAS_POLLED_KEY) == null) { // we haven't done the redirect yet; record that we will be // doing that now and redirect session.setMetaData(BROWSER_WAS_POLLED_KEY, Boolean.TRUE); String url = "/" + getRequest().getURL(); //↓この行のnewしているクラスを変更しました throw new RestartResponseException(new YourBrowserInfoPage(url)); } // if we get here, the redirect already has been done; clear // the meta data entry; we don't need it any longer is the client // info object will be cached too session.setMetaData(BROWSER_WAS_POLLED_KEY, (Boolean)null); } return new WebClientInfo(this); }  最後にBrowserInfoPageのサブクラスとしてYourBrowserInfoPageクラスを作ります。単純に継承して、 すべてのコンストラクタでスーパークラスを呼ぶようにすればいいでしょう。  これでSession#getClientInfo()メソッドを呼ぶとYourBrowserInfoPageにリダイレクトするようにな ります。一番最初にとっておいたBrowserInfoPage.htmlをお好きなように書き換えて、YourBrowserInfoPage.java と同じ場所においておけば、好きなページを表示できると思います。 On 2008/07/27, at 16:43, Hiromichi Kishi wrote: > 岸です。 > > jsessionidの問題は私も困っていたので参考になりました。 > > ところで、 > session.getClientInfo(); > を実行すると、 > > "If you see this, it means that both javascript and meta-refresh are not > support by your browser configuration. Please click this link to continue to > the original destination" > > というページが一瞬表示されるのですが、これを表示しない、あるいは文章を変更する方法はあるのでしょうか? --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From h.kishi47 @ gmail.com Mon Jul 28 19:47:54 2008 From: h.kishi47 @ gmail.com (Hiromichi Kishi) Date: Mon, 28 Jul 2008 19:47:54 +0900 Subject: [Wicket-ja-user 194] Re: =?iso-2022-jp?b?UmVkaXJlY3QbJEI7fiROGyhCU2Vzc2lvbhskQiRLGyhC?= =?iso-2022-jp?b?GyRCJEQkJCRGGyhC?= In-Reply-To: References: <98568559320374171630348826413802650252-Webmail2@me.com> <55191e440807270043v3cde52a4ld545ca237cff1bca@mail.gmail.com> Message-ID: <55191e440807280347p49af2be1t6f81a4b204c72dda@mail.gmail.com> 岸です。 >矢野様 ソースつきの詳細な回答ありがとうございます。 試したところ、BROWSER_WAS_POLLED_KEYなどがprivateな変数だったので、 以下のような実装にしました。 @Override protected ClientInfo newClientInfo(){ try{ return super.newClientInfo(); }catch (RestartResponseException e) { String url = "/" + getRequest().getURL(); throw new RestartResponseException(new MyBrowserInfoPage(url)); } } 期待通りの動作ができました。 ありがとうございました。 2008/07/27 18:06 Tsutomu Yano : > 矢野です。 > > まず、Wicketのソースコードをダウンロードしてきて、org.apache.wicket.markup.html.pages.BrowserInfoPageという > クラスのJavaソースに並んでBrowserInfoPage.htmlがあるので、それを入手してください。 > > つぎにWebRequestCycleのサブクラスを作って、newClientInfo()メソッドをオーバーライドしてください。 > 下記のように実装します(このコードはWebRequestCycle.javaからコピーしたものです) > > @Override > protected ClientInfo newClientInfo() > { > if (getApplication().getRequestCycleSettings().getGatherExtendedBrowserInfo()) > { > Session session = getSession(); > if (session.getMetaData(BROWSER_WAS_POLLED_KEY) == null) > { > // we haven't done the redirect yet; record that we will be > // doing that now and redirect > session.setMetaData(BROWSER_WAS_POLLED_KEY, Boolean.TRUE); > String url = "/" + getRequest().getURL(); > > //↓この行のnewしているクラスを変更しました > throw new RestartResponseException(new YourBrowserInfoPage(url)); > } > // if we get here, the redirect already has been done; clear > // the meta data entry; we don't need it any longer is the client > // info object will be cached too > session.setMetaData(BROWSER_WAS_POLLED_KEY, (Boolean)null); > } > return new WebClientInfo(this); > } > > > 最後にBrowserInfoPageのサブクラスとしてYourBrowserInfoPageクラスを作ります。単純に継承して、 > すべてのコンストラクタでスーパークラスを呼ぶようにすればいいでしょう。 > > これでSession#getClientInfo()メソッドを呼ぶとYourBrowserInfoPageにリダイレクトするようにな > ります。一番最初にとっておいたBrowserInfoPage.htmlをお好きなように書き換えて、YourBrowserInfoPage.java > と同じ場所においておけば、好きなページを表示できると思います。 > > > > > > On 2008/07/27, at 16:43, Hiromichi Kishi wrote: > >> 岸です。 >> >> jsessionidの問題は私も困っていたので参考になりました。 >> >> ところで、 >> session.getClientInfo(); >> を実行すると、 >> >> "If you see this, it means that both javascript and meta-refresh are not >> support by your browser configuration. Please click this link to continue to >> the original destination" >> >> というページが一瞬表示されるのですが、これを表示しない、あるいは文章を変更する方法はあるのでしょうか? > > > > > --------------------------------------------------- > 矢野 勉(やの つとむ) > 電子メール:benbrand_at_mac.com > --------------------------------------------------- > > _______________________________________________ > Wicket-ja-user mailing list > Wicket-ja-user @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user > -- 静岡大学大学院 情報学研究科 情報学専攻 修士課程 岸 弘倫 http://d.hatena.ne.jp/Kishi/ From benbrand @ mac.com Tue Jul 29 03:37:56 2008 From: benbrand @ mac.com (Tsutomu Yano) Date: Tue, 29 Jul 2008 03:37:56 +0900 Subject: [Wicket-ja-user 195] =?iso-2022-jp?b?V2lja2V0GyRCSlk2LzJxOzIyQz5lOEIkSyREJCQkRjk5GyhC?= =?iso-2022-jp?b?GyRCPzckNyReJDckPyEjGyhC?= Message-ID: <3639B241-A851-42C6-8F80-D1A0387D1044@mac.com> 矢野です。 第1回Wicket勉強会ですが、悩みましたが結局発表者を除く上位30名に決めました。細かいことは下記ページを ご覧ください。 http://www.javelindev.jp/kaigi/first 今回はこんなに集まるとは思ってなかったので、ドタバタした結果不公平な部分もあるようにも思いますが お許しください。 あと、上位30名から外れていて、地方から東京まできて参加しようと思っている方は benbrand at mac.com までご一報ください。あまり数が多くないようであれば、一応考慮するつもりです。 (これにより30名の人に影響はないです。あくまでプラスできそうならプラスする感じで)。 上位30名がわかりやすいように、集計ページを用意しました。 http://www.javelindev.jp/kaigi/total 一般参加者一覧の上位30名だと考えてください。 余談ですが、マイクとスピーカは用意できそうです。 --------------------------------------------------- 矢野 勉(やの つとむ) 電子メール:benbrand_at_mac.com --------------------------------------------------- From benbrand @ mac.com Thu Jul 31 16:42:07 2008 From: benbrand @ mac.com (=?ISO-2022-JP?B?IhskQkxwTG4bKEIgGyRCSlkbKEIi?=) Date: Thu, 31 Jul 2008 16:42:07 +0900 Subject: [Wicket-ja-user 196] =?iso-2022-jp?b?GyRCQmgjMTJzGyhCV2lja2V0GyRCSlk2LzJxJEskND1QGyhC?= =?iso-2022-jp?b?GyRCQEokNSRsJGtKfSRYGyhC?= Message-ID: <115820569669043383575245082661969832979-Webmail2@me.com> 矢野です。 第1回Wicket勉強会に出席される方向けのご連絡です。 ・会場について 募集ページからXarts(エクスアーツ)株式会社様東京オフィスの地図へのリンクを張っています。 ただ外からはわかりづらいかもしれません。 ガソリンスタンドと不動産屋さんにはさまれたところにビルへの入り口があります。 迷った方は070-5664-6664(矢野)にご連絡ください。 http://www.javelindev.jp/kaigi/first ・当日は可能ならば名刺をお持ちください。 出席者の方は、オフィスのセキュリティの関係上お名前と電話番号を頂くことになります。 もし名刺があれば記入などが必要なく手早く手続きを行えるため、名刺を持っている方は 当日お持ちください。 以上、よろしくお願いします。 --------------------- 矢野 勉(やの つとむ) benbrand @ mac.com