一个关于 Structs 校验器失效的故事
来源:互联网 发布:中山大学网络教育招生 编辑:程序博客网 时间:2024/06/05 14:59
最近学习 Java EE,用到了 Structs 框架,准备写一个小的 Demo 来展示 validation。
问题描述:
这是由一个小小的警告引发的故事:
在写用户表单提交验证时创建了一个 LoginAction-validation.xml:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE validators PUBLIC"-//OpenSymphony Group//XWork Validator 1.0.3//EN""http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd"><validators> <field name="username"> <field-validator type="requiredstring"> <param name="trim">true</param> <message>请输入用户名</message> </field-validator> ...
然后看见一个小小的警告标识,具体内容如下:
The file cannot be validated as the XML definition “http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd” that is
specified as describing the syntax of the file cannot be located.
上网看看,发现这个http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd
已经没用了,取而代之的是 http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd
,因为 xwork 是struts的,而 struts 是 apache 的。
然而我并没有替换,因为仅仅是一个不起眼的警告,而且还出现在 xml 文件,有谁会注意到呢。
结果就是 validation 无法校验,直接跳到了业务代码。
解决方案:
如上所述,替换那个 dtd,然后重启 tomcat 服务器就可以正常 validation 了。
总结体会:
故事算是讲完了,其中有些问题还是值得我们去思考的,比如这里的 dtd 规范。计算机系统的正常运行是建立在很多统一的协议或规范上的。我们写程序有规范,这样程序员之间的交流会更顺畅;计算机网络有协议,这样数据在不同的计算机之间可以实现共享;计算机体系结构内部也有规范,总线给内存一个写信号,内存就开始接收数据,它可不管数据来源于哪里;
换个角度说就是,理解协议和遵守规范有助于我们构建良好的知识体系;反之,如果想另辟蹊径,则改变现有协议或规范即可。
- 一个关于 Structs 校验器失效的故事
- 一个关于兔子的故事
- 一个关于Action的故事
- 一个关于猪的故事
- 一个关于中国菜的故事
- 关于一个小和尚的故事
- 一个关于 nolock 的故事
- structs校验问题
- Structs 2 注解校验
- 使用struts2拦截器,对session失效的校验
- 使用struts2拦截器,对session失效的校验
- struts2-validate内置校验器失效的解决方法
- 一个真室的故事--关于亲情
- 一个真实的故事--关于职业
- 一个关于C#的睡前故事
- 一个真实的故事--关于职业
- 一个关于博士的小故事
- 关于“需求分析”的一个故事
- 为ElasticSearch添加HTTP基本认证
- Android-Handler复习(一)
- 1006
- GCD 之 dispatch_benchmark 测量指定代码块执行时间
- 源代码管理的基本操作
- 一个关于 Structs 校验器失效的故事
- PHP常用字符串函数
- Centos7修改主机名
- html5的自定义data-*属性和jquery的data()方法的使用示例-属性-data-方法
- 【杭电oj】2546 - 饭卡(01背包)
- 基于功能安全标准IEC61508的嵌入式设计流程
- 进程间的几种通信方式
- nyoj 47 过河问题
- 杂