struts1 validwhen验证

汽车IVI中控开发入门及进阶(三十八):手机投屏HiCar开发 为了兼容这部分手机,车机端在向手机端发送USB控制命令字的同时,需要启动mDNS Server,广播车机端IP地址和HiCar SDK侦听的Server Socket端口(IP地址和端口在HiCar SDK初始化USB driver时,告知车机),在检测到手机断开USB连接时关闭mDNS Server。厂商在集成HiCar SDK开发HMI应用时,不可避免会使用到智能座舱的敏感权限,例如位置权限、摄像头权限、麦克风权限等,SDK初始化时,厂商HMI应用需要设置必要的车机参数供SDK使用。 阅读详情

struts1 validwhen验证: 

1.使用validwhen设计复杂的验证

使用validwhen来设计复杂验证的一个经常的要求就是根据一个字段验证另外一个字段(比如, 如果你要用户两次输入口令来确认值口令一致),另外一个就是表单中的一个字段只有另外一个字段有确定值的时候才是必须输入的。新的validwhen验证规则将很快被包含在1.1后的STRUTS版本中,她就是用来处理这种情况的。

validwhen 规则处理单个的变量字段,叫测试。这变量的值是一个布尔的表达式,如果验证有效则它必须为真。可以包含这种变量的表达式有:

单引号或双引号字符串literals,

十进制、十六进制、八进制的Integer literals,

null与null和空字符串匹配,

其它可以用属性名引用的form字段,例如customerAge,

可以在外部因用得索引字段, 例如childLastName[2],

可以默认implicit因用得索引字段, 例如childLastName[], 她将作为被索引的字段使用同样的索引到数组中,

The literal *这里指它包含当前测试字段的值,

作为例子,考虑一个包含通讯地址和邮箱字段的form。如果通讯地址不为空则邮箱字段是必须的required。你能这样定义validwhen 规则:

<field property="emailAddress" depends="validwhen">

<arg0 key="userinfo.emailAddress.label"/>

<var>

<var-name>test</var-name>

<var-value>((sendNewsletter == null) or (*this* != null))</var-value>

</var>

</field>

上面定义的意思是:如果通讯地址是空或不空时这个字段时有效的。

 

2.使用validwhen验证注意事项:

来源:http://www.nabble.com/Validation-framework...-weird...-td11777141.html

Balazs Michnay wrote:
> Dear Struts Users,
>
> I have a form with 13 form controls on it. I'd like to use the Struts Validation Framework to validate it, but it's acting weird.
> What I'd like to do is to have AT LEAST ONE of the controls filled, but the test of "validWhen" only allows simple boolean expressions.
> I used a simple approach of checking each control for their value being null but the test cannot containmore than one boolean operator.
> For instance, the following works just fine:
>
>                 <var>
>                     <var-name>test</var-name>
>                     <var-value> ((*this* != null) or (suly != null)) </var-value>
>                 </var>
>
> But if I insert another control test, I get an error message saying "ValidWhen Error for field ' magassag' - line 1:37: expecting RPAREN, found 'or'", so no more than two conditions are allowed in a test.
>
> Is that true? Is there any way to create complex tests? Or is there a way to validate the form for having at least one field filled?


The grammar for validwhen expressions is rather limited; you can only
have one operator per group. The solution is to add additional parentheses:

   <var-value>(((*this* != null) or (suly != null)) or ...)/var-value>

从 SEGW 到 SADL 的那根线,彻底理解 OData Data Source Mapping 本文摘要(150字): 在SAP Gateway的SADL型OData服务开发中,"Map to Data Source"是关键配置环节。与传统RFC映射不同,SADL映射不是针对单个CRUDQ操作,而是建立OData模型与SADL业务实体间的完整语义对应关系。通过属性映射和关联映射,系统能自动处理数据获取和导航请求。映射编辑器支持三种模式:属性映射处理字段对应,关联映射处理模型间关系,动作映射处理业务操作。映射的本质是建立语义翻译表,决定了后续OData请求如何转化为后端业务实体访问,而非简单的字段重命名 阅读详情

相关推荐

Win11 24H2共享访问被禁?深入聊聊SMB签名和‘不安全的来宾登录’那点事

本文深入解析Win11 24H2共享访问故障,探讨SMB签名的安全机制与‘不安全的来宾登录’问题。提供从注册表修改到组策略配置的多层次解决方案,特别针对家庭网络和打印机共享场景给出实用建议,帮助用户在安全与便利之间找到平衡。

weixin_42556197的博客 565

Phoenix 执行错误 ERROR 604 (42P00): Syntax error. Mismatched input. Expecting "RPAREN", got "s"

org.apache.phoenix.exception.PhoenixParserException: ERROR 604 (42P00): Syntax error. Mismatched input. Expecting "RPAREN", got "s" at line 1, column 197. 使用phoenix插入数据,有一次,遇到了上面描述的这种错误。 事情是这样的,有...

继续,Let's Go! 8016

【物联网原理与应用】实验三:RFID低频卡实验——门禁系统

【物联网原理与应用】实验三:RFID低频卡实验——门禁系统

m0_74164458的博客 4000

struts validwhen的使用

validwhen主要用于关联验证,即为了验证某个域的值,可能会参考其它域的值来进行综合判断,以确定该域的值是否符合要求。1,表达式及其注意事项输入给validwhen的是一个布尔型表达式(对该表达式的解析使用了antlr),其引用名为test,即形如:  test  expression即,当expression为真(true)时,该域验证通过,其中,expression可以

enjoy java,enjoy life 2648

GNSS-RTK/INS紧组合里,那个‘杆臂改正’到底怎么算?一个公式讲清INS与天线位置的关系

本文深入解析GNSS-RTK/INS紧组合导航系统中的杆臂改正(Lever Arm Correction)原理与实现方法。详细介绍了杆臂效应的物理本质、数学建模及误差扰动分析,揭示了IMU与GNSS天线位置关系的核心公式,并提供了工程实现中的常见误区与验证方法。通过Python代码示例和紧组合量测模型处理流程,帮助开发者准确理解并应用这一关键技术。

weixin_33137081的博客 356

Cadence 开发合集【总目录】

专栏主要介绍Cadence原理图和PCB信号完整性电源完整性仿真相关的内容,更加注重实操,以帮助大家轻松上手并不断提高;在开始专栏的更新前,博主先列出专栏的大纲,以供大家参考。大家直接点击大纲中的蓝色标题即可轻松传送。 ............

fydar的博客 1万+

关于validwhen验证的问题

      This is a minimal Validator form file with a couple of examples.-->                                       property="insiderFlag"                depends="validwhen">                           t

猪猪也要飞 991

27、物联网中的量子密钥分发:安全通信新范式

本文探讨了物联网(IoT)快速发展所带来的安全挑战,并提出量子密钥分发(QKD)作为应对新兴威胁的新范式。文章详细介绍了QKD的基础原理、BB84协议的实现流程以及其在物联网中的应用前景,同时强调了安全专业人员提升技能、制定标准化指南以及跨学科合作的重要性。通过利用量子力学特性,QKD能够提供更高的通信安全性,抵御量子计算等未来威胁,为物联网的安全发展提供保障。

tequila的博客 156

validwhen的使用

关键字: Struts验证框架validwhen主要用于关联验证,即为了验证某个域的值,可能会参考其它域的值来进行综合判断,以确定该域的值是否符合要求。1,表达式及其注意事项输入给validwhen的是一个布尔型表达式(对该表达式的解析使用了antlr),其引用名为test,即形如:testexpression即,当expression为真(true)时,该域验证通过,其中

robin622的专栏 1319

QEMU源码全解析7 —— QEMU主函数

QEMU源码全解析7 —— QEMU主函数

phmatthaus的专栏 1293

[QMT量化交易小白入门]-十二、QMT回测龙头打首板和连板的策略

class a():passA = a() #创建空的类的实例 用来保存委托状态field_list定义了需要的市场数据字段,而类a用于保存交易状态。

木头大左的博客 4757

ERROR 604 (42P00): Syntax error. Mismatched input. Expecting "RPAREN", got "ffffd72e"

sqoop 导hbase数据到hive sqoop import --driver org.apache.phoenix.jdbc.PhoenixDriver --connect jdbc:phoenix:192.168.35.27,192.168.35.32,192.168.35.33:2181 --query "select * from \"ods_app_deviceInfo\...

柔情岁月的博客 6166

ubuntu系统禁止/开启内核自动更新

内核自动更新会导致驱动和内核版本不对应,导致驱动无法使用,所以需要禁止自动更新内核。本文介绍ubuntu系统禁止/开启内核更新的方法。

m0_50105717的博客 5289

使用validwhen设计复杂的Struts表单验证

通过Struts 1.2提供的validwhen 验证器可以轻松的创建更加复杂灵活的表单验证。比如说,我们要验证用户两次输入的密码是否相同,或是只有当用户填写表单项“姓氏”时,表单项“名字”才是必须的。validwhen 需要声明一个叫test的var字段,这个变量的值是一个布尔型的表达式,比如:    test    ((orderLines[].partNumber == null) or (

allenlynn的专栏 982

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

(转)使用validwhen设计复杂的Struts表单验证

通过Struts 1.2提供的validwhen 验证器可以轻松的创建更加复杂灵活的表单验证。比如说,我们要验证用户两次输入的密码是否相同,或是只有当用户填写表单项“姓氏”时,表单项“名字”才是必须的。validwhen 需要声明一个叫test的var字段,这个变量的值是一个布尔型的表达式,比如:    test    ((orderLines[].partNumber ==

jackyrongvip的专栏 530

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

validwhen

通过Struts 1.2提供的validwhen 验证器可以轻松的创建更加复杂灵活的表单验证。 比如说,我们要验证用户两次输入的密码是否相同,或是只有当用户填写表单项“姓氏”时,表单项“名字”才是必须的。 validwhen 需要声明一个叫test的var字段,这个变量的值是一个布尔型的表达式,比如: [code] test ((orderLines[].part...

ddandyy 179

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Struts1.x系列教程(12):Validator验证框架的内置标准验证

http://www.blogjava.net/nokiaguy/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2009/02/14/254688.html本文为原创,如需转载,请注明作者和出处,谢谢! 上一篇:Struts1.x系列教程(11):...

qingfengxia2013的专栏 115

Struts Validator验证器使用指南

验证器:从0.5版,验证器在一些form中就已经实现了,他最初包含在开发人员包中,后来核心代码挪到Jakarta Commons包中和Struts特别扩展中作为 Struts 1.1的一部分。许多开发者为方便一直使用struts验证器,这篇文档首先概述验证器的核心功能性,然后大概介绍在 struts1.1中的变化和新增功能。如果你配置好验证器插件,你应该扩展ValidatorForm而不是

chho的专栏 1366

Validator 验证 - 概述

 对表单的验证有两种:语法验证和语义验证。语法有效是指数据必须有正确的格式,如数据只能包含数字,语义有效是指必须符合逻辑,如时间值不能是一个未来的时间。 struts1.2增添了许多新特征如:validwhen验证规则(validator) 一开始Struts是使用formbean的validate()方法进行验证的。有时候则是在Action中进行验证。通过validator框

Java之路 1168
上一篇: tomcat启动war项目以及pager分页标签使用
下一篇: 请问如何用正则表达式检查一个输入值,输入值可以为负数,0,正数,小数点后面可以最多有四位?
wangle100wangle
博客等级 码龄19年 16粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值