起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3032|回复: 3

[分享] 扩展属性使用完整案例

  [复制链接]

12

主题

211

帖子

396

积分

中级会员

Rank: 3Rank: 3

积分
396
QQ
发表于 2013-11-26 12:39:34 | 显示全部楼层 |阅读模式
扩展属性使用完整案例
如果需要在模型要素上使用扩展属性,具体操作如下:
1.首先新建一个后缀名为.ext.xml的文件,具体属性参考如下代码
        <?xml version="1.0" encoding="utf-8"?>
        <!--
        1.定义扩展属性
        2.owner="concept" 表示扩展属性使用在概念(concept)上
        ,不写默认使用在所有模型元素上
        3.name="test":扩展属性的名称
        4.namespace="http://www.test.com" 扩展属性的命名空间(自定义的,可以定义自己的公司的)
        5.type="String" 扩展属性值得类型 String 、IntegerInteger、Long Double Boolean Float
        DateTime Date Time Decimal Xml List MapMap
        -->
        <model xmlns="http://www.justep.com/model">  
                <ext owner="concept" name="test" namespace="http://www.test.com" type="String">
                <label language="zh_CN">测试</label>
        </ext>
        </model>
2.引用扩展属性,本例是在概念上使用扩展属性,所以先在具体关系的扩展属性列点击按钮选择需要使用的扩展属性
3.定义获取扩展属性的Action,具体代码参考如下:
import com.justep.model.Concept;
import com.justep.model.Model;
import com.justep.model.ModelUtils;

public class Extend {

        public static final String MODEL_EXT_URI = "http://www.test.com";
        public static String name = "test";
       
        public static String getExtInfo(String model,String concept,String relation){
               
                Model mod = ModelUtils.getModel(model);//"/demo/actions/data");
                Concept con = mod.getUseableConcept(concept);//"DEMO_BorrowBook");
                //下面这个也可以获取到concept
                //Concept cc = (Concept)ModelUtils.getModelObjectByFullName("/demo/actions/ontology/DEMO_BorrowBook",Concept.TYPE);
               
                String value = (String)con.getRelation(relation).getExtAttributeValue(MODEL_EXT_URI,name);
               
                return value;
        }
}

4.前台调用action获取扩展属性的值,具体代码参考如下:
var mainActivity = {};

mainActivity.trigger1Click = function(event){

        var data = justep.xbl("dataMain");
        var params = new justep.Request.ActionParam();
        params.setString("model", data.dataModel);
        params.setString("concept", data.getConceptName());
        params.setString("relation", "fMC");
       
        justep.Request.sendBizRequest2({
                action: "getExtInfo",
                dataType: "json",
                parameters: params,
                callback: function(result) {
                        if (result.state) {
                               
                                alert("返回值 ——> " + JSON.stringify(result.response));
                               
                        } else {
                       
                                throw new Error("调用失败!|" + result.response.message);
                        }
                }
        });
};

扩展属性案例.rar

29.98 KB, 下载次数: 398

评分

参与人数 1 +20 收起 理由
jishuang + 20 赞一个!

查看全部评分

2

主题

441

帖子

2572

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2572
发表于 2013-11-26 18:40:24 | 显示全部楼层
很好,支持!
回复 支持 反对

使用道具 举报

998

主题

4330

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
10726
QQ
发表于 2023-5-19 17:29:57 | 显示全部楼层
用一下
孤舟蓑笠翁,独钓寒江雪。
X5牛刀交流民间第一群:30057529
提供有偿服务,联系WX:18332024
bex5疑难问题解决方案
回复

使用道具 举报

33

主题

373

帖子

916

积分

高级会员

Rank: 4

积分
916
QQ
发表于 2023-5-23 16:40:06 | 显示全部楼层
学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-2 23:56 , Processed in 0.081468 second(s), 30 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表