posts - 59, comments - 244, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          JBPM4.2安裝(2)

          Posted on 2009-12-04 00:08 penngo 閱讀(3122) 評論(3)  編輯  收藏 所屬分類: JBPM
          上一篇:JBPM4.2安裝
          繼續完成上一篇的安裝.


          4.在eclipse上安裝流程設計器(GPD),有兩個安裝方法。
          4.1.使用Eclipse軟件升級(Software Update)機制安裝設計器
          在gpd目錄下有一個gpd/jbpm-gpd-site.zip文件, 這就是更新站點(archived update site)的 壓縮包。

          在Eclipse里添加更新站點的方法:

          幫助 --> 安裝新軟件...
          點擊 添加...
          在 添加站點 對話框中,單擊 壓縮包...
          找到 gpd/jbpm-gpd-site.zip 并點擊 '打開'
          點擊 確定 在 添加站點 對話框中,會返回到 '安裝'對話框
          選擇出現的 jPDL 4 GPD 更新站點
          點擊 下一步.. 然后點擊 完成
          接受協議
          當它詢問的時候重啟eclipse
          重新啟動Eclipse,直接按Ctrl+N或File→New→other,你可以在對話框中看到有JBoss jBPM下有jBPM 4 Process Definition選項

          4.2.自己去官網下載設計器
          地址:http://sourceforge.net/projects/jbpm/files/在里面選擇jBPM Process Designer的最新版本下載(不同的jpd版本要與相應的Eclipse版本對應,不然會出現一些小問題)。
          下載回來后,解壓出來后把里面features,plugins里的包放進Eclipse相應文件夾features,plugins里面。
          重新啟動Eclipse,直接按Ctrl+N或File→New→other,你可以在對話框中看到有JBoss jBPM下有jBPM 4 Process Definition選項

          不過截止今天2009年12月3日,用Eclipse Update得到的GPD版本為jpdl4_1.2.0,而網上下載的是jpdl4_0.0.0,GPD節點的屬性與用戶指南文檔的介紹也不一致。

          5.定義jBPM用戶庫
          5.1在工作空間定義一個用戶庫, 用來放置jBPM的庫文件。
              點擊窗口 --> 屬性(Windows --> Preferences)
              選擇Java --> 創建路徑 --> 用戶類庫(Java --> Build Path --> User Libraries)
              點擊新建(New)
              類型名字jBPM Libraries
              點擊添加JARs(Add JARs...)
              找到jBPM安裝程序下的lib目錄
              選擇lib下的所有jar文件并點擊打開(Open)
              選擇jBPM Libraries作為入口
              重新點擊添加JARs(Add JARs)
              在jBPM的安裝程序的根目錄下選擇jbpm.jar文件
              點擊打開(Open)
              在jbpm.jar下選擇源碼附件(Source attachment)作為入口
              點擊編輯(Edit)
              在源碼附件的配置(Source Attachment Configuration)對話框中,點擊目錄(External Folder...)
              到jBPM安裝程序下的src目錄
              點擊選擇(Choose)
              點擊兩次'確定'(Ok)會關閉所有對話框

          6.測試
          6.1.現在開始新建一個例子測試下。
          新建一個java project,名test。
          右擊test項目工程,選擇Properties→Java Build Path→Libraries→Add Library→User Lirary→jBPM Libraries(引入用戶庫5.1建立的用戶庫jBPM Libraries)
          如果沒有執行5.1步驟,在Java Build Path→Libraries中選擇Add External JARs把JBPM4.2/lib的包和JBPM4.2目錄下的JBPM.jar加入到庫中。

          新建流程定義文新建src/jbpm/Order.jpdl.xml,這個文件的內容來自jbpm4.2jbpm-4.2\examples\src\org\jbpm\examples\services目錄下

          <?xml version="1.0" encoding="UTF-8"?>
          <process name="Order" xmlns="http://jbpm.org/4.2/jpdl">
            
          <start g="16,19,48,48">
              
          <transition to="receive confirmation" />
            
          </start>
            
          <state name="receive confirmation" g="96,16,136,52">
              
          <transition to="end" />
            
          </state>
            
          <end name="end" g="269,20,48,48"/>
          </process>



          新建類src/jbpm/JbpmTest.java

          package jbpm;

          import org.jbpm.api.Configuration;
          import org.jbpm.api.ExecutionService;
          import org.jbpm.api.HistoryService;
          import org.jbpm.api.ManagementService;
          import org.jbpm.api.ProcessEngine;
          import org.jbpm.api.RepositoryService;
          import org.jbpm.api.TaskService;

          public class JbpmTest {

           
          public static void main(String[] args) {
            Configuration configuration 
          = new Configuration();
               ProcessEngine processEngine 
          = configuration.buildProcessEngine();
               RepositoryService repositoryService 
          = processEngine.getRepositoryService();
               ExecutionService executionService 
          = processEngine.getExecutionService();
               TaskService taskService 
          = processEngine.getTaskService();
               HistoryService historyService 
          = processEngine.getHistoryService();
               ManagementService managementService 
          = processEngine.getManagementService();
               String deploymentId 
          = repositoryService.createDeployment()
                   .addResourceFromClasspath(
          "jbpm/Order.jpdl.xml")
                   .deploy();
           }

          }



          從jbpm-4.2\src目錄下找到jbpm.cfg.xml,jbpm.hibernate.cfg.xml,jbpm.mail.properties,jbpm.mail.templates.examples.xml復制到test/src目錄下,
          修改jbpm.hibernate.cfg.xml文件中的數據庫連接(使用Mysql)。
               <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
               <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
               <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/jbpmdb</property>
               <property name="hibernate.connection.username">root</property>
               <property name="hibernate.connection.password">123</property>

          運行JbpmTest代碼。

          如果出現[JDBCExceptionReporter] Cannot delete or update a parent row: a foreign key constraint fails (`jbpm`.`jbpm4_execution`, CONSTRAINT `FK_EXEC_INSTANCE` FOREIGN KEY (`INSTANCE_`) REFERENCES `jbpm4_execution` (`DBID_`))
          錯誤,把hibernate.dialect改為<property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>

           

          運行成功后,按啟動上一篇JBPM4.2安裝的tomcat,訪問http://localhost:8080/jbpm-console,登錄JBPM控制臺,可以看到剛才發布的流程

          在數據庫中也可看到jbpm4_deployment,jbpm4_deployprop,jbpm4_lob多了數據.
          如果訪問http://localhost:8080/jbpm-console時出現登錄失敗,需要在發布后重新加載用戶信息,進入jbpm-4.2\install,運行ant load.example.identities命令。出現這個問題的原因是因為在jbpm.hibernate.cfg.xml這個文件中配置問題,可以把 <mapping resource="jbpm.identity.hbm.xml" /> 這一句刪除或注釋掉,就不會出現發布時清空用戶的問題。

           測試代碼:jbpmTest.rar


          評論

          # re: JBPM4.2安裝(2)  回復  更多評論   

          2009-12-04 11:20 by pe
          研究下。

          # re: JBPM4.2安裝(2)  回復  更多評論   

          2010-09-03 00:49 by yQ
          第一篇呢? jBPM4-console 是單獨安裝配置么?還沒時間看呢,, 看到你寫了..:)

          # re: JBPM4.2安裝(2)  回復  更多評論   

          2010-12-13 12:40 by pandora jewelry
          在gpd目錄下有一個gpd/jbpm-gpd-site.zip文件, 這就是更新站點(archived update site)的 壓縮包
          主站蜘蛛池模板: 罗江县| 宜春市| 安塞县| 凤翔县| 临夏市| 云阳县| 原阳县| 曲周县| 沂水县| 古浪县| 沛县| 东辽县| 阳信县| 项城市| 阳西县| 长顺县| 金沙县| 眉山市| 忻城县| 周宁县| 伊通| 房山区| 读书| 旺苍县| 友谊县| 贵定县| 大英县| 大安市| 萨嘎县| 高青县| 信阳市| 阿城市| 高碑店市| 嫩江县| 苍梧县| 马尔康县| 威信县| 饶阳县| 平顺县| 伊吾县| 华坪县|