This is a Chinese translation of the jbpm3.12 framework User Guide of JBoss. My translation style is a comparison between Chinese and English. I only translate some of what I think is important. I do not translate simple English, so as not to waste your time. At the same time, I will explain and write down some of the content in the translation.
Chapter 5. Deployment deployment
Jbpm is an embeddable BPM engine, which means that you can take jbpm and embed it into your own Java project, rather then installing a separate product and integrate with it. one of the key aspects that make this possible is minimizing the dependencies. this chapter discusses the jbpm libraries and their dependencies.
Jbpm is an embedded bpm (Business Program Management) engine. This chapter discusses the jbpm library and its dependent libraries.
5.1. Java Runtime Environment
Jbpm 3 requires j2se 1.4.2 +
5.2. jbpm Libraries
Jbpm-[version]. JarIs the library with the core jbpm functionality. Is the core function library of jbpm.
Jbpm-identity-[version]. JarIs the (optional) library containing an identity component as described in section 11.11, "the identity component ".
Optional. This library contains the Authentication component. Used for the management of Process participants.
5.3. Third Party libraries third-party library
In a minimal deployment, you can create and run processes with jbpm by putting only the commons-logging and dom4j library in your classpath. beware that persisting processes to a database is not supported. the dom4j library can be removed if you don't use the process XML parsing, but instead build your object graph programatically.
For the smallest jbpm deployment, you only need the core jbpm library, commons-logging library, and dom4j library to your classpath. In this case, the persistent business program to the database is not supported.
Table 5.1.
LibraryLibrary |
UsagePurpose |
DescriptionDescription |
DirectoryDirectory |
Commons-logging.jar |
Logging in jbpm and Hibernate |
The jbpm code logs to commons logging. the commons logging library can be configured to dispatch the logs to e.g. java 1.4 logging, log4j ,... see the Apache commons user guide for more information on how to configure commons logging. if you're used to log4j, the easiest way is to put the log4j lib and a log4j. properties in the classpath. commons logging will automatically detect this and use that configuration. |
LIB/JBoss (from JBoss 4.0.3 ) |
Dom4j- 1.6.1 . Jar |
Process Definitions and Hibernate Persistence |
XML Parsing |
LIB/dom4j |
A typical deployment for jbpm will include persistent storage of process definitions and process executions. In that case, jbpm does not have any dependencies outside Hibernate and its dependent libraries.
Typical jbpm deployment includes persistence business program definition and execution functions. Hibernate required
Of course, Hibernate's required libraries depend on the environment and what features you use. For details refer to the hibernate documentation. The next table gives an indication for a plain standalone pojo development environment.
The following table lists the third-party libraries required for a simple standard pojo deployment environment.
Jbpm is distributed with hibernate 3.1 final. but it can also work with 3.0.x. in that case, you might have to update a few hibernate queries in the hibernate. queries. HBM. xml configuration file. for more info about customizing queries, see section 7.6, "customizing queries"
Table 5.2.
LibraryLibrary |
Usage |
Description |
Directory |
Hibernate3.jar |
Hibernate Persistence |
The best O/R mapper |
LIB/hibernate (hibernate 3.1 final) |
Anlr- 2.7.5 H3.jar |
Used in query parsing by Hibernate Persistence |
Parser Library |
LIB/JBoss (from JBoss 4.0.3 ) |
Cglib-2.1_2jboss.jar |
Hibernate Persistence |
Reflection library used for hibernate proxies |
LIB/JBoss (from JBoss 4.0.3 ) |
Commons-collections.jar |
Hibernate Persistence |
|
LIB/JBoss (from JBoss 4.0.3 ) |
Ehcache-1.1.jar |
Hibernate Persistence (in the default configuration) |
Second level cache implementation. Second-level cache implementation. When processing ing a different cache provider for hibernate, this library is not required. |
LIB/hibernate |
Jaxen-1.1-beta-4.jar |
Process Definitions and Hibernate Persistence |
XPath Library (used by dom4j) |
LIB/hibernate |
Jdbc2_0-stdext.jar |
Hibernate Persistence |
|
LIB/hibernate |
ASM. Jar |
Hibernate Persistence |
ASM byte code library Binary code modification Library |
LIB/hibernate |
Asm-attrs.jar |
Hibernate Persistence |
ASM byte code library |
LIB/hibernate |
The beanshell library is optional. if you don't include it, you won't be able to use the beanshell integration in the jbpm process language and you'll get a log message saying that jbpm couldn't load the script class and hence, the script element won't be available.
Beanshell library is optional.
Table 5.3.
Library |
Usage |
Description |
Directory |
Bsh- 1.3.0 . Jar |
Beanshell script interpreter |
Only used in the script's and demo-'s. when you don't use these process elements, the beanshell lib can be removed, but then you have to comment out the script. HBM. XML mapping line inHibernate. cfg. xml |
LIB/JBoss |