JSON2.js和BPM-JSON-Utils.js在IBM BPM中的使用
Posted shxlsunny
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON2.js和BPM-JSON-Utils.js在IBM BPM中的使用相关的知识,希望对你有一定的参考价值。
今天在IBM的ProcessDesign中编写后台js代码,需要将object对象转换为json格式。
首先想到了JOSN.stringify()方法,
input.afterLineleaderCode = lineleaderNo;
input.afterLineleaderName = lineleaderName;
tw.local.input[i] = JSON.stringify(input); //input是数据对象
其中,tw是IBM BPM中teamwork的简写,是指的是PD中最大的对象,包括本地的tw.local对象,系统的tw.system对象。
但每当代码执行至此后,后台一致报错:
CWLLG2041E: TeamWorksjavascriptException created non-nested. Error: [TeamworksException name=‘json2.js‘, message=‘Can‘t find method java.lang.String.valueOf().‘, line=187, pos=0 nested=<none>]
初步分析,是由于JSON.stringify()无法将简单的对象转换为tw对象。所以要使用BPM-JSON-Utils.js中的方法。
如果要用JSON.stringify(),需要设置属性为tw对象
input.afterLineleaderCode = tw.local.afterLineleaderCode;
input.afterLineleaderName = tw.local.afterLineleaderName;
tw.local.input[i] = JSON.stringify(input);
这样就可以了。
以上是关于JSON2.js和BPM-JSON-Utils.js在IBM BPM中的使用的主要内容,如果未能解决你的问题,请参考以下文章
JSON2.js和BPM-JSON-Utils.js在IBM BPM中的使用