我正在使用Struts2文本标签来获取转换后的值。
因此,我有以下声明:
<s:text name="a"/>
我在属性文件中没有任何键
'a'
,但是在操作中,我有一个名称为a
的对象。发生的是s:text呈现的值是对象实例的类名(
package.a@xyz
)!这正常吗?就我对Struts2的了解而言,如果未找到具有该键的属性,则呈现的值将为键(文本标签名称属性)。有没有发生过这件事?
最佳答案
我认为这很正常,因为Struts2会解析OGNL表达式的属性,并且表达式评估的结果将用作消息键。但是文档说searchValueStack
应该用来防止在值堆栈中搜索。哪个更好地由您决定,但是我更喜欢使用<s:property value="getText('a')"/>
作为替代。
关于java - Struts 2文本标签怪异行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26638974/