来到北京,今天的天气似乎是最好的,希望不要再有降温天气了。今日继续我们的审批流程,今天的内容似乎有点多,同学们需要努力学习哦!

我个人认为今天的内容多,是为因今天加入了测试部分。使用JBPM开发OA系统,说简单些就是将自定义表单数据放到JBPM工作流中流转。我们所需要实现的功能就是,使用户可以向系统中部署自定义工作流,用户可以自己添加自定义表单。我们通过编写通用表单实体,让任何自定义表单在工作流中流转即可。

我来总结一下今天的各部分重点内容。

一、表单定义

我们可以使用FCKEDIT这个免费的工具来设计自定义表单,但我们并未使用外部工具。而是自己编写了一个简单的表单设计工具,在下面我会一一介绍。

与其他模块一样,我们需要为表单定义(表单模板管理)编写自己的DispathcAction,根据下面的表单模板管理流程,编写DispatchAction。

在实现DispatchAction有必须先定义struts的ActionForm和表单定义的实体(FormDefinition),因为我们的OA系统可以添加任意自定义的表单,所以我们需要编写一个通用的ActionForm和FormDefinition。实体中具有哪些属性字段,是这里的难点。汤老师,在OA项目的第一就领着大家把事个系统简单分析了一下,之后的每次讲课都从大模块框架开始。因为只有讲了整个相关功能的大模块应用,才能更好的理解这些小模块需要什么,比如下面定义的实体是因为在生成表单实例时、提交申请和工作流流转时使用。我们先来看一下实体的全景图:

(新增加:FormDefinition、FormInstance、ApproveInfo,今日我们只学习FormDefinition)

FormDefinitionActionForm:

public class FormDefinitionActionForm extends ActionForm {

private static final long serialVersionUID = 1L;

private Long id;

private String name; // 自定义表单名称

private String templatePath;// 自定义表单存放路径(html)

private String processName;// 自定义表单使用的流程名称

private String[] propertyNameList; // 存放表单字段名称的数组与propertyValueTypeList对应

private Class[] propertyValueTypeList;// 存放表单字段类型的数组与propertyNameList对应

// setters and getters…

}

FormDefinition:

public class FormDefinition {

private Long id;

private String name; // 自定义表单名称

private String templatePath;// 自定义表单存放路径(html)

private String processName;// 自定义表单使用的流程名称

// 存放表单字段名称与字段类型的MAP

private Map<String,Class> fieldDefinitionList = new HashMap<String, Class>();

// setters and getters…

}

转:传智播客—jbpm与OA项目(七)相关推荐

  1. 传智播客 微金所项目实战

    微金所项目实战(出处:传智播客) 1. 搭建Bootstrap页面骨架及项目目录结构 ├─ /weijinsuo/ ··················· 项目所在目录 └─┬─ /css/ ···· ...

  2. 传智播客微金所项目实战移动web开发

    1.源码笔记 我的源码+笔记(很重要):链接: http://pan.baidu.com/s/1kULKqcJ 感谢传智播客项目相关视频:1.6天 链接: https://pan.baidu.com/ ...

  3. 传智播客php电商项目源码,shop thinkphp写的电子商城代码,原 为传智播客的教学 源码 WEB(ASP,PHP,...) 256万源代码下载- www.pudn.com...

    文件名称: shop下载  收藏√  [ 5  4  3  2  1 ] 开发工具: PHP 文件大小: 6807 KB 上传时间: 2016-04-19 下载次数: 0 提 供 者: 李二帅 详细说 ...

  4. 《传智播客.Net培训.net视频教程》(.net视频asp.net培训传智播客asp.net视频教程开放课程c#视频移动开发winform SQL ADO.Net HTML JavaScript

    本资源重要通知 2011年4月传智播客.Net培训-免费公开课现场视频 [重磅内容]微软移动开发介绍1-早起的鸟儿有食吃.rar 详情 53.2MB [重磅内容]微软移动开发介绍2-windows.p ...

  5. 成都传智播客Java培训

    成都传智播客Java培训,严格按照北京传智播客的教育模式,为西南IT行业培养了许多优秀的软件开发工程师. 我们有专为0基础.或者基础不够硬的学员开设的Java基础与加强班,让你轻轻松松跨进Java的世 ...

  6. 传智播客成都中心的Java课程设置

    传智播客成都中心的Java课程设置 传智播客成都中心作为西南地区最大的高素质软件开发人才培训机构之一,以其强大的专业教学团队,科学的教学课程体系,以及孜孜不倦.踏实务实的教学精神,现已为中国IT产业培 ...

  7. 传智播客JAVA培训20100524SPRING SECURITY

    传智播客JAVA培训20100524SPRING SECURITY 这两天反反复复的看了佟刚老师的教育办公管理系统的项目视频,真是感觉到该老师真是强大,讲的项目非常有技术含量,虽然到现在我都还是半知半 ...

  8. 传智播客年轻的老师们!!

    [传智播客的老师个个都是行业的领军人物]很多很年轻,他们是我们的榜样!!奋斗的目标!! ========================== ======== 传智老师 ======== [讲师介绍] ...

  9. php 传智播客 学习内容

    第一阶段:(PHP+MySQL核心编程) 课程名称 阶段课程 课程内容 学习目标 PHP+MySQL核心编程(21天) PHP基本语法加强 Apache--directory配置段 一个IP和多个域名 ...

最新文章

  1. 【Qt】sqlite数据库使用
  2. mate10的html5跑分,麒麟970逆天!华为Mate10跑分首曝:媲美骁龙835
  3. 什么时候该用MySQL,什么时候该用ES呢?
  4. MFC应用程序框架入门
  5. java面向对象高级分层实例_数据库操作类
  6. python3 Crypto环境
  7. 【快速入门ORM框架之Dapper】大牛勿进系列
  8. Matlab Tricks(二十一)—— 软阈值函数的实现
  9. Atlassian发布Bamboo 6.0和Bitbucket Server 5.0
  10. java项目技术方案_JavaWeb应用开发项目设计方案.doc
  11. 局域网共享工具_win10一键局域网共享工具使用教程
  12. vmware虚拟机卸载教程
  13. Android8.0一键root,小米mix 全网通(安卓8.0)一键ROOT教程,看教程ROOT
  14. 皮尔逊相关系数_皮尔逊相关系数(Person)
  15. 部分图像压缩技术的优缺点以及应用
  16. 线性代数学习笔记(二十八)——齐次方程组的解
  17. java中英文字幕和_为了边看美剧边学英语,我写了个字幕处理脚本
  18. 用html写箭头的原理,5个编写高质量箭头函数的最佳实践
  19. pictures for my GitHub -- Convenient Pic's URL offering
  20. 递归算法的时间&空间复杂度!

热门文章

  1. LNK2001: unresolved external symbol_WinMain@16
  2. linux下tshark安装及应用
  3. Linux中文件的压缩和解压缩
  4. vue简单实现多功能弹幕(比上一个好)
  5. 【Linux 内核 内存管理】分区伙伴分配器 ② ( free_area 空闲区域结构体源码 | 分配标志位 | GFP_ZONE_TABLE 标志位区域类型映射表 |分配标志位对应的内存区域类型 )
  6. Proxy(代理) ARP作用及原理
  7. python怎么使用证书_Python使用系统SSL证书?
  8. 关于maxIdle ,MaxActive,maxWait介绍
  9. 小程序博客(云开发)
  10. wuc-tab标签点击不了_不干胶标签专属定制