首页 > 代码库 > [Teamcenter 2007 开发系列] web 非空验证
[Teamcenter 2007 开发系列] web 非空验证
前言
TC 2007 的Web 端,页面简洁也简单。
非空验证的话,直接在后面加上一个 红箭头+ "Required value is not specified." 这样一些红色的提示信息。
而这种验证看上去又是和CF端的form 的定义管理起来的。
定义成require 的属性会做这种验证。
那么在web 端实现的机制是怎样的呢? 是否可以不和CF端绑定,在 Web端直接进行这种验证呢?
实现机制
以创建一个物件为例,关键的action-component 是
ModelEntity -- 这是web 端用来显示的对象
outValidationException - -> 包含了异常信息的对象集。
有了这些概念,在看看 EnterpriseValidationActionComponent.java这只代码很容易的就可以得出结论:
使用 AttributeValidationException 就能够得到想要的结果, 事实也如此。
贴一个代码段:
AttributeValidationException[] attr_exceptions = new AttributeValidationException[1]; AttributeValidationException attr_exception = new AttributeValidationException("Description","Required value is not specified."); attr_exceptions[0] = attr_exception; ValidationException ve = new ValidationException(dialogModelEntity,attr_exceptions); arguments.setObject("outValidatedModelEntity", dialogModelEntity); arguments.setObject("outValidationException", ve); OptionSet options = action_context.getOptionSet(); Option localOption2 = options.getOption("validation-error");
适用状况
如果需要使用自己定义的非 Create, Update 的dialog 进行验证,
或是update 视不同状况更新的栏位和必填验证不同, 可以考虑这种方式。
(当然, 除了这边的处理外,还需要结合其他部分才能完成完整的功能)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。