我有一个使用Action bean的Stripes表单。 我可以在没有任何问题的情况下存储数据,但我没有找到如何预填充表单的数据。 我简化了我的例子,以显示什么不起作用。 @Before下的代码没有任何影响:数据不会进入表单。 我应该如何管理这种方法?
myform.jsp:
...
<stripes:form beanclass="UserActionBean">
...
<stripes:text name="user" />
<stripes:submit name="store" value="Save" />
...
</stripes:form>
...
的ActionBean:
public class UserActionBean implements ActionBean {
private String user;
@Before
public void init() {
user = "myuser";
}
@DefaultHandler
public Resolution store() {
...
}
}
答案 0 :(得分:0)
您需要Stripes的公共getter和setter才能读取值。
虽然通常我会使用@DefaultHandler
作为get,然后为保存创建一个新的处理程序,例如@HandlesEvent(value = "save") public Resolution save () {...
答案 1 :(得分:0)
这可能很粗糙,但是我使用了像Scary Wombat这样的getter,并在ActionBean中初始化了变量。或者,您可以在执行初始页面显示的处理程序中设置其值。
@Validate(required = true, on = {
"proceed"
})
private String tumblrUrl= "xyz.tumblr.com";
...
public String getTumblrUrl() {
return this.tumblrUrl;
}
public void setTumblrUrl(final String tumblrUrl) {
this.tumblrUrl = tumblrUrl;
}