[Seasar-user:3952] Re: [S2JSF]forEachで、動的に複数のHTMLをinsertしたい。

cero [E-MAIL ADDRESS DELETED]
2006年 6月 24日 (土) 07:45:33 JST


せろ@自己レスです。

> forEachタグ内では、insertタグのm:src="#{e}"が解釈されないようです。
> その前の行に書いた <span m:value="#{e}"/> は、問題なく解釈されます。

この件について、ソースを読みながら調べてみました。


org.seasar.jsf.processor.TagProcessorImpl#processTagメソッドにて、

・225行目:processChildrenを実行。
 - InsertProcessorの解釈は、ここで行なわれる。

・226行目:tag.doEndTagの実行
 - forEachが値をrequestへセットし、子要素をレンダリング。
 - span m:valueの解釈は、ここで行なわれる。

という順序で行なわれているようですね。


なので、
doEndTagで呼ばれるspanタグのm:value属性は
(forEachによる)バリューバインディングが適用されるが、
processChildrenで呼ばれるinsertタグのm:src属性は、
(forEachによる)バリューバインディングは適用されない、
ということですか。


うーん、原因が分かった所で、対策が立たない (^^;




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