简介
我正在使用Stripes Framework开发应用程序。 Stripes有可能声明非形式变量,可以使用getter和setter在html和ActionBean中访问直接变量。
ActionBean中的示例
class UserActionBean implements ActionBean {
@Validate(...)
int userid;
@Validate(...)
int name;
int getUserid() { ... }
int setUserid(int userid) { ... }
}
HTML中的示例
<input type="text" name="userid" ... />
但是,这种方法需要许多代码逐个声明变量。
为了避免这种情况,我创建了一个变量 Map post = new HashMap&lt;&gt;()来接受从html到ActionBean的所有输入,如下例所示:
<input type="text" name="post['userid']" ... />
并在ActionBean上访问
Integer userid = Integer.parseInt(String.valueOf(post.get("userid")));
不幸的是,我无法使用Stripes Validation来实现这种方法。 post.get(“userid”)的示例内容无法验证。为了启用验证,我正在使用JQuery验证。
问题
我不仅需要提供JQuery验证,还需要提供服务器验证。我搜索Stripes框架(github)以扩展验证,但仍然不知道构建验证扩展以满足我的要求。
目前的替代方案,我建立自己的服务器验证,而不是跟随条纹。
请建议我在我的案例中扩展Stripes Validation。提前致谢。
答案 0 :(得分:0)
我所做的是设置validate
方法,例如
@HandlesEvent(value = "validate")
public Resolution validate () throws ResponseException {
// check validation, if failed throw Exception
// else
return null;
}
这将首先从Jquery.ajax
调用,然后在jquery
成功块调用真实方法