如何在Stripes中预填充表单?

时间:2014-08-07 01:04:14

标签: java stripes

我有一个使用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() {
        ...
    }
}

2 个答案:

答案 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;
}