将 camunda dmn modeler 集成到 spring mvc 应用程序和 angular js 前端

Integrate camunda dmn modeler in spring mvc application with angular js front end

我在 spring(backEnd)、angularjs(frontEnd)

中有一个项目

我想在我的项目中使用 dmn modeler 来创建 decision table 并且创建的决定 table(是一个 xml 文件)我想保存在服务器上。

我使用 bower 下载了 dmn-js 个文件。

我不知道 nodeJS。 我不知道它是否需要 nodeJs 那么我该如何在我的 spring 项目中使用它。

我想调用 angularJS controller 中的函数。

  1. openTable 接受 xml input

  2. 函数给我 xml(在 string 中)作为 output

如果在 modelerJS 中发现错误,则在我的 html.

中显示

任何理论 explanation/useful link 都很棒!

根据我目前的尝试,

首先,我同意#zeropaper 评论中所说的不需要nodeJS

如果你看看给出的例子 Here

您需要包含 modelerJs 而不是 viewerJs 来创建 table。(of-course 其他依赖项,例如 dmn-js css)

angularJS controller中你可以这样写

        var viewer, DmnModeler, initialTemplate;
        DmnModeler = window.DmnJS;

        initialTemplate = ;//xml input (.dmn file)

        viewer = new DmnModeler({ container: '#canvas' });

        viewer.importXML(initialTemplate, function(err) {

          if (!err) {
            console.log('success!');
          } else {
            console.log('something went wrong:', err);
          }
        });

第一次你可以用 viewer.createTemplate(callbackfunction)

下次使用现有 dmn 加载它时,您可以使用 importXML,如上所示。

下一步要在 xml 中获取 dmn table 您可以执行以下操作,

viewer.saveXML({ format: true }, function(err, xml) {
    console.log(xml); //here is xml
});

你需要一个 html 元素,比如 <div id='canvas' /> 来呈现视图。

如有错误请comment/correct