第5章 部署
jBPM是一个嵌入式BPM引擎,这意味着你可以象安装一个独立的软件产品并集成一样把jBPM嵌入到你自己的java工程中,可以这样做的一个主要方面就是最小化的依赖,本章讨论jbpm库及其依赖。
5.1 Java运行环境
jBPM3要求J2SE1.4.2+
5.2 jBPM库
jbpm-[version].jar是核心功能库。
5.3 第三方库
在一个最小化的部署中,你仅仅通过放置commons-logging和dom4j库到你的classpath,就可以使用jBPM创建和运行流程,但是这样不支持流程的持久化。如果你不使用流程的xml解析,可以移除dom4j库,改为编程创建对象图。
表格 5.1
|
库
|
用途
|
描述
|
目录
|
|
commons-logging.jar
|
在jBPM和hibernate中记录日至。
|
jBPM代码日志记录到commons logging,commons logging库可以被配置为分发日志到java1.4日志、log4j、…等等,有关怎样配置commons logging的更多信息请看apache commons 用户指南。如果你使用log4j,最简单的方式就是把log4j库和一个log4j.properties放置到classpath,commons logging将会自动检测并使用该配置。
|
lib/jboss(从jboss4.0.3)
|
|
Dom4j-1.6.1.jar
|
流程定义和hibernate持久化。
|
Xml解析。
|
lib/dom4j
|
jBPM的典型部署中将包括流程定义和流程执行的持久化,在这种情况下,jBPM除了对hibernate及其所依赖库之外不再有任何其他依赖。
当然,hibernate所需要的库依赖于环境以及你将使用的特性,详细信息请查询hibernate文档。下表给出了一个普通POJO部署环境下的指示。
jBPM的发布使用hibernate3.1,但是它也可以使用3.0.x,如果那样的话,你不得不在hibernate.queries.hbm.xml配置文件中更新一些hibernate查询,有关自定义查询的更多信息,请看“
7.6自定义查询”。
表格 5.2
|
库
|
用途
|
描述
|
目录
|
|
hibernate3.jar
|
hibernate持久化。
|
最好的O/R映射器。
|
lib/hibernate(hibernate3.1)
|
|
antlr-2.7.5H3.jar
|
由hibernate持久化的查询分析使用。
|
解析库。
|
lib/jboss(从jboss4.0.3)
|
|
cglib-2.1_2jboss.jar
|
hibernate持久化。
|
hibernate代理所使用的反射库。
|
lib/jboss(从jboss4.0.3)
|
|
Commons-collection.jar
|
hibernate持久化。
|
|
lib/jboss(从jboss4.0.3)
|
|
ehcache-1.1.jar
|
hibernate持久化(默认配置)。
|
二级缓存实现,当为hibernate配置不同的的缓存时,不需要本库。
|
lib/hibernate
|
|
jaxen-1.1-beta-4.jar
|
流程定义和hiberante持久化。
|
XPath库(由dom4j使用)。
|
lib/hibernate
|
|
jdbc2_0-stdext.jar
|
hibernate持久化。
|
|
lib/hibernate
|
|
asm.jar
|
hibernate持久化。
|
asm字节码库。
|
lib/hibernate
|
|
asm-attrs.jar
|
hibernate持久化。
|
asm字节码库。
|
lib/hibernate
|
beanshell库是可选的,如果你不包含它,你将不能把beanshell集成到jbpm流程语言中使用,并且你将会得到一个日志信息说“jbpm不能加载Script类,因此script元素不能使用”。
表格 5.3
|
库
|
用途
|
描述
|
目录
|
|
bsh-1.3.0.1.jar
|
beanshell脚本解释程序。
|
只用在script和decision元素中,当你不使用这些流程元素时,可以移除beanshell库,但是必须在hibernate.cfg.xml文件中注释掉Sceipt.hbm.xml映射行。
|
lib/jboss
|
发表于 @ 2008年04月14日 11:43:00|评论(loading...)|编辑