问题描述
<s:set value="#request.actionMessage" name="obj" scope="request"></s:set>alert('<s:property value="#request.obj"/>');alert('${obj}');前面几行都是正确的,我是想通过obj这个参数去国际化配置文件中捞值下面的写法在2.18中报错,不允许标签中嵌套<s:property value="%{getText('${obj}')}" />;下面的写法也获取不到值,不晓得为什么<s:property value="%{getText('#request.obj')}" />;
解决方案
<s:property value="%{getText('${obj}')}" />; 报错原因:%{}和${}不属于同类的标签,${}应该是el标签,在struts标签中不可以嵌套<s:property value="%{getText('#request.obj')}" />; 取不到值的原因:#request.obj在%{}中被当成了名称取值了你使用<s:property value="%{getText(obj)}" />; 试试
解决方案二:
<s:property value="%{getText('#obj')}" />; 试试看。
时间: 2024-10-31 10:49:10