public boolean validateSave() {// 验证选中的必须都是准付。通过此验证,可以有效防止并发操作时对单据的重复付款。
uids = chk_ids.split(",");
for (String ids_i : uids) {
BizFolio bf = mng.findById(Integer.valueOf(ids_i));
if (!bf.getSext2().equals(DBConstants.Bizfolio_Sext2_CouldPay)) {
addActionError("_only_allow_could_pay");
return true;
}
}
return false;
}
在save方法前,自动被调用,注意红色必须是addActionError,而不能是addActionMessage。因为后者让程序继续执行,只有前者才能让程序中断,达到validate的目的。
xml中:
<many-to-one name="store" column="usstoreid"
class="com.atech.data.entity.Store" not-null="true">
</many-to-one>
<property name="storeid" column="usstoreid" type="integer"
not-null="true" />
insert="false"
update="false"在下面两种情况中分别放在:情况1-下侧 情况2-上侧
view中ftl:
情况1:<@p.select label="_store_belong" name="bean.storeid" list=storeList listKey="id" listValue="name" required="true" class="required" headerValue="_tobe_assigned"/><@p.tr/>
情况2:<@p.select label="_store_belong" name="bean.store.id" list=storeList listKey="id" listValue="name" required="true" class="required" headerValue="_tobe_assigned"/><@p.tr/>
情况2应该比情况1写法要好一些,能够有效防止不存在的数据进入系统。比如刚刚新增一个store,然后立刻要新增一条人员数据,进入view这个页面,选中了这条新增的store,但还没有点击保存。这时删掉store,然后点击view中的保存,情况1并不会验证这个store是否是存在的,而情况2就能够爆出错误来:
org.hibernate.PropertyValueException: not-null property references a null or transient value: com.atech.core.entity.AdminA.store
分享到:
相关推荐
struts2学习笔记,非本人所写,但有学习的价值,总结的很好,分享一个!
这是学习struts2时记得重点笔记,包括了一些原理,ognl语句的编写,以及如何设置拦截器等等一些基本知识,起到复习和巩固的作用
Struts2学习笔记,介绍了struts2的基础部分
struts2学习笔记总结
STRUTS2学习文档,如果你想花最少的时间来获取对struts2 的最大了解程度,则它将是你最好 的选择.
struts2学习系列文章,包括1 action访问,2 配置,3 获取servlet容器等
struts2学习测试代码,struts2学习测试代码2struts2学习测试代码,struts2学习测试代码
本人在网上收集的struts2 的学习资料,包括:struts2权威指南、struts2标签简单说明、struts2中文教程。
STRUTS2学习文档.pdf 对Struts2的一些配置文件进行了详细的说明。 Struts2―表单验证validate(html)对validate的type属性校验类型以及param 做了详细的解释说明。 struts2和struts的比较 让你更清楚的知道struts2...
struts2学习文档--中文版本。该版本是本人参考官方文档,里面的提到的内容皆通过本人的验证,可以放心使用!
Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,...
Struts2 学习
STRUTS2站点,STRUTS2学习实例8
这是一个利用oracle数据库与struts2框架搭建成的小实例,是个人在学习过程中的一个小实例,很适合广大的IT技术初学者!
struts2学习测struts2学习测试代码试代码
struts2学习心得,总结了struts2的常用方法,经验
1. struts2框架的引入 1)把struts2的相关jar包导入到项目中去 2)把struts2框架的配置文件struts.xml复制粘贴到项目中的src下面(同时也可以把log4j.properties放到src下) 在这里我们主要是要的这个struts.xml文件...
struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换
有了Struts2学习小结,可以很方便的学习struts2,里面包含了许多知识点
struts2学习ppt