精华内容
下载资源
问答
  • 由于工作需要,需要在项目中添加工作流引擎,经过产品经理的选型,决定用这个,并且将这个任务分配给我。经过几天的研究,我在这边做一点简单的介绍,给将要使用的同仁做一点参考。详细的可以参考项目的wiki文档,...

    首先感谢作者能写出如此优雅的作品,作品地址:Workflow-Core

    由于工作需要,需要在项目中添加工作流引擎,经过产品经理的选型,决定用这个,并且将这个任务分配给我。经过几天的研究,我在这边做一点简单的介绍,给将要使用的同仁做一点参考。详细的可以参考项目的 wiki 文档,不过都是英文的。

    在我理解工作流是对某一个具体任务和任务之间业务规则的抽象,他将任务拆分为若干步骤,然后将这些步骤串起来,协同完成一个或多个任务。对于我们需要的分支/循环等,这个引擎都有着不错的支持。回到框架本身,最基本的他需要自行定义若干步骤(Step),代码中体现为继承StepBody,并实现对应的虚方法,我们来定义一个最基本的步骤:

        public class SayHello : StepBody
        {
            public override ExecutionResult Run(IStepExecutionContext context)
            {
                ("Hello Guys !").ConsoleWithTime();//自己拓展的方法,不要纠结我为啥这么写
                return ExecutionResult.Next();
            }
        }

    各个步骤按照一定的顺序串起来就构成了工作流,以下来定义一个工作流:

        public class ChatWorkflow : IWorkflow
        {
            public string Id => "ChatWorkflow";
    
            public int Version => 1;
    
            public void Build(IWorkflowBuilder<object> builder)
            {
                builder
                    .StartWith<SayHello>()
                    .Then<Sing_A_Song>()
                    .Then<SayGoodBye>();
            }
        }

    到这边我们就完成了流的定义,剩下的工作就是让他动起来。

    在启动工作流之前需要在服务中进行注册,注册完成我们就可以是start了。看代码:

        public class Program
        {
            static void Main(string[] args)
            {
                IServiceProvider serviceProvider = ConfigureServices();
                var host = serviceProvider.GetService<IWorkflowHost>();
                host.RegisterWorkflow<ChatWorkflow>();
                host.Start();
                host.StartWorkflow("ChatWorkflow");
                Console.ReadLine();
                host.Stop();
            }
    
            private static IServiceProvider ConfigureServices()
            {
                IServiceCollection services = new ServiceCollection();
                services.AddLogging();
                services.AddWorkflow();
                var builder = new ContainerBuilder();
                builder.Populate(services);
                return new AutofacServiceProvider(builder.Build());
            }
        }

    结果来了:

    很显然这个是最基本的功能实现,很多情况下是不满足我们要求的,接下来一起看看他的其他用法,我只简单介绍他可以做什么,不会一个个展开,他的文档中有些东西也很明了,如果有不明白的,留言我们一起探讨:

    1、步骤间数据传递,步骤可以接收参数的,这样写一个步骤就可以实现多样的功能;

    2、多种结果,类似分支结构,可以根据不同情况执行不同的步骤;

    3、错误处理,可以捕捉执行过程中的异常,并处理,步骤的异常和流的异常都提供方法操作,出现出错可以设置挂起,终止和重试;

    4、控制结构,支持循环/分支,还支持几个步骤并行执行;

    5、支持持久化,提供MongoDB/SQL Server/PostgreSQL/Sqlite等拓展程序,可以直接使用;

    6、支持集群;

    7、支持从JSON加载工作流定义,但是步骤只能通过全限定名调用,意思只能加载流的定义,不能动态加载步骤的定义,步骤需要事先定义好,里面可以带参数;

    8、计划和重复,可以设置定时执行和重复执行,可以设置满足某个条件时停止重复;

    9、目标框架 .NET Standard 1.3 ,.net core也可以用;

    10、我的学习能力有限,也没必要研究的很透,大家选型的时候可以作为参考,我列出来的并不是全部功能,如果有错误也请帮忙指出。

    最后祝大家学习愉快。

    展开全文
  • 该组件主要是以“业务审批系统”为例,讲述了WorkFlow工作流引起的工作原理以及工作流管理系统的实现过程
  • 工作流建模管理工具源码 运行环境:客户端安装siverlight运行时,服务器端 .NET3.5框架 浏览器兼容:适用于IE,FF,Chrome等所有主流浏览器 技术特点:采用微软最新技术siverlight js ajax完成,采用客户端 ...
  • 工作流引擎WorkFlow开源项目

    千次阅读 2017-05-11 12:49:51
    1、WorkFlowEngine https://workflowengine.io/downloads/
    展开全文
  • imixs-workflow, 面向业务应用的开源工作流技术 imixs工作流imixs工作流是一种基于Java企业架构( JEE )的开源工作流引擎。 在imixs工作流项目中,为构建以灵活和健壮的框架为中心的工作流应用。 业务逻辑可以使用...
  • Java开源工作流Workflow项目

    千次阅读 2006-04-01 19:54:00
     OpenWFE OpenWFE是一个开放源码的Java工作流引擎。它是一个完整的业务处理管理套件:一个引擎,一个工作列表,一个Web界面和一个反应器(存放自动代理)。它可以可以跟你的程序很好的给合。 jBpm jBpm是一个...
    Willow  
    由Huihoo Power开发详细可到其中文主页查看。

     OpenWFE  
    OpenWFE是一个开放源码的Java工作流引擎。它是一个完整的业务处理管理套件:一个引擎,一个工作列表,一个Web界面和一个反应器(存放自动代理)。它可以可以跟你的程序很好的给合。

     jBpm  
    jBpm是一个灵活可扩展的工作流管理系统。作为 jBpm运行时server输入的业务流程使用简单强大的语言表达并打包在流程档案中。jBmp将工作流应用开发的便利性和杰出的企业应用集成(EAI)能力结合了起来。jBmp包括一个Web应用程序和一个日程安排程序。jBmp是一组J2SE组件,可以作为J2EE应用集群部署。

     OpenEbXML  
    OpenebXML项目致力于提供一个ebXML框架,主要支持不久将由 UN/CEFACT和OASIS发布的ebXML规范2.0版。

     Werkflow  
    Werkflow是一个灵活可扩展的基于流程和状态的工作流引擎。它的目标是满足可以想象的所有工作流程,从企业级的业务流程到小范围的用户交互流程。通过使用可插拔和分层结构,可以方便地容纳各种工作流语义。

     OSWorkflow  
    灵活是OSWorkflow最大特点。

     wfmOpen 
    WfMOpen是WfMC和OMG中所谓工作流设施(workflow facility) (工作流引擎)的J2EE实现。工作流通过扩展的XPDL描述。

     OFBiz  
    OFBiz是一个非常著名的开源项目,提供了创建基于最新J2EE/XML规范和技术标准,构建大中型企业级、跨平台、跨数据库、跨应用服务器的多层、分布式电子商务类WEB应用系统的框架。 OFBiz最主要的特点是OFBiz提供了一整套的开发基于Java的web应用程序的组件和工具。包括实体引擎, 服务引擎, 消息引擎, 工作流引擎, 规则引擎等。

     ObjectWeb Bonita  
    Bonita 是一个符合WfMC规范、灵活的协同工作流系统。 对于各种动作如流程概念建模、定义、实例化、流程控制和用户交互等提供了全面的集成图形工具。 100% 基于浏览器、使用SOAP和XML数据绑定技术的Web Services封装了已有的工作流业务方法并将它们以基于J2EE的Web Service形式发布。基于活动预测模型的第三代工作流引擎。

     Bigbross Bossa 
    速度非常快、轻量级的引擎,使用富有表达能力的Petri网定义工作流,不要求关系数据库,使用简单,能和Java应用集成。事实上,它是按嵌入式设计的。

     XFlow  
    XFlow运行于EJB和servlet容器中。

     Taverna  
    Taverna项目的目标是提供一种语言和软件工具,方便在eScience中使用工作流和分布计算技术。

     Enhydra Shark 
    Shark完全基于WfMC和OMG标准,使用 XPDL作为工作流定义语言。流程和活动的存储使用Enhydra DODS(一个开源OR映射工具)。

     PowerFolder 
    PowerFolder是一个容易使用,容易安装基于J2EE的工作流服务器,包括开发人员使用的基于web的studio。

     Open Business Engine 
    Open Business Engine是一个开放源码的Java工作流引擎,支持WfMC规范,包括接口1(XPDL)、接口2/3(WAPI)和接口5。OBE为活动的运行提供了一个可控的集中环境。OBE主要基于J2EE实现。

     OpenWFE  
    OpenWFE是一个开放源码的Java工作流引擎。 它包括可升级的三个组件:引擎、工作列表和Web界面。它的流程定义语言虽然使用XML格式,其灵感来源于 Scheme,一种Lisp方言。

     Freefluo  
    Freefluo 是一个使用Web Service的工作流协同工具,可以处理WSDL的Web Service调用。支持两种XML格式的工作流语言:IBM的WSFL和XScufl。Freefluo非常灵活,它的核心是不与任何工作流语言或执行架构关联的可重用协同框架。 Freefluo包括可执行使用WSFL一个子集描述的工作流的运行库。

     Twiste  
    Twister的目标是提供新一代、易集成、应用Java领域中最新成果、面向B2B的工作流解决方案。流程引擎基于BPEL业务流程规范和Web Service标准。

    展开全文
  • Workflow JBPM 工作流

    千次阅读 2010-07-27 10:56:00
    2009-03-10 19:57 准备学习开源工作流,这是我在别人日记上找的,介绍得很不错。跟大家一起分享。 一、工作概述 主要的工作时间花在以下几个方面,它们也是学习、研究工作流的一般途径: 1、JBPM3.2.1官方User...

    2009-03-10 19:57

    准备学习开源的工作流,这是我在别人日记上找的,介绍得很不错。跟大家一起分享。
    一、工作概述
    主要的工作时间花在以下几个方面,它们也是学习、研究工作流的一般途径:
    1、JBPM3.2.1官方UserGuide(21章)通读了几遍,包括官方的examples、forum、wiki、apidoc。这五份资料来源是我认为最重要的。
    2、google(english)、Javaeye和csdn相关工作流技术文章和评论,特别是“银狐999”的工作流blog。
    3、国内OA、工作流、BPM产品的演示和功能介绍,如joinwork,思维加速,西安协同,摩卡等。
    4、xflow、osworkflow、Willow、agileFlow等国内外开源工作流了解。
    5、几本重要的工作流、BPM相关书籍和workflow模式,最重要的两本书是《OReilly Essential Business Process Modeling》、《MIT Press - Workflow Management--Models, Methods & Systems》。 另外JBPM的UserGuide第四章Graph Oriented Programming里有一个jbpm.gop.zip下载包,它就是JBPM引擎的mini版,几乎涵盖有JBPM引擎的绝大部分,如流转、分支、合并、、并行、同步、异步、事件、Action、表单。
    6、JBPM的一个请假流程从页面到持久化的整个demo开发(约花两周时间),例子来源于csdn上一个非常典型的例子,有顺序、并发、互斥、条件分支等情形。另外,特别针对JBPM源码进行跟踪调试(四天)。
    7、对当前项目的若干Use Case的深入分析,如流程图表示、流程实现。
    二、JBPM环境和开发
    JBPM开发环境JBPM我是从3.1.4版本开始研究的,但发现3.1.4版的designer在推荐的eclipse3.12下画流程图时,eclipse总是处理僵死状态,一个操作都要5s以上。无奈之下,下载JBPM3.2版本,该版本在eclipse3.1.2下designer无法正常使用。但在eclipse3.3,也就是官方刚出来的Europa版本下,其designer可以正常使用,但代码开发时,也是僵死状态,而在eclipse3.12下开发正常。所以,我现在的做法是,用JBPM的3.2.1版本,用eclipse的3.12做开发和调试,用eclipse3.3做流程可视化设计。另外,3.2.1对mail这类节点有支持。
    JBPM控制台
    JBPM的管理控制台从3.1.4到3.2.1有非常大的改进,如中文问题、界面、流程发布等。但在实际项目中,我们还是几乎无法使用,理由如下:
    1、该管理控制台还是很粗糙,只有最基本的功能,没有权限、组织结构、细粒度的流程管理等功能,另外必须汉化。
    2、其流程designer默认是生成JSF表单,也就是说整个管理控制台和流程开发最方便是JSF做表示层,这不符合我们当前的项目实际。另外,用自己的业务表,而不是JBPM自带的活表(数据库对应jbpm_variableinstance表),也就意味着JSF表单没法用上。
    3、我们的流程存在大量中国特色的定制,如回退、临时流转、跳越,不可能将流程用JBPM的designer设计好,发布到控制台就ok这么简单。
    当前,我们的项目需要流程控制台,但应该是完全自己开发,可以借鉴JBPM后台的设计实现思想,特别是流程查看时的流程图显示;另外我们还需要table格式的详细流转过程。
    一般来说,控制台做得很强大的工作流系统,都是standalone方式运行,而不是我们现在的embeded方式。
    关于JBPM控制台入门知识,JBPM官方wiki有非常详细的介绍。
    JBPM的开发模式
    实际的JBPM开发,我觉得应该注意以下几个问题:
    1、业务处理的位置 我们知道,在MIS系统,如OA项目中引入工作流,主要是将流程逻辑和业务逻辑分开,流程数据持久化到流程引擎表,业务数据持久化到业务表。这就涉及到业务逻辑在哪里处理的问题。在JBPM中,是在ActionHandler还是在Business Service中?
    ActionHandler中:我们将业务在JBPM的回调接口ActionHandler实现中处理,将业务表单对象通过ContextInstance的setTransientVariables()传入,在ActionHandler中持久化,也就是说,ActionHandler是我们的业务处理主体,可以通过在Task实例中记录业务表单ID。另外,数据库的Connection可以通过ActionHandler的ExecuteContext参数取得。
    Business Service中:这个Service就对应于用Spring框架时的Service,我们可以在service方法里面调用JBPM的API,如JbpmConfiguration.getInstance().createJbpmContext(); TaskInstance ti = jContext.getTaskInstance(tiid); 将业务数据都持久化到JBPM的活表里,这样只在一个数据库Conntection上,可以避免分布式事务的问题。
    上面两种方式,第一种是我推荐的,其基本思想是将工作流引擎当成一个集成框架,一切以流程为主线。第二种是将工作流引擎当成辅助的第三方库。两种方式对系统的侵入性都非常大,无侵入性我认为不现实。
    参考:
    http://www.processdriven.org/process_liberation.html
    http://weblogs.java.net/blog/edgars/archive/2007/08/understanding_j_1.html
    2、业务数据的存储 把业务数据持久化到JBPM的活表jbpm_variableinstance中,可以很容易地进行字段级别的权限控制,灵活的表单自定义,而且可以在JBPM的管理控制台上二次开发,将开发的工作量降到最低,而这是大多数商业工作流产品实现的目标。但是,活表对于实时的业务报表统计分析很低效,有时不可能,因为表单项是离散的,并且不是最重要的关注点。关注点可能是流程的执行效率统计,也就是流程数据统计。
    成熟的工作流管理系统(工作流引擎只是其中一个组成部分)往往是一个任务或节点对应一个表单,这样很便于表单自定义,将流程设计、表单定义、权限控制、组织结构和任务分配一气呵成。我理解的表单,只是如同Struts里面的ActionForm,只是页面数据的收集和呈现形式,具体到这些表单怎么持久化,采用JBPM的活表或自定义的业务表均可,但我倾向后者。
    3、面向流程的MIS系统的开发过程 对于一般的MIS系统开发,很强调领域分析、系统设计,也就是大量的UML图。这样的系统,往往可以抽象为增删改查CRUD,可以按页面分配工作量,增删改查都是无状态的,也就是说开发“增”并不影响“改”,一个操作一个业务,各业务操作互不影响、耦合。但有清晰流程的系统就不同,每一个业务操作都是有状态的,譬如一个OA的发文流程,可能有十来个步骤,各级领导审核、审批、查阅,每一步的操作都影响后面的业务流向,而且必须有各业务相关人员协作才能完成该发文目标,这样通过CRUD方式去理解这个系统就无法理清业务,如果通过流程驱动方式去建模,那么事情就简单了。
    这样,就引发了一个问题:流程驱动的MIS系统,怎么制定软件开发过程?如果大家看过工作流产品(关键字:工作流、OA、协同、BPM)的demo介绍,就会知道,工作流系统的开发,往往和流程设计、表单设计打交道,在我们的成果物中(RUP中是artifact、工件),没有OO的概念,领域分析让位于流程分析:难道我们真的需要一个请假单LeaveForm的Domain?做报表系统开发,应该也没有强调Domain吧?因为它是数据驱动,没有强调业务层。
    所以,我认为,流程驱动的业务系统开发,不要将概要设计、详细设计往上面套,它们的重点往往没有放在流程设计和实现这个根本问题上。也许,概要设计、详细设计这种瀑布开发过程挺适合低端的外包项目,譬如对日的外包,将低端Coding外包给中国公司。前提是,别人的详细设计可以确定95%以上需求,需求不明确带来的风险很小。另外,在用JBPM开发过程中,也许业务主要写在JBPM这个框架的ActionHandler回调接口中,我们详细设计的顺序图中的call或sendMessage,不适合反映这种过程,因为ActionHandler的lifecycle我们无法控制。那么详细设计的意义何在?
    那么,软件过程怎么定?我认为还是敏捷一点,只关注三点:用户需求(详细的用例文档和原型)、流程设计、流程实现。文档只集中在第一点。
    我认为,参考基于成熟的商业工作流产品开发模式,就是我们系统的开发的模式。
    三、JBPM对常见流程问题的解决
    JBPM的API文档非常匮乏,但是,JBPM的源码内部有很多注释,其代码可读性非常强,核心代码我认为不超过1w行,引擎核心代码也许只有两三千行。另外,阅读源码,最好对UML活动图、Petri网、Workflow模式较熟悉,譬如Join. setDiscriminator(),如果不了解Workflow模式的Discriminator模式,该方法就不知所措。
    Process本质上,只有两个对象:Node和Transition(节点和有向弧),只要这两类对象就可以完整绘出一个流程图,当然,Node有很多子类,譬如Start、End、Fork、Join、Decision等。
    JBPM的过程调度,是通过Token在流程节点之间转移实现的。譬如TaskInstance.end()的时候,调用Token.signal(),在signal()内部,依次调用:Node.leave(),Transition.take(),Node.enter(),这三个调用依次引发如下三个event:node-leave,transition,node-enter,在event内部,就处理我们自定义的ActionHandler和记日志。从中我们可以看出,事件(event)处理和Token调度是分离的。上面的三个event是重复循环的,可以驱动流程向前进行:离开当前节点?过渡?进入下一节点。
    上面就是JBPM的大致调度过程,清晰、简洁。
    参考:
    JBPM引擎架构:http://blog.csdn.net/james999/archive/2007/09/02/1769592.aspx
    JBPM微型架构实现:http://docs.jboss.com/jbpm/gop/jbpm.gop.zip
    下面我对JBPM对工作流中常见问题的解决方案总结一下,基本上都来源于网络,自己试验了一下,很可行。
    1、互斥任务
    譬如,员工请假流程中,员工请假申请提交后,系统应该创建两个并发任务:员工取消和主管审批,只要任何一个任务结束,另外一个就应该结束。
    一种实现方式是,在请假申请Node后Fork出两个Node,员工取消和主管审批,它们Transition 的ActionHandler里结束另外一个Node的TaskInstance。
    另外一种实现方式是,在一个Node里创建上面两个Task,在Node节点里设置属性signal="first" end-tasks="true"。signal="first"指一个任务结束,当前节点就流转;end-tasks="true"指结束该节点时自动结束其它没有完成的任务。
    参考:http://jbpm.group.javaeye.com/group/blog/59741
    2、动态创建任务,会签或任务分派
    像会签这类动态创建任务的情形,用流程图很难描述,所以一般是通过代码手工创建,JBPM为这提供了很方便的接口。
    JBPM的实现方式。在task-node设置create-tasks="false",在该task-node的event-enter事件中,自定义ActionHandler,处理任务创建的工作。
    说明:对JBPM的API用得得心应手,必须对其API设计实现、引擎思想有较深入理解,譬如Event机制、Token调度、Workflow模式等,其API绝对没有Servlet API那么简单,容易上手。
    参考:http://www.cnblogs.com/amushen/archive/2007/07/03/804237.aspx
    3、循环节点,文件传阅
    在默认的JBPM的designer里无法画出指向自身的有向弧,可以先在该节点的XML流程定义文件里写出指向自身的Transition,这样在图形显示下就会出现指向自身的有向弧。当然,重复创建两个类似的节点,之间有往返有向弧也可以实现。
    4、并发子流程JBPM自身对子流程的支持不够灵活,如只能创建一个子流程(ProcessState.setSubProcessDefinition()而不是addSubProcessDefinition())
    一种解决方案是用流程的Hierarchy分级结构方式,请参考:http://jeffreyhsu.javaeye.com/blog/29917
    ...............
    ...............
    5、客户的Visio流程原型实现的探讨
    该流程原型,要求把JBPM的流程定义模块重新实现,有一定难度。但我认为,实现是完全可以的,但初步实现需要一个多人月的时间(以自己目前的能力)。
    作为我个人的角度,我觉得Leader应该给开发人员充分的授权,信任开发人员,时间自由支配,定一个大致milestone就可以了。前段时间的技术调研太浮躁,一天一个方向,根本就没有调研深度。做一件事情需要多少时间就是多少时间,人为主观去控制,注定会失败的。
    如果现在想按客户的要求实现,技术比以前的预想难多了,因为现在的流程定义是活的,相当于我们做了一个流程管理控制台和流程设计器。可以做,但风险大,不过,静下心来,是完全可以完成的,因为JBPM这部分相关代码只有几千行(千万不要忘了,JBPM只是一个naked流程引擎,不是工作流管理系统)。项目现在面临的一个问题是,前期开发有一个时间瓶颈,核心代码没有开发出来,后面的开发无法进行,以当前的管理模式,势必会让前期开发人员浮躁(自由的思想才会有深度,有创造力)。
    客户原型实现看法:
    流程定义和修改:JBPM有JpdlXmlReader,负责XML流程定义解析的,把该类和其关联类弄明白就差不多了,估计约两天时间,我花完整一天时间读过,不太难。
    节点编辑,出口编辑:解析过程同上,
    数据项编辑:利用JBPM自己的活表(TaskController相关),实现不是很难。
    如果按客户的方式做,做成功了,其它项目就很好复用,因为它就是做了一个通用的元框架,也算是拿做产品的要求来做项目。
    另外,如果不做成通用框架,解决现在项目中的若干技术问题难度都不大,如回退、串并行、版本控制、自由流、多子流程、强制跳转、自定义时限、权限控制、流程监控。但“提供自定义流程功能”,就是上面客户的要求,这个难度很大,和中棉项目自定义报表难度有的一拼(中棉项目自定义报表以失败告终)。
    就总结到这儿吧,Workflow、BPM是企业软件的趋势,以后还得努力啊!

    展开全文
  • Work2Go是一个工作流和票务管理器,适用于中低端市场,使用Ruby语言编写,并使用Ruby on Rails框架
  • workflow-ui 仿钉钉前端工作流UI

    千次阅读 2020-01-22 15:27:27
    workflow-ui 前端工作流 UI 基于vue前端工作流UI 前端工作流生成器-Generator 1、首先通过npm安装: npm install workflow-ui --save 2、全局定义组件(否则会报循环引用): main.js中 import Node from '...
  • 工作流开源项目

    2008-01-29 11:53:00
    Willow : 由Huihoo组织开发的,致力于提供一个完整的、可用的工作流引擎和应用框架。 JBoss jBPM : 由JBoss开发的工作流和业务流程管理引擎,可以用于创建不同人、应用程序、服务之间交互的业务流程,还提供了可视...
  • 《疯狂Workflow讲义——基于Activiti的工作流应用开发》还讲解了如何在实际企业应用中使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所必需的Web Service、企业服务总线、规则引擎、IoC框架和ORM...
  • 《疯狂Workflow讲义——基于Activiti的工作流应用开发》还讲解了如何在实际企业应用中使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所必需的Web Service、企业服务总线、规则引擎、IoC框架和ORM...
  • 《疯狂Workflow讲义——基于Activiti的工作流应用开发》还讲解了如何在实际企业应用中使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所必需的Web Service、企业服务总线、规则引擎、IoC框架和ORM...
  • 《疯狂Workflow讲义——基于Activiti的工作流应用开发》还讲解了如何在实际企业应用中使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所必需的Web Service、企业服务总线、规则引擎、IoC框架和ORM...
  • 《疯狂Workflow讲义——基于Activiti的工作流应用开发》还讲解了如何在实际企业应用中使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所必需的Web Service、企业服务总线、规则引擎、IoC框架和ORM...
  • 《疯狂Workflow讲义——基于Activiti的工作流应用开发》还讲解了如何在实际企业应用中使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所必需的Web Service、企业服务总线、规则引擎、IoC框架和ORM...
  • OA工作流WorkFlow版本(前台JS实现)

    热门讨论 2012-01-30 12:46:57
    OA工作流WorkFlow版本(前台JS实现)
  • 《疯狂Workflow讲义——基于Activiti的工作流应用开发》还讲解了如何在实际企业应用中使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所必需的Web Service、企业服务总线、规则引擎、IoC框架和ORM...
  • java 工作流开发框架比较

    万次阅读 2012-06-20 11:23:23
    它是另一款遵循WfMC的XPDL标准开源工作流引擎,并且同时遵循OMG组织的Workflow Management Facility规范。在所有开源工作流引擎中,Shark的体系最为完备和复杂。其一直秉承着“模块化”的思想,所以比较容易扩展。...
  • .NET 5 开源工作流框架elsa技术研究

    千次阅读 2021-01-02 10:01:50
    编者注:工作流框架 elsa 是.NET基金会下面的开源项目,2.0版本即将在3月份发布,目前正在紧锣密鼓的开发之中,2020年2月份我也介绍过推荐一个很棒的开源工作流elsa-cor...
  • 《疯狂Workflow讲义:基于Activiti的工作流应用开发》内容概括: 本书是一本介绍Java工作流领域的书,以Activiti为核心,内容囊括了多个流行的企业级Java EE框架,全书主要可分为以下几个部分。 第1部分:对...
  • 工作流开源系统--DRAKE

    千次阅读 2018-06-22 09:55:46
    1工作流开源系统概要以下是各类数据分析的工作流pipeline管道模型的框架和库包,包含特定科学等业务领域行业或者通用领域,结合大数据big data分析的各种开放源码项目。包括下一代测序技术(NGS)打开了数据分析的空间...
  • 工作流WorkFlow)小记

    千次阅读 2006-03-28 10:54:00
    工作流Workflow)就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。工作流要解决的主要问题是:为实现某个业务目标,在多个参与者之间...
  • 工作流开源项目汇总

    千次阅读 2008-01-31 15:42:00
    (1) Willow 由Huihoo Power开发详细可到其中文主页查看,网址:http://www.huihoo.org/willow/documentation.html(2) OpenWFE OpenWFE是一个开放源码的Java工作流引擎。它是一个完整的业务处理管理套件:一个引擎...
  • snaker,是一款非常轻量级的国产工作流框架,这就好比权限控制框架spring security与shiro,前者是spring大厂,除了security外提供其他非常强大的框架,而shiro就相当简单,学习成本也低。因此,也就好比Jboss JBPM...
  • 工作流Activity框架入门(一)

    万次阅读 多人点赞 2016-06-05 23:02:42
    工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使...
  • 该项目为从高级模​​型生成工作流代码提供了一个框架。 它通过指定生成模板和重用适配器,使在该领域没有经验或经验很少的人可以在合理的时间内生成工作流代码。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,732
精华内容 1,492
关键字:

workflow工作流开源框架