先说一下开发环境: struts1.x + commontemplate。
有这么一个模版文件: test.ctl,里面有这样的内容:
其中 zoomValue 是 parameter 中已经存在的变量,context["session"].zoomSetValue 是一个 Double 型的变量。
运行的结果,是 zoomValue.class = java.lang.String,并不是所期望的 Double。
为什么呢?? 把代码查了又查,看了又看,也没发现个所以然来。
终于,再过了一个下午之后,我终于发现了:[b]zoomValue 是 parameter 中已经存在的变量[/b]!!
parameter 中是只能放字符串的!!
真是悔恨哪!
所以,用 var 指令代替就可以了:
运行的结果,是 zoomValue.class 为 Double。
所以,请大家使用 set 指令的时候一定要仔细。
有这么一个模版文件: test.ctl,里面有这样的内容:
$set{zoomValue = context["session"].zoomSetValue}
$log{"####################### zoomValue = " + zoomValue.class}
其中 zoomValue 是 parameter 中已经存在的变量,context["session"].zoomSetValue 是一个 Double 型的变量。
运行的结果,是 zoomValue.class = java.lang.String,并不是所期望的 Double。
为什么呢?? 把代码查了又查,看了又看,也没发现个所以然来。
终于,再过了一个下午之后,我终于发现了:[b]zoomValue 是 parameter 中已经存在的变量[/b]!!
parameter 中是只能放字符串的!!
真是悔恨哪!
所以,用 var 指令代替就可以了:
$var{zoomValue = context["session"].zoomSetValue}
$log{"####################### zoomValue = " + zoomValue.class}
运行的结果,是 zoomValue.class 为 Double。
所以,请大家使用 set 指令的时候一定要仔细。