在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()方法中,我将电子邮件设置为null.但是当页面呈现时,电子邮件字段的值与最初输入的完全相同.
有没有办法清除此字段一次并触发事件?
干杯
戴夫
解决方法
这与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...