Struts中的validator如何用

骇客归来 2006-07-17 02:17:57
我按照网上说的配置了struts-config,validator.xml可是页面验证根本没反应,我不知道是哪里出了问题,还请高手指教。谢谢。

validator.xml配置:
<formset>
<form name="vaForm">
<field property="username"
depends="required">
<arg0 key="lbl.username"/>

</field>
</form>
</formset>
struts-config.xml配置

<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />
<set-property property="stopOnFirstError" value="true" />
</plug-in>


VaForm.java

public class VaForm extends ValidatorForm {

private String password;

private String username;

public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
return null;
}

public void reset(ActionMapping mapping, HttpServletRequest request) {
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}

public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

}

va.jsp

<html>
<head>
<title>JSP for vaForm form</title>
</head>
<body>
<logic:messagesPresent>
<bean:message key="errors.header" />
<ul>
<html:messages id="error">
<li>
<bean:write name="error" />
</li>
</html:messages>
</ul>
<hr>
</logic:messagesPresent>
<html:errors />
<html:form action="/va">
<bean:message key="lbl.username" />
<html:text property="password" />
<html:errors property="password" />
<br />
<bean:message key="lbl.password" />
<html:text property="username" />
<html:errors property="username" />
<br />
<html:submit />
<html:cancel />
</html:form>
</body>
</html>
请高手指教还需要做什么地方吗?如果可以,能把你的实现发到我的邮箱吗?(everhow[at]163.com)
...全文
128 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
hidi7211 2006-07-17
  • 打赏
  • 举报
回复
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
return null;
}
这个方法不对.

public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
if(要验证){
ActionErrors errors = super.validate(mapping, request);
return errors;
}else{
return null;
}
}
lbx19822004 2006-07-17
  • 打赏
  • 举报
回复
注意这里:
<html:form action="/va"> 你请求了 /va 这个Action,那就去看看你的Struts_conf.xml配置
中name属性是否一致:<action name="/va"... ...></action>

如果这边没有错的话,在这个标签中加个属性<html:form action="/va"> 如下:
<html:form action="/va" property="属性名"> 注意,这里的属性名一定要和你的ActionForm文件的名称相同!

要是还没搞定的话,继续等待高人吧。

kingdoom 2006-07-17
  • 打赏
  • 举报
回复
STRUTS自带得验证还真不常用

67,542

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧