今天用d3画了一个血缘关系图,是对配置的各种任务的上下级依赖关系的展示。在返回值时候定义了contenttype但是还是返回了html,看了半天,原来是忘记了加@responsebody注解导致的
js:
$.ajax({
headers:{"csrf":"${csrf}"},
type:"POST",
url:"${contextPath}/job/chart?",
data:{
"jobid":id,
},
success:function(data) {
console.log(data.data);
//data : data.data.getResult.processClass,
//links : data.data.getResult.processLink,
var process = data.data.getResult.processClass;
var link = data.data.getResult.processLink;
var g = new dagreD3.graphlib.Graph()
.setGraph({
//此处是设置流程图位置的,LR水平,UD上下
rankdir: "LR"
})
.setDefaultEdgeLabel(function() { return {}; });
process.forEach(function(n){
g.setNode(n.jobId,{label: n.jobName});
});
link.forEach(function(n){
g.setEdge(n.source,n.target);
});
js:
$.ajax({
headers:{"csrf":"${csrf}"},
type:"POST",
url:"${contextPath}/job/chart?",
data:{
"jobid":id,
},
success:function(data) {
console.log(data.data);
//data : data.data.getResult.processClass,
//links : data.data.getResult.processLink,
var process = data.data.getResult.processClass;
var link = data.data.getResult.processLink;
var g = new dagreD3.graphlib.Graph()
.setGraph({
//此处是设置流程图位置的,LR水平,UD上下
rankdir: "LR"
})
.setDefaultEdgeLabel(function() { return {}; });
process.forEach(function(n){
g.setNode(n.jobId,{label: n.jobName});
});
link.forEach(function(n){
g.setEdge(n.source,n.target);
});
g.nodes().forEach(function(v) {
var node = g.node(v);
// Round the corners of the nodes
node.rx = node.ry = 5;
});
var node = g.node(v);
// Round the corners of the nodes
node.rx = node.ry = 5;
});
// Create the renderer
var render
var render