Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
利用javaee实现简单的工作流管理_Java_Jakarta Ee_Workflow - Fatal编程技术网

利用javaee实现简单的工作流管理

利用javaee实现简单的工作流管理,java,jakarta-ee,workflow,Java,Jakarta Ee,Workflow,我有一个应用程序,允许不同的用户更新一些数据,然后发布到网站上。应用程序使用JPA作为持久层。我现在想在这个场景中添加一点工作流管理,这样当具有初级角色的用户更新数据时,数据不会直接发布,而是等待高级用户来批准更新。更新未经批准时,原始数据应保持可见 理想情况下,高级用户应该能够拒绝更新,低级用户将看到被拒绝的更新,并相应地编辑更新 问题是,创建这样一个场景的好模式是什么 我在思考问题时遇到的问题是,如何在不复制所有实体的情况下表示已更改的数据。在批准之前对数据进行多次更改又如何 我考虑了这个模

我有一个应用程序,允许不同的用户更新一些数据,然后发布到网站上。应用程序使用JPA作为持久层。我现在想在这个场景中添加一点工作流管理,这样当具有初级角色的用户更新数据时,数据不会直接发布,而是等待高级用户来批准更新。更新未经批准时,原始数据应保持可见

理想情况下,高级用户应该能够拒绝更新,低级用户将看到被拒绝的更新,并相应地编辑更新

问题是,创建这样一个场景的好模式是什么

我在思考问题时遇到的问题是,如何在不复制所有实体的情况下表示已更改的数据。在批准之前对数据进行多次更改又如何

我考虑了这个模式,因为它允许一种撤销。我想知道是否有人有过类似的经历,有什么建议可以提供

我应该指出,我知道一些工具,比如工作流引擎,但我希望避免将这些工具集成到现有体系结构中的复杂性。如果有人指出使用这样一种工具最终会产生更高的生产率,我将不胜感激


谢谢

是的,我绝对认为您在该场景中所做的是启动不同的业务流程。使用诸如JBPM或(您应该看一下)之类的工具,不仅可以准确地表达您的问题,而且还可以让您通过它们提供的设计器直观地了解应用程序的流程。您可以直接使用使应用程序工作的内容作为文档

是的,我绝对认为您在该场景中所做的是启动不同的业务流程。使用诸如JBPM或(您应该看一下)之类的工具,不仅可以准确地表达您的问题,而且还可以让您通过它们提供的设计器直观地了解应用程序的流程。您可以直接使用使应用程序工作的内容作为文档