json 的应用。参考别人的博客。
Json必需的包
commons-httpclient-3.1.jar
commons-lang-2.4.jar
commons-logging-1.1.1.jar
json-lib-2.2.3-jdk13.jar
ezmorph-1.0.6.jar
commons-collections-3.2.1.jar
以上包可以从
http://commons.apache.org/index.html
http://json-lib.sourceforge.net/
http://ezmorph.sourceforge.net/
http://morph.sourceforge.net/
http://www.docjar.com/
中下载到。
出现java.lang.NoClassDefFoundError: net/sf/ezmorph/Morpher错误是因为没有导入ezmorph.jar文件或版本不对。
出现java.lang.NoClassDefFoundError: org/apache/commons/collections/map/ListOrderedMap错误是因为没有导入commons-collections.jar文件或版本不对。
但是我发现还有一个包需要。commons-beanutils。否则会有一个异常。
Map map=new HashMap();
map.put("name", "11111");
map.put("url", "22222");
map.put("target", "_blank");
List<Map> li=new ArrayList<Map>();
li.add(map);
li.add(map);
JSONArray js=JSONArray.fromObject(li);
这样解析出来是[{'name':'111111','url':'2222222','target':'_blank'}{'name':'111111','url':'2222222','target':'_blank'}]
前台 :
v=jQuery("#userpasstype").val();
jQuery.ajax({
type: "POST",
url: '<%=showuserpasslist+"&"+BPMDeviseString.SELECT_USERPASS_TYPE+"="%>'+v,
async: false,
success: function(data){
alert(eval(data));
zTreeNodes=eval(data);
var zTree = jQuery("#tree").zTree(setting, zTreeNodes);
}
});
注意的是:
eval(data);转成javascript object type
目前在做给工作流节点添加部门人员功能。
用的是ztree。开源的。
目前完成创建流程,创建节点,连接节点,删除节点,编辑节点,删除流程,判断是否有分支,判断子节点不可以重复连接父节点等等功能。