[Seasar-user:13198] Re: [Kumu] executeTeedaAjaxを複数回実行したとき
[E-MAIL ADDRESS DELETED]
[E-MAIL ADDRESS DELETED]
2008年 3月 9日 (日) 01:07:05 JST
佐藤さん
米林です。
表題の件、対応しました。
https://www.seasar.org/issues/browse/TEEDA-449
この修正は、次のバージョンで反映されます。
よろしくお願いします。
----- Original Message -----
From: "Mitsutaka Sato" <[E-MAIL ADDRESS DELETED]>
Sent: Wednesday, March 05, 2008 5:12 PM
> 米林様、
> レスが大変遅くなってしまってすみません。
>
> 本件、以下のようなサンプルコードで確認できるかと思います。
> よろしくお願いします。
>
> ■HTML
> <script language="JavaScript" type="text/javascript">
> //<![CDATA[
>
> function m04_hogePage_ajaxGetAAAOptions(res){
> alert(res[0].label);
> var select = $i('aaa');
> for(var i=0; i<res.length; i++) {
> alert(res[i].label);
> select.options[i+1] = new Option(res[i].label,res[i].value);
> }
> }
>
> function m04_hogePage_ajaxGetBBBOptions(res){
> alert(res[0].label);
> var select = $i('bbb');
> for(var i=0; i<res.length; i++) {
> alert(res[i].label);
> select.options[i+1] = new Option(res[i].label,res[i].value);
> }
> }
>
> function doajax() {
> var p = {ccc:'1'};
> Kumu.Ajax.executeTeedaAjax(m04_hogePage_ajaxGetAAAOptions, p);
> //Kumu.Ajax.executeTeedaAjax(m04_hogePage_ajaxGetAAAOptions,
> {ccc:'1'});
> Kumu.Ajax.executeTeedaAjax(m04_hogePage_ajaxGetBBBOptions, p);
> //Kumu.Ajax.executeTeedaAjax(m04_hogePage_ajaxGetBBBOptions,
> {ccc:'1'});
> }
>
> //]]>
> </script>
> </head><body>
> <span id="fuga">ふが</span>
> <form id="hogeForm">
> <input type="submit" id="doAction"/>
> <input type="button" value="ajax" onclick="doajax()"/>
>
> <select id="aaa">
> <option>選択してください</option>
> </select>
>
> <select id="bbb">
> <option>選択してください</option>
> </select>
>
>
> </form>
> </body>
> </html>
>
> ■Pageクラス
> public class HogePage {
>
> private static final Log log = LogFactory.getLog(HogePage.class);
>
> @PageScope
> public BigDecimal fuga;
> public String aaa;
> public String bbb;
> public String ccc;
>
>
> public Class initialize() {
>
> log.debug("init:" + fuga);
>
> fuga = new BigDecimal("11.2");
>
> return null;
> }
>
> public Class prerender() {
>
> log.debug("prerender:" + fuga);
>
> return null;
> }
>
> public Class doAction() {
>
> fuga = new BigDecimal("22.3");
>
> log.debug("doAction:" + fuga);
> return null;
> }
>
> public String ajaxGetAAAOptions() {
> log.debug("aaaOptions called: " + ccc);
> return "[{label:'aaaHoge', value:'1'}, {label:'aaaFoo',
> value:'2'}]";
> }
>
> public String ajaxGetBBBOptions() {
> log.debug("bbbOptions called: " + ccc);
> return "[{label:'bbbHoge', value:'1'}, {label:'bbbFoo',
> value:'2'}]";
> }
>
> public String getLayout() {
> return null;
> }
>
> }
>
> # 別件の検証も含まれていたので無駄なプロパティも入っていますが。。
>
> よろしくお願いします。
>
> 2008/2/13 <[E-MAIL ADDRESS DELETED]>:
>
>> 米林です。
>>
>> > Kumu.Ajax.executeTeedaAjax を複数回呼び出すとき、引数に渡すオブジェクトが同じ
>> だと
>> > 1つ目のメソッドが何回も呼ばれるという現象が起こりました。
>>
>> 報告ありがとうございます。
>>
>> > このようにすると、fuga1が3回実行されました。
>>
>> 1点、確認させてください。
>> この3回実行された fuga1 も念のため、見せて頂けますか?
>>
>> よろしくおねがいします。
>>
>> ----- Original Message -----
>> From: "Mitsutaka Sato" <[E-MAIL ADDRESS DELETED]>
>> Sent: Wednesday, February 13, 2008 6:39 PM
>>
>> > 佐藤と申します。
>> > いつもお世話になっております。
>> >
>> > Kumu.Ajax.executeTeedaAjax を複数回呼び出すとき、引数に渡すオブジェクトが同じ
>> だと
>> > 1つ目のメソッドが何回も呼ばれるという現象が起こりました。
>> >
>> > =================
>> > var opts = {foo: '1', bar: '2'};
>> > Kumu.Ajax.executeTeedaAjax(hogePage_ajaxFuga1, opts);
>> > Kumu.Ajax.executeTeedaAjax(hogePage_ajaxFuga2, opts);
>> > Kumu.Ajax.executeTeedaAjax(hogePage_ajaxFuga3, opts);
>> > =================
>> >
>> > このようにすると、fuga1が3回実行されました。
>> >
>> >
>> > Kumu.Ajax.executeTeedaAjax(hogePage_ajaxFuga1, {foo: '1', bar:
>> '2'});
>> > Kumu.Ajax.executeTeedaAjax(hogePage_ajaxFuga2, {foo: '1', bar:
>> '2'});
>> > Kumu.Ajax.executeTeedaAjax(hogePage_ajaxFuga3, {foo: '1', bar:
>> '2'});
>> >
>> > このようにしたところ、ちゃんとfuga1,fuga2,fuga3が実行されました。
>> >
>> > 不具合なのか仕様なのかわかりませんでしたがひとまずご報告いたします。
>> > teeda-ajax-1.0.11-SP2 です。
>>
>> ---
>> 米林 正明
>> [E-MAIL ADDRESS DELETED]
---
米林 正明
[E-MAIL ADDRESS DELETED]
Seasar-user メーリングリストの案内