为什么 <s:if test> 标记无法正常工作?
Why <s:if test> tag isn't working correctly?
我已经在会话中设置了一个值(某物),现在我不能在 struts if tag
中使用它
<s:if test=%{#session.key == 'something'}>
// 'some code'
</s:if>
'some code' 永远不会运行..
但我可以从 属性 标记中会话中的相同键正确地获得该特定值。
<s:property value="#session.key" />
有什么帮助吗?
谢谢。
终于找到解决方案了。
问题是:会话对象中的键不是字符串,应该转换为字符串。
我找到的解决方案是:在单独的 class 中使用 StrutsTypeConverter
作为该值,然后覆盖两个方法 convertToString
、convertFromString
并定义 xwork-conversion.properties
文件在 WEB-INF/classes
文件夹(配置)下并将 key = convertorClassName
放入其中。
所以 struts 会在需要时自动进行转换。
如果你有更简单的类型转换解决方案,我会很高兴=)
谢谢!
我已经在会话中设置了一个值(某物),现在我不能在 struts if tag
中使用它<s:if test=%{#session.key == 'something'}>
// 'some code'
</s:if>
'some code' 永远不会运行.. 但我可以从 属性 标记中会话中的相同键正确地获得该特定值。
<s:property value="#session.key" />
有什么帮助吗?
谢谢。
终于找到解决方案了。 问题是:会话对象中的键不是字符串,应该转换为字符串。
我找到的解决方案是:在单独的 class 中使用 StrutsTypeConverter
作为该值,然后覆盖两个方法 convertToString
、convertFromString
并定义 xwork-conversion.properties
文件在 WEB-INF/classes
文件夹(配置)下并将 key = convertorClassName
放入其中。
所以 struts 会在需要时自动进行转换。
如果你有更简单的类型转换解决方案,我会很高兴=)
谢谢!