jBPM與Spring整合淺析
1、創(chuàng)建公文流轉相關的實體類,并創(chuàng)建數(shù)據(jù)庫表
2、根據(jù)對用例的分析,初步建立公文流轉相關的接口
3、實現(xiàn)接口
- 集成JBPM到OA系統(tǒng)(第一步:創(chuàng)建數(shù)據(jù)庫表)
◆拷貝相關的依賴包到WEB-INF/lib下面(bsh.jar/ jcr-1.0.jar/ jbpm-identity.jar/ jbpm-jpdl.jar)
◆修改hibernate.cfg.xml,添加JBPM的映射配置,以及緩存屬性的配置
◆因為JBPM中的User對象與OA系統(tǒng)中的User對象名稱上有沖突,所以需要,修改OA系統(tǒng)中User映射的auto-import屬性為"false"。(參考User.hbm.xml)
◆當修改了User映射的auto-import="false"之后,需要在查詢User對象的時候,使用其全路徑類名(請參考UserManagerImpl.java)
◆啟動Tomcat,應能正確創(chuàng)建JBPM的所有數(shù)據(jù)庫表
- 集成JBPM到OA系統(tǒng)(第二步:與Spring集成)
◆JBPM與Spring整合,需要用到第三方的集成包:spring-modules-0.8.zip
◆將其中的spring-modules-jbpm31.jar拷貝到WEB-INF/lib下面即可
◆JBPM與Spring整合的方法是:將JbpmConfiguration對象的創(chuàng)建交給Spring來完成
◆所以,JBPM與Spring整合需要在spring配置文件中配置JbpmConfiguration對象的創(chuàng)建
配置JbmpConfiguration
- <bean id="jbpmConfiguration" class="org.springmodules.workflow.jbpm31.LocalJbpmConfigurationFactoryBean">
- <property name="configuration" value="classpath:jbpm.cfg.xml">
- property>
- bean>
◆這時候,需要jbpm.cfg.xml,這是JBPM的配置文件,我們可以從:JBPM_HOME\src\jpdl\org\jbpm目錄下拷貝default.jbpm.cfg.xml文件,并重新命名為jbpm.cfg.xml
- 集成JBPM到OA系統(tǒng)(第三步:如何實現(xiàn)業(yè)務邏輯類,請參考WorkflowManagerImpl.java)
◆用到jbpmConfiguration對象的時候,需要注入
◆當我們使用JbpmContext對象來操縱JBPM的時候,需要將JbpmContext的HibernateSession對象設置為當前的HibernateSession對象
- private JbpmContext getContext(){
- JbpmContext context = jbpmConfiguration.createJbpmContext();
- context.setSession(getSession());
- return context;
- }
【編輯推薦】