[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 视不同状况更新的栏位和必填验证不同, 可以考虑这种方式。

(当然, 除了这边的处理外,还需要结合其他部分才能完成完整的功能)

[Teamcenter 2007 开发系列] web 非空验证

时间: 2024-10-14 12:34:58

[Teamcenter 2007 开发系列] web 非空验证的相关文章

Atitit  验证 数字验证 非空验证的最佳算法  h5

Atitit  验证 数字验证 非空验证的最佳算法  h5 <td><select class="searchBox-select"   style="height:25px;" id2="branch_id" id="objid" name="objid" required  > <option value="">--物品</option>

[Teamcenter 2007 开发实战] 获取错误或提示信息

前言 TC 的开发分为CF 端开发和Web 端开发. CF端和Web 端各自有自己的错误信息提示方式. 两种方式是否可以有一些整合? 整合的好处即统一了显示, 又减少了重复 CF 端错误信息 CF 端错误一般是给OMF 端来使用的. OMF是一个富客户端的程序. 错误方式就是弹出一个窗口. 代码开发方式如下: CheckDstat(uiShowText("errText001", NULL, UI_ATTENTION_TEXT, *mfail, WHERE)); *mfail = 11

php非空验证

我想说这种方法是不是很常用的非空验证,现在的普遍使用的是javascript来验证非空,但是作为学习php的一些知识点,还是可以看看的. 先来看看commit.php中的方法 <?php $db = mysql_connect('localhost','root','Ctrip07185419'); mysql_select_db('moviesite',$db) or die(mysql_error($db)); mysql_query('set names "gb2312"'

easyui-combobox非空验证等

js代码 1 function validate(){ 2 $.extend($.fn.validatebox.defaults.rules, { 3 maxLength: { 4 validator: function(value, param){ 5 return value.length <= param[0]; 6 }, 7 message: '最多输入 {0} 位' 8 }, 9 onlyLength:{ 10 validator: function(value, param){ 11

JavaWeb 学习008-今日问题(非空验证尚未解决) 2016-12-2

1. 学生模块list页面 不能正常跳转 说是找不到stuid属性,但是我在entity里面和数据库建表的属性就是stuid:Grade模块代码一样,却可以正常运行 这是什么问题? <c:forEach items="slist" var="student"> <tr> <td>${student.stuid}</td> <td>${student.stuname}</td> <td>

.NET开源工作流RoadFlow-Bug修改-1.8.2表单验证时ueditor编辑非空验证无效

RoadFlow生成的表单,Ueditor编辑器不能进行非空验证的BUG修改: 1.修改控制器:WorkFlowFormDesignerController红框处: 2.修改js文件:Scripts/roadui.init.js 3.修改文件:Scripts/FlowRun/Forms/common.js 在这个Case后面增加: case "flow_html": if (filedshow == 0) { $control.html(initValue); } else if (f

C# 实体类非空验证

public class BillReceiveModelDTO { /// <summary> /// /// </summary> [DataMember] [Required(ErrorMessage = "非空")] public string orderNo { set; get; } } //验证private static IEnumerable<string> VerifyTelegram(BillReceiveModelDTO te

jQuery.validator的非空验证 唯一性验证

<!--editpanl start--> <div class="modal fade" id="editpanl" data-backdrop="static"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header">

[Teamcenter 2007 开发实战] 调用web service

前言 在TC的服务端开发中, 可以使用gsoap 来调用web service. 如何使用 gsoap  , 参考 gsoap 实现 C/C++ 调用web service 接下来介绍如何在TC中进行开发. 开发的方式与环境搭建 在TC的CF端调用webservice , 可以把gsoap 产生和完成的代码打成一个  .lib 的文件(windows, 在linux 下是 .a 的文件) 这里使用的开发工具是 visual studio . 新建一个空的项目, 语言选 C++的就可以了 创建完成