解决struts2中validation.xml配置无效的问题
来源:互联网 发布:酷音铃声mac版本 编辑:程序博客网 时间:2024/04/30 14:36
解决struts2中validation.xml配置无效的问题,我使用了xml的验证,却始终发现无法生效,后面发现才是xml的头文件的格式问题,修改了一下就好了。
成功的xml
<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd"><validators> <field name="username"> <field-validator type="requiredstring"> <message>You must enter a value for bar.</message> </field-validator> </field></validators>
主要是<!DOCTYPE validators PUBLIC
"-//Apache Struts//XWork Validator 1.0.2//EN"
"http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd">
这句话的格式要正确,否则就无法生效了。
如何利用validation.xml进行验证的步骤如下:
1、写一个ValideAction.java,也就是处理业务逻辑的类
package com.test.action;import com.opensymphony.xwork2.ActionSupport;import com.opensymphony.xwork2.ModelDriven;import com.test.model.Contact;import com.test.model.User;public class ValideAction extends ActionSupport implements ModelDriven<User>{/** * */private static final long serialVersionUID = 1L;private User user;private String username;private Contact contact;public Contact getContact() {return contact;}public void setContact(Contact contact) {this.contact = contact;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}private String password;public String execute(){//System.out.println(user.getContact().getPhone());return SUCCESS;}@Overridepublic User getModel() {// TODO Auto-generated method stubif (null == user) { return user = new User(); } return user;}}
2、编写一个验证文件,ValideAction-validation.xml
<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd"><validators> <field name="username"> <field-validator type="requiredstring"> <message>You must enter a value for bar.</message> </field-validator> </field></validators>
3、对应的JSP页面,注意,我这里只用了一个username作为测试判断的例子,其他字段例如password没有用来测试。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@ taglib uri="/struts-tags" prefix="s"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title></head><body><!-- 这个地方是用来显示错误信息 --><s:fielderror/><form action="data.action" method="post">用户名:<input type="text" name="username"><br>密码:<input type="password" name="password"><br>-------------------联系方式----------------<br>手机:<input type="text" name="contact.phone"><br>地址:<input type="text" name="contact.address"><br>邮箱:<input type="text" name="contact.email"><br><input type="submit" name="ok"><br></form></body></html>
4、struts.xml中配置action
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd"><struts> <!-- 采用注解的方式 --> <constant name="struts.enable.DynamicMethodInvocation" value="true" /> <constant name="struts.devMode" value="true" /> <package name="default" namespace="" extends="struts-default"> <!-- 正确和错误的分别跳转,input是在验证失败后会跳转的页面 --> <action name="data" class="com.test.action.ValideAction"> <result name="success">/result.jsp</result> <result name="input">/login.jsp</result> </action> </package> <!-- Add packages here --></struts>
5、最终显示JSP页面就是上面那个文件,主要用<s:fielderror/>来显示错误信息
6、文件目录结构
输出结果
0 0
- 解决struts2中validation.xml配置无效的问题
- Struts2 的validation.xml验证配置
- [struts2]struts2的validation.xml配置不起作用的常见原因
- validation.xml的配置
- validation.xml的配置
- struts2 下配置validation.xml出现的异常
- Struts2配置好的LoginAction-Validation.xml不管用
- 关于struts2中Struts2.xml的配置小问题
- Disable XML validation in Eclipse - 解决validation xml慢问题
- 关于解决struts2中xml没有提示的问题
- struts2中使用xml进行validation验证
- Struts1.2中validation.xml验证文件的配置
- 关于Struts2 在web.xml中配置改变的问题
- struts2中struts2.xml的配置
- struts2的表单验证validation.xml
- Struts2使用validation.xml验证时,如何显示字段的标签(未解决)
- Struts2文件上传在配置fileUpload拦截器中设置文件大小无效的问题
- SSH整合struts2中validation问题
- 能否一起做个学习C语言软件?
- 关于N个数1--N数顺序入栈,有多少种出栈方式的问题
- 王爽汇编语言程序设计总结
- MySQL日期数据类型、MySQL时间类型使用总结,需要的朋友可以参考下。【转】
- 写健壮的java代码读后感
- 解决struts2中validation.xml配置无效的问题
- HIVE 0.11版本的bug
- git学习(4)---工作流
- Windows多线程基础(6):线程间通信1(互锁函数、CriticalSection)
- JQuery 实现锚点链接之间的平滑滚动
- 黑客入门需要了解的8个简洁方便的安全工具
- 树莓派学习笔记(5):成功实现NAS家庭服务器(流媒体播放、文件共享及下载机)
- vijos P1790拓扑编号
- 浏览器新实用功能开发研究:单页富客户端应用的会话/视图状态复制及远程同步功能