工作流JBPM_day01:1-说明

先只做请假功能,怎么做?

(请假可以和考勤整合到一起)

1,银行(拿号---叫号---办理)

2,餐馆(点菜---上菜---结账)

3,网购(下订单--配送--收货)

...

1,存储数据

2,有状态

一、请假

  请假单表

  表中有状态字段

二、订单

  订单表

  表中有状态字段

流程一:2个环节 --变化--> 4个环节 --变化--> 8个环节 --> 6个环节

流程二:3个环节

流程n :m个环节

50个流程

支持流程的OA

==================================================================

问题:

  流程多

  流程会有变化

  一变化就要改程序(程序员)

目标:

  不改程序

  即程序中支持用户定制流程与申请模板(用户)

  要有方便好用用户界面。

方案:

  通过上传下载实现定制模板。

  用画图的方式定制流程。

实现:

  ?画图程序怎么做(Swing/AWT+Applet,Flex)

  ?制定一个什么样的流程规则

  ?按规则解析与执行流程

MyProcessDesigner_流程设计器

保存到桌面first.zip压缩文件

<process>

  <start next="提交申请">

  <node name="提交申请" assignee="员工" next="部门经理审批"/>

  <node name="部门经理审批" assignee="部门经理" next="总经理审批"/>

  <node name="总经理审批" assignee="总经理" next="end"/>

  <end name="end">

</process>

===> 工作流框架 / 工作流管理系统

需要用户定流程的情况(流程多、变化)

需要做的事:

  1,新建数据库,名称为:jbpm4console,要是utf8的编码:

    create database jbpm4console default character set utf8;

  2,默认的用户名为root,密码为root。如果不一样,就要修改一下:在配置文件 tomcat-6.0.14\webapps\MyJbpm4-Console\WEB-INF\classes\jbpm.hibernate.cfg.xml 中。

  3,启动Tomcat:演示程序_2011-01-05\tomcat-6.0.14\bin\startup.bat

  4,打开浏览器,访问:http://localhost:8080/MyJbpm4-Console/

注意:

  1,要求JDK为1.6

  2,一定要要配置 JAVA_HOME

  3,不要配置 CATALINA_HONE,否则启动不是当前的Tomcat(已经修改了startup.bat,现在没有这个问题了)

  4,如果要修改数据库连接信息,配置文件是:

    演示程序_2011-01-05\tomcat-6.0.14\webapps\MyJbpm4-Console\WEB-INF\classes\jbpm.hibernate.cfg.xml

    连接编码要是UTF8

    如果是MySQL,方言一定要是MySQL5InnoDBDialect

说明

  1,画流程图时,查看Source有时是乱码!

    这个问题的解决办法是:画流程图时先保存一下,再查看Source。

  2,如果部署流程定义时出错:

    java.lang.IllegalArgumentException

    java.util.zip.ZipInputStream.getUTF8String(ZipInputStream.java:303)

    java.util.zip.ZipInputStream.getFileName(ZipInputStream.java:436)

    java.util.zip.ZipInputStream.readLOC(ZipInputStream.java:255)

    java.util.zip.ZipInputStream.getNextEntry(ZipInputStream.java:82)

    org.jbpm.pvm.internal.repository.DeploymentImpl.addResourcesFromZipInputStream(DeploymentImpl.java:105)

    cn.itcast.jbpm4console.view.struts.action.DeploymentAction.deploy(DeploymentAction.java:50)

  则是因为zip中不能有中文的文件名,改为英文的即可。

登录部门经理

登录总经理

工作流JBPM_day01:1-说明_MyProcessDesigner_流程设计器的更多相关文章

  1. activiti工作流的web流程设计器整合视频教程 SSM和独立部署

    本视频为activiti工作流的web流程设计器整合视频教程 整合Acitiviti在线流程设计器(Activiti-Modeler 5.21.0 官方流程设计器) 本视频共讲了两种整合方式 1. 流 ...

  2. activiti工作流的web流程设计器整合视频教程 SSM 和 独立部署

    本视频为activiti工作流的web流程设计器整合视频教程 整合Acitiviti在线流程设计器(Activiti-Modeler 5.21.0 官方流程设计器) 本视频共讲了两种整合方式 1. 流 ...

  3. F2工作流引擎之-纯JS Web在线可拖拽的流程设计器(八)

          Web纯JS流程设计器无需编程,完全是通过鼠标拖.拉.拽的方式来完成,支持串行.并行.分支.异或分支.M取N路分支.会签.聚合.多重聚合.退回.传阅.转交,都可以非常方便快捷地实现,管理员 ...

  4. activiti工作流的web流程设计器整合视频教程

    本视频为activiti工作流的web流程设计器整合视频教程 整合Acitiviti在线流程设计器(Activiti-Modeler 5.21.0 官方流程设计器) 本视频共讲了两种整合方式 1. 流 ...

  5. java 工作流项目源码 SSM 框架 Activiti-master springmvc 集成web在线流程设计器

    即时通讯:支持好友,群组,发图片.文件,消息声音提醒,离线消息,保留聊天记录 (即时聊天功能支持手机端,详情下面有截图) 工作流模块---------------------------------- ...

  6. activiti web流程设计器 工作流的 整合视频教程 SSM和独立部署

    本视频为activiti工作流的web流程设计器整合视频教程 整合Acitiviti在线流程设计器(Activiti-Modeler 5.21.0 官方流程设计器) 本视频共讲了两种整合方式 1. 流 ...

  7. .NET 开源工作流: Slickflow流程引擎高级开发(十) -- BpmnJS流程设计器集成

    前言: 在Slickflow产品开发过程中,前端流程设计器经历了几个不同的版本(jsPlumb, mxGraph等),目的是为了在设计流程时的用户体验更加良好,得到客户的好评和认可.BpmnJS流程设 ...

  8. YbSoftwareFactory 代码生成插件【十六】:Web 下灵活、强大的审批流程实现(含流程控制组件、流程设计器和表单设计器)

    程序=数据结构+算法,而企业级的软件=数据+流程,流程往往千差万别,客户自身有时都搞不清楚,随时变化的情况更是家常便饭,抛开功能等不谈,需求变化很大程度上就是流程的变化,流程的变化会给开发工作造成很大 ...

  9. 纯JS Web在线可拖拽的流程设计器

    F2工作流引擎之-纯JS Web在线可拖拽的流程设计器 Web纯JS流程设计器无需编程,完全是通过鼠标拖.拉.拽的方式来完成,支持串行.并行.分支.异或分支.M取N路分支.会签.聚合.多重聚合.退回. ...

随机推荐

  1. <a>标签实现锚点跳跃,<a>标签实现href不跳跃另外加事件(ref传参)

    1.锚点跳跃 HTML: <div class="page_title" id="maodian"> <h1>客房节日价格管理</ ...

  2. (三)hibernate单表操作

    0. 贴上节hbm文件 <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hib ...

  3. Windows7清除图标缓存

    以下是批处理文件代码: rem 关闭Windows外壳程序explorer taskkill /f /im explorer.exe rem 清理系统图标缓存数据库 attrib -h -s -r & ...

  4. LeetCode 155 Min Stack(最小栈)

    翻译 设计支持push.pop.top和在常量时间内检索最小元素的栈. push(x) -- 推送元素X进栈 pop() -- 移除栈顶元素 top() -- 得到栈顶元素 getMin() -- 检 ...

  5. c# 高效的线程安全队列ConcurrentQueue

    c#高效的线程安全队列ConcurrentQueue<T>(上) c# 高效的线程安全队列ConcurrentQueue(下) Segment类 c#高效的线程安全队列Concurrent ...

  6. tp读取器和写入器

    一.读取器 控制器调用如下: //以ID的方式查询数据$user=User::get(3);//查询ID为3的单条数据echo $user->username;//以对象的方式显示对应的字段值 ...

  7. Java Persistence with MyBatis 小结1

    数据持久层做的工作是1)将从数据库中查询到的数据生成需要的java对象:2)将 Java 对象中的数据通过 SQL 持久化到数据库中. MyBatis 通过抽象底层的 JDBC 代码,自动化 SQL ...

  8. WebSocket 学习--用nodejs搭建服务器

    最简单的socket服务端 var net = require("net"); server1 = net.createServer(function(client){ clien ...

  9. atitit.提升软件开发的生产力关健点-------大型开发工具最关健

    atitit.提升软件开发的生产力关健点-------大型开发工具最关健 1. 可以创作出更好的工具遍历自己 1 2. 大型工具包括哪些方面 2 2.1. ide 2 2.2. dsl 2 2.3.  ...

  10. 编译g++后更新libstdc++.so.6链接

    若不更新链接,运行时可能会发生错误: ./a.out: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by ...