如何使用Stripes清除bean字段

时间:2010-06-08 15:06:09

标签: java web-applications stripes

在JSP中,我有以下字段:

<stripes:text name="email"/>

此字段位于我的操作bean(代码段)中:

    public class CreateClaim implements ActionBean {

    private String email;

    public void setEmail(String email) {
        this.email = email;
    }

    public String getEmail() {
        return email;
    }

    public Resolution alc(){
        email = "poodle";
        return new ForwardResolution("aForward.jsp");
    }

}

在alc()方法中我将email设置为null。但是,当页面呈现时,电子邮件字段的值与最初输入的完全相同。 有没有办法清除此字段一次并触发事件?

干杯

戴夫

1 个答案:

答案 0 :(得分:5)

这与Stripes框架的人口策略有关。默认情况下,它具有请求第一策略(由于与早期版本的向后兼容性),但我总是将其更改为bean first population strategy

只需编辑 web.xml 即可为Stripes过滤器添加init-param:

<filter>
  <filter-name>StripesFilter</filter-name>
    <filter-class>net.sourceforge.stripes.controller.StripesFilter</filter-class>

    <init-param>
      <param-name>PopulationStrategy.Class</param-name>
      <param-value>
        net.sourceforge.stripes.tag.BeanFirstPopulationStrategy
      </param-value>
    </init-param>
..etc...