请教struts2中checkboxlist的验证方式,比较初级

问题描述

页面有一个checkboxlist。比如:<s:checkboxlistlistKey="key"listValue="value"list="#{'0':'张三','1':'李四,'2':'王二','3':'麻子'}"name="users"/>后台处理的action叫Demo.action,在action中接收users的变量定义为:String[]users。现在写Demo的验证文件Demo-validation.xml。请问在这个验证文件中如何写对users的验证?我是这样写的,但不正确........<fieldname="users"><field-validatortype="requiredstring"><message>请选择用户</message></field-validator></field>........在field-validator中的type应该怎样写?望高人指点一下,在线等待

解决方案

解决方案二:
<field-validatortype="required">
解决方案三:
<field-validatortype="required">
解决方案四:
使用<field-validatortype="required">也不行,我在action中接收users的时候是定义的是List。这样写的:List<Integer>users;是不是和这个list有关系?必须用数组?
解决方案五:
users属性在Action定义String类型即可。privateStringusers;users有get/set方法。在用<field-validatortype="required">
解决方案六:
<fieldname="users"><field-validatortype="required"><message>请选择用户</message></field-validator></field>requiedstring只能获取字符串required可以获得intdatelist
解决方案七:
<validatortype="expression"><paramname="expression"><![CDATA[(users!=null&&users.size()>0)]]></param><message>..........</message></validator>
解决方案八:
经调试结论:1。users属性定义:users属性在Action定义String类型即可。privateStringusers;users有get/set方法。2。使用校验器使用<field-validatortype="required">或<field-validatortype="requiredstring">注:这个根据你用的struts2的版本而定,struts2.1.8.1用requiredstring。
解决方案九:
validation.xml的命名规则和放置路径:文件名:-validation.xml就是要验证的Action类的名字。要将此文件放于Class文件相同的目录。如果在Action类在struts配置中有多个action实例(actionname),那么对应某个action的验证文件名规则如下:文件名:--validation.xml例如:UserAction-login-validation.xml(注意:上面的并不是methodname,而是struts.xml中配置的action的name)validation.xml的内容示例:<?xmlversion="1.0"encoding="UTF-8"?>true请填写用户名432用户名长度应在4到32个字符间请填写密码632为了您账号的安全,请设置6个字母以上的密码(最长可设置32个字母)Struts2的验证规则大概有以下数种:required:必填校验器requiredstring:必填字符串校验器int:整数校验器double:双精度浮点数校验器date:日期校验器expression:表达式校验器fieldexpression:字段表达式校验器email:电子邮件校验器url:网址校验器visitor:Visitor校验器conversion:转换校验器stringlength:字符串长度校验器regex:正则表达式校验器具体的使用方法可以GOOGLE,下面举例几种常用的验证规则:常用的验证规则:1。必填检验指定检验失败的提示信息2。必填字符串检验true指定检验失败的提示信息3。整数检验器/浮点检验1150年纪必须在1到150之间4。日期检验1900-01-012050-02-215.字段表达式检验器(要求指定字段满足一个逻辑表达式)(passeqre_pass)密码必须和确认密码相等6.邮件地址校验你的电子邮件地址必须是一个有效的电邮地址7。网址检验你的主页地址必须是一个有效的网址8.字符串长度检验420你的用户名长度必须在4到20之间9.正则表达式检验<![CDATA[(w{4,25})]]>您输入的用户名只能是字母和数组,且长度必须在4到25之间引用来自:http://hi.baidu.com/cnkarl/blog/item/389d5a176c9e2412962b43a5.html我和楼主遇到同样的问题,但是没有找到答案。贡献上面这篇最有意义的吧。另外建议直接在action里写验证,我正准备这样做。

时间: 2024-10-27 18:11:03

请教struts2中checkboxlist的验证方式,比较初级的相关文章

Struts2中图片以base64方式上传至数据库_java

1.页面 这里输入代码 <div> <span id="uploadImg" style="margin:50px;background-color:#ddd;display:inline-block;height:130px;width:200px;"> <span style="color:#bbb;font-weight:600;border:2px #ccc dashed;font-size:20px;text-ali

Struts2中checkboxlist怎么换行? 求代码

问题描述 如题<s:checkboxlistname="selectModules"labelposition="top"list="allFunctions"label="请选择功能"listKey="funcId"listValue="funcName"value="ownedFunctions">如何实现每5个checkbox换一行另外如何能控制每个

asp.net中常用的几种身份验证方式

前言 在B/S系统开发中,经常需要使用"身份验证".因为web应用程序非常特殊,和传统的C/S程序不同,默认情况下(不采用任何身份验证方式和权限控制手段),当你的程序在互联网/局域网上公开后,任何人都能够访问你的web应用程序的资源,这样很难保障应用程序安全性.通俗点来说:对于大多数的内部系统.业务支撑平台等而言,用户必须登录,否则无法访问和操作任何页面.而对于互联网(网站)而言,又有些差异,因为通常网站的大部分页面和信息都是对外公开的,只有涉及到注册用户个人信息的操作,或者网站的后台

C# 中参数验证方式的演变

原文:C# 中参数验证方式的演变 一般在写方法的时候,第一步就是进行参数验证,这也体现了编码者的细心和缜密,但是在很多时候这个过程很枯燥和乏味,比如在拿到一个API设计文档的时候,通常会规定类型参数是否允许为空,如果是字符可能有长度限制,如果是整数可能需要判断范围,如果是一些特殊的类型比如电话号码,邮件地址等,可能需要使用正则表达式进行判断. 通常,我们一般都是在方法开始的地方进行条件判断,然后抛出合适的异常,这是最普通和通用的做法,但是在.NET中,利用一些语言特性和类库,可以使用一些其他的方

请教,Struts2 中对数据库连接使用单例模式

问题描述 我的同事设计了在Struts2中对数据库连接使用单例模式,我问他如果连接只有一个实例,多用户下怎么办:他说Struts2可以确保多线程,我不太懂,这样设计行吗?程序如下:public class DatabaseInteraction { private static Statement m_statement; private static Connection m_connection; private boolean m_stateConnection = false; priv

Struts2中action获取request、response、session的方式

之前用惯struts1.x,那些request啊session之类都是方法自带有的,我们直接调用就可以:而平时公司项目中用到有struts2.x的话,action所继承的BaseAction等底层那些都是人家封装好的,直接继承就可以.现在自己搞个,才知道struts2的request.response.session原来都被隐藏的了,不过struts2提供有两种方式给我们访问.     第一种方式,非IoC(Spring中的控制反转)方式:    /** * File Name:BaseActi

在Web Service中使用Windows验证的方式

很多朋友都知道在Web Service中支持Windows验证.但其实能用好的朋友并不 是特别多,因为有几个特殊之处需要注意 1.在服务端如何配置 这里要注意的是,authentication的mode默认就是windows,但光是设置这个 模式则毫无用处.必须同时设置有关的authorization规则.并且不要光是allow ,最后一定要deny掉所有没有被allow的用户或者组 服务必须发布到IIS服务器中才真正可以进行调试.如果没有发布,而仅仅是 在VS里面调试,那么就无法进行一些设置,

在Struts2中使用OGNL

OGNL是XWork引入的一个非常有效的数据处理的工具.我们已经了解了OGNL的基本操作和OGNL的内部结构,接下来,我们来看看XWork对OGNL做了什么样的加强,以及OGNL的体系在Struts2中如何运转.  从例子开始  我们先从一个例子开始,看看数据在Struts2中是如何运转的.  Java代码   /**   * @author Downpour   */   public class User {              private Integer id;         

ASP.NET七大身份验证方式及解决方案

在B/S系统开发中,经常需要使用"身份验证".因为web应用程序非常特殊,和传统的C/S程序不同,默认情况下(不采用任何身份验证方式和权限控制手段),当你的程序在互联网/局域网上公开后,任何人都能够访问你的web应用程序的资源,这样很难保障应用程序安全性.通俗点来说:对于大多数的内部系统.业务支撑平台等而言,用户必须登录,否则无法访问和操作任何页面.而对于互联网(网站)而言,又有些差异,因为通常网站的大部分页面和信息都是对外公开的,只有涉及到注册用户个人信息的操作,或者网站的后台管理等