`
dellsoft
  • 浏览: 110913 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

grailsflow

阅读更多

grailsflow 具体地址 http://my.jcatalog.com/grailsflow/login

 

下面说说,grailsflow的流程处理.本人对工作流不熟悉,加之grailsflow文档有限。

只是粗略的看了下 grailsflow 的代码,如发现有错误,请指正留言。

 

 

grailsflow 分以下几个方面

1)流程定义 --就是定义流程要走那些步骤

2)流程处理 --就是定义流程如何来处理流程步骤

3)流程变量--流程需要用到的变量

4)流程执行

 

1)首先是你定义一个流程类型,比如说我定义请教流程  QJ

 

   grailsflow 就给你创建一个 QJ.groovy在WEB-INF\workarea\processes

2)然后,你需要再编辑这个 QJ流程来定义流程变量(实际就是流程表单,第一次启动流程需要填写本表单),再就是流程节点,有哪些处理流程。

  定义流程节点的时候,流程的节点类型有以下几种

  A)Wait ,就是需要人工干预才能执行的节点。

  B)Activitiy ,就是可以自动执行的节点

  C)fork ,分叉的节点

  D)Join | orJoin 需要合并的节点

 

grailsflow 利用 groovy 的 Builder方法 其中两个地方:

1)ProcessBuilder 是处理所有流程的入口,其中具体的流程是自己定义的 groovy 文件,存放在 WEB-INF\workarea\processes 目录

 

 

2)ActionBuilder 是处理所有工作流的执行方法,同样,具体的执行也是groovy 文件 存放在WEB-INF\workarea\ations

 

以 DocumentTestProcess 为例 当你启动了一个 DocumentTest 流程,

processBuilder 查找 DocumentTestProcess 这个 groovy文件,然后 利用 Builder 方法 来 处理 你在 DocumentTestProcess 的相关定义,同时,如果在DocumentTestProcess 中的方法名为action ,再利用 ActionBuilder来builder对应的方法。

 

所以,所有的流程和方法都是动态的。如果你修改了对应的Groovy文件,如Process 和Action定义后, 侧不用重启程序,就可以按新的定义来执行。 总之,弄懂了 grailsflow,你就弄通了 groovy builder ,也就会了解 groovy builder的强大。

 

2008-11-11 通过给grailsflow 开发人员邮件,他们告知,grailsworkflow 0.8将会在1-2内发布一个公共版本,目前他们在内部测试中。

分享到:
评论

相关推荐

    druid-1.0.11.jar

    javaee/javaweb常用jar包,亲测可用,导入到java工程中即可使用

    xmpcore-5.1.2.jar

    javaee/javaweb常用jar包,亲测可用,导入到java工程中即可使用

    node-v4.6.2-headers.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    node-v6.2.0-headers.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    ECharts-2.2.7.jar

    javaee/javaweb常用jar包,亲测可用,导入到java工程中即可使用

    validation-api-1.1.0.Final.jar

    javaee/javaweb常用jar包,亲测可用,导入到java工程中即可使用

    node-v0.10.47-headers.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    华中科技大学 计算机学科学与技术学院 实验资料 课程设计-大数据导论-内含源码和说明书(可自己修改).zip

    本项目是课程设计课程实验的demo,内含源码和说明书,可以自己修改

    循环小组作业.cpp

    循环小组作业.cpp

    哈工大(威海)编译原理课程实验的程序-内含源码和说明书(可自己修改).zip

    本项目是课程设计课程实验的demo,内含源码和说明书,可以自己修改

    grpcio-1.14.0-cp36-cp36m-manylinux1_i686.whl

    Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

    skywalking-springmvc-1.0-SNAPSHOT.war

    # 分布式链路追踪_skywalking_学习(1)

    jiguang-common-1.0.8.jar

    javaee/javaweb常用jar包,亲测可用,导入到java工程中即可使用

    基于matlab实现文档+程序NSGA-II多目标优化的matlab代码.rar

    基于matlab实现文档+程序NSGA-II多目标优化的matlab代码.rar

    node-v10.15.0-headers.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    AspectJ Java方面的集合,以促进面向方面的编程模式、日志记录、缓存验证等.zip

    AspectJ Java方面的集合,以促进面向方面的编程模式、日志记录、缓存验证等

    linux常用命令大全

    linux常用命令大全

    期末考试.py

    期末考试.py

    解密制度用python举例.md

    解密制度通常需要结合加密算法和密钥管理方法来确保解密操作的安全性和有效性

    node-v10.22.0-headers.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

Global site tag (gtag.js) - Google Analytics