如何在Struts 2中测试bean属性?

时间:2016-10-14 15:27:54

标签: jsp struts2 ognl

我有一个这样的课程:

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>

但它不起作用。我做错了什么?

1 个答案:

答案 0 :(得分:2)

上下文变量由#引用,但您使用的名称bar没有数字符号。

<s:if test="%{#bar.valid == false}">
    <p>hello</p>                    
</s:if>

查看OGNL语言指南的Variable References

  

OGNL有一个简单的变量方案,可以让你存储中间件   结果并再次使用它们,或只是命名事物来表达   更容易理解。 OGNL中的所有变量都是全局变量   表达。您可以使用前面的数字符号来引用变量   它的名字,如下:

#var