我有一个这样的类:
public class Foo {
public boolean isValid() {
return false;
}
}
在我的JSP文件中,我想在测试条件中使用isValid
方法:
<s:bean name="com.Foo" var="bar"></s:bean>
<s:if test="%{bar.valid == false}">
<p>hello</p>
</s:if>
但它不起作用。我做错了什么?
上下文变量由#
引用,但您使用了没有数字符号的名称bar
。
<s:if test="%{#bar.valid == false}">
<p>hello</p>
</s:if>
查看OGNL语言指南中的变量引用。
OGNL有一个简单的变量方案,它允许您存储中间值结果并再次使用它们,或者只是命名事物来表达更容易理解。OGNL中的所有变量对整体来说都是全局的表达式。使用前面的数字符号来引用变量它的名字,像这样:
#var