- PR -

自作のtaglibの値変換について

1
投稿者投稿内容
未記入
常連さん
会議室デビュー日: 2007/07/18
投稿数: 26
投稿日時: 2008-09-17 23:00
こんばんは。

現在、Struts+JSPでWEBアプリを作成していますが、
JSPのTaglibでは提供していない自前のTaglibを作成しています。

そこで、普通に値をセットするだけなら問題ないのですが、
スクリプトレットなどで変数にした状態にした場合、
変数の値ではなく、変数名が値に入ってきます。

例:
<html:MyTagLib value="1" />
の場合は、MyTagLibのvalueに1がセットされています。

不具合の例:
<% Integer num = 1 %>
<html:MyTagLib value="<%=num%>" />

とすると、valueに<%=num%>という値が入ってきます。

TagLib側で、何か変換をかけてやる必要があると思うのですが、
実際どのように行うのでしょうか?


かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2008-09-17 23:59
TLDにrtexprvalue属性を設定していますか?
http://www.javaroad.jp/servletjsp/sj_jsp14.htm
が参考になるかと思いますが、
rtexprvalueがfalseの属性にスクリプトレットを指定した場合、
その内容が丸ごと設定され、
trueの場合はスクリプトレットを評価した結果が設定されます。
未記入
常連さん
会議室デビュー日: 2007/07/18
投稿数: 26
投稿日時: 2008-09-20 09:53
かつのりさん

返答が遅くなりすいません。
該当の項目をTLDにセットすることで、期待していた動作になりました。

ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)