[mayaa-user:689] Re: struts2のカスタムタグについて

suga [E-MAIL ADDRESS DELETED]
2008年 9月 8日 (月) 08:49:32 JST


suga です。

2008/9/7 M.Takahashi <[E-MAIL ADDRESS DELETED]>:
> Struts2 の property タグはtldファイルが
> <body-content>empty</body-content>
> となっているので
> JSPに<s:property value="%{message}">あいうえお</s:property>
> と書くと実行時にエラーになりますが、逆にボディを評価しないので
> <body-content>empty</body-content>のときは、
> そのままボディが出力されるということでしょうか?

あー、なるほど。
Mayaa は body-content を無視していて、doStartTag の戻り値で判定
しているのですが、SKIP_BODY ではなく EVAL_BODY が返って
きているためにボディを出力します。
TLD で empty を指定しているから渡されることがない、という前提の
実装なのですね。
そうであれば、Mayaa 側で body-content を見るようにするのが
良さそうです。

ダミー表示を考えると例外にするのではなく SKIP_BODY 扱いに
する方が良いでしょうね。


>> Mayaa の記述でこの問題を避けるなら、一番楽なのは下の書き方だと思います。
>> <m:with m:id="message2"><s:property value="%{message}" /></m:with>
>
> なるほど、このようなテクニック?で問題が回避できるわけですね。

はい、ひとまずはこの形で回避してください。


-- 
suga ( [E-MAIL ADDRESS DELETED] )


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