struts2里this.addFieldError怎么用?
Action里validate()方法publicvoidvalidate(){Stringusername=vo.getUsername();Stringpasswor...
Action里validate()方法
public void validate() {
String username = vo.getUsername();
String password = vo.getPassword();
if(username==null || username.trim().length()==0) {
this.addFieldError("vo.username", "用户名不能为空");
}
if(password==null || password.trim().length()==0) {
this.addFieldError("vo.password", "密码不能为空");
}
}
验证为空,返回到input,然后我再次提交,填写了数据,但还是提示为空,还是返回input,怎么回事?
页面文本框名字是用的vo.username
第一次提交,没填写数据,验证为空,跳转到input,再次提交时填写了数据,能接收到数据,但还是提交到input了,我怀疑是this.addFieldError的问题,第一次提交为空所以执行了设置FieldError,第二次提交时它还是有值的,第一次的值没有清空 展开
public void validate() {
String username = vo.getUsername();
String password = vo.getPassword();
if(username==null || username.trim().length()==0) {
this.addFieldError("vo.username", "用户名不能为空");
}
if(password==null || password.trim().length()==0) {
this.addFieldError("vo.password", "密码不能为空");
}
}
验证为空,返回到input,然后我再次提交,填写了数据,但还是提示为空,还是返回input,怎么回事?
页面文本框名字是用的vo.username
第一次提交,没填写数据,验证为空,跳转到input,再次提交时填写了数据,能接收到数据,但还是提交到input了,我怀疑是this.addFieldError的问题,第一次提交为空所以执行了设置FieldError,第二次提交时它还是有值的,第一次的值没有清空 展开
6个回答
展开全部
希望我说的这么一点东西能给楼主一定的帮助
我记得在学转换器 的时候,有一个框架提供的转换,另外还有自己设置的转换方式
不知道楼主是用的是哪个
另外估计楼主应该使自己配置的吧,
抛出的是TypeConversionExceptio的异常吧
下面的是在学的时候,写的,现在有点既不清楚了
沾上了
看看能否帮助你,要是没什么用,那么就希望吸引来更多的大侠们来共同解决
private Circle parseCircle(String userString) throws TypeConversionException{
Circle circle = null;
int radiusIndex = userString.indexOf("r") + 1;
if(!userString.startsWith("C:r"))
throw new TypeConversionException("Invalid Syntax");
int radius;
try{
radius = Integer.parseInt(userString.substring(radiusIndex));
}catch(NumberFormatException e){
throw new TypeConversionException("Invalid Integer Value for Radius");
}
circle = new Circle();
circle.setRadius(radius);
return circle;
}
我记得在学转换器 的时候,有一个框架提供的转换,另外还有自己设置的转换方式
不知道楼主是用的是哪个
另外估计楼主应该使自己配置的吧,
抛出的是TypeConversionExceptio的异常吧
下面的是在学的时候,写的,现在有点既不清楚了
沾上了
看看能否帮助你,要是没什么用,那么就希望吸引来更多的大侠们来共同解决
private Circle parseCircle(String userString) throws TypeConversionException{
Circle circle = null;
int radiusIndex = userString.indexOf("r") + 1;
if(!userString.startsWith("C:r"))
throw new TypeConversionException("Invalid Syntax");
int radius;
try{
radius = Integer.parseInt(userString.substring(radiusIndex));
}catch(NumberFormatException e){
throw new TypeConversionException("Invalid Integer Value for Radius");
}
circle = new Circle();
circle.setRadius(radius);
return circle;
}
展开全部
检查下表单中文本框的名字和action中属性是否对应,是否少了相应的set、get方法
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public void validate() {
Action类里的所有方法都有个String类型返回值。
你这个不是返回到input,而是根本没有返回到任何页面,一直停留在当前页面。
至少是个public String validate() {}
Action类里的所有方法都有个String类型返回值。
你这个不是返回到input,而是根本没有返回到任何页面,一直停留在当前页面。
至少是个public String validate() {}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Struts最重要的 就是execute() 这个方法你用它就必须返回 return
public String execute() throws Exception {
return “ ”;
}
public String execute() throws Exception {
return “ ”;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果在jsp页面用的struts标签的话,是会默认带出本次的值的。
String username = vo.getUsername();
我觉得有点多余,在struts框架,会自动调用get、set方法。
password.trim().我没有用过,应该password.length就可以吧
String username = vo.getUsername();
我觉得有点多余,在struts框架,会自动调用get、set方法。
password.trim().我没有用过,应该password.length就可以吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询