<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    唯美古典
    Java入門,Struts,Hibernate,Spring,Groovy,Grails
    posts - 7,comments - 10,trackbacks - 0

    基本步驟

    1、集成JBPM到系統(tǒng)(第一步:創(chuàng)建數(shù)據(jù)庫(kù)表)

    * 拷貝相關(guān)的依賴包到WEB-INF/lib下面(bsh.jar/ jcr-1.0.jar/ jbpm-identity.jar/ jbpm-jpdl.jar)

        * 修改hibernate.cfg.xml,添加JBPM的映射配置,以及緩存屬性的配置,可從jbpm包下的config文件夾下參考其hibernate.cfg.xml文件

        *在使用Jbpm工作流引擎的時(shí)候,Hibernate配置文件一定要加上屬性

    <property name="hibernate.hbm2ddl.auto">update</property>

    Hbm2dll.auto是數(shù)據(jù)庫(kù)表和類自動(dòng)連接更新

        * 因?yàn)镴BPM中的User對(duì)象與OA系統(tǒng)中的User對(duì)象名稱上有沖突,所以需要修改系統(tǒng)中User映射的auto-import屬性為"false"。(參考User.hbm.xml)

        * 當(dāng)修改了User映射的auto-import="false"之后,需要在查詢User對(duì)象的時(shí)候,使用其全路徑類名(請(qǐng)參考UserManagerImpl.java)

        * 啟動(dòng)Tomcat,應(yīng)能正確創(chuàng)建JBPM的所有數(shù)據(jù)庫(kù)表

    2、 集成JBPM到系統(tǒng)(第二步:與Spring集成)

        * 集成JBPM與spring,需要用到第三方的集成包:spring-modules-0.8.zip

        * 將其中的spring-modules-jbpm31.jar拷貝到WEB-INF/lib下面即可

        * 集成JBPM與Spring的方法是:將JbpmConfiguration對(duì)象的創(chuàng)建交給Spring來完成

        * 所以,需要在spring配置文件中配置JbpmConfiguration對(duì)象的創(chuàng)建

            <!-- 配置JbmpConfiguration -->

            <bean id="jbpmConfiguration" class="org.springmodules.workflow.jbpm31.LocalJbpmConfigurationFactoryBean">

                <property name="configuration" value="classpath:jbpm.cfg.xml"></property>

            </bean>

        * 這時(shí)候,需要jbpm.cfg.xml,這是JBPM的配置文件,我們可以從:JBPM_HOME"src"jpdl"org"jbpm目錄下拷貝default.jbpm.cfg.xml文件,并重新命名為jbpm.cfg.xml

    3、集成JBPM到系統(tǒng)(第三步:如何實(shí)現(xiàn)業(yè)務(wù)邏輯類,請(qǐng)參考WorkflowManagerImpl.java)

        * 用到j(luò)bpmConfiguration對(duì)象的時(shí)候,需要注入 (<property name="jbpmConfiguration" ref="jbpmConfiguration"></property>)

        * 當(dāng)我們使用JbpmContext對(duì)象來操縱JBPM的時(shí)候,需要將JbpmContext的HibernateSession對(duì)象設(shè)置為當(dāng)前的HibernateSession對(duì)象

                private JbpmContext getContext(){

                    JbpmContext context = jbpmConfiguration.createJbpmContext();

                    context.setSession(getSession());

                    return context;

                }

    4、實(shí)現(xiàn)WorkflowManagerImpl

        - 理解基本的JBPM操作:流程定義、流程實(shí)例、任務(wù)列表、流向

    Jbpmssh整合常出現(xiàn)的問題

    1、因?yàn)?/span>JBPM中的User對(duì)象與OA系統(tǒng)中的User對(duì)象名稱上有沖突,所以需要修改OA系統(tǒng)中User映射的auto-import屬性為"false"。(參考User.hbm.xml

    * 當(dāng)修改了User映射的auto-import="false"之后,需要在查詢User對(duì)象的時(shí)候,使用其全路徑類名(請(qǐng)參考UserManagerImpl.java

    2、在使用Jbpm工作流引擎的時(shí)候,Hibernate配置文件一定要加上屬性

    <property name="hibernate.hbm2ddl.auto">update</property>

    Hbm2dll.auto是數(shù)據(jù)庫(kù)表和類自動(dòng)連接更新

    3jbpmSpring整合報(bào)錯(cuò):

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jbpmConfiguration' defined in ServletContext resource [/WEB-INF/classes/applicationContext.xml]: Initialization of bean failed; nested exception is java.lang.IllegalArgumentException: a beanFactoryReference already exists for key jbpmConfiguration

    解決方法:去掉struts-config.xml文件中的org.springframework.web.struts.ContextLoaderPlugIn,也就是與Spring整合的插件



    唯美古典的工作室
    posted on 2009-11-29 13:52 唯美古典 閱讀(3979) 評(píng)論(6)  編輯  收藏 所屬分類: SSH整合

    FeedBack:
    # re: Jbpm整合SSH詳解
    2009-11-30 15:50 | CoderDream
    應(yīng)該是SSH2吧,即Struts2+Spring+Hibernate!
    感謝分享!  回復(fù)  更多評(píng)論
      
    # re: Jbpm整合SSH詳解
    2009-11-30 16:35 | 唯美古典
    @CoderDream
    SSH,當(dāng)然SSH2也ok  回復(fù)  更多評(píng)論
      
    # re: Jbpm整合SSH詳解
    2009-12-01 12:14 | 創(chuàng)意禮物批發(fā)
    非常好的文章,謝謝樓主分享!!  回復(fù)  更多評(píng)論
      
    # re: Jbpm整合SSH詳解
    2009-12-01 20:06 | 唯美古典
    @創(chuàng)意禮物批發(fā)
    博客剛開始,希望以后發(fā)的東西也能對(duì)大家有用,我在ssh整合jbpm時(shí)碰到了第三個(gè)錯(cuò)誤,在網(wǎng)上搜了下也沒答案,結(jié)果自己整理出來,希望對(duì)大家有用  回復(fù)  更多評(píng)論
      
    # re: Jbpm整合SSH詳解
    2012-05-30 17:52 | sensen
    你這個(gè)是struts1把.  回復(fù)  更多評(píng)論
      
    # re: Jbpm整合SSH詳解[未登錄]
    2012-07-02 19:06 | 哇哈哈
    @唯美古典
    我也報(bào)了第三個(gè)錯(cuò)誤 ,,,可我的框架是hibernate+spring。沒有用到struts啊。更沒有什么struts.xml的文件。
      回復(fù)  更多評(píng)論
      

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲精品亚洲人成在线麻豆| 日本亚洲欧美色视频在线播放| 国产大片线上免费观看| 亚洲国产成人久久三区| 日本免费一本天堂在线| 伊人免费在线观看高清版| 亚洲国产一区在线观看| 亚洲国产高清精品线久久| 久草视频免费在线观看| 一个人看的www在线免费视频| 久久精品国产精品亚洲毛片| 国产免费人成视频在线观看| 久久国产精品成人片免费| 理论亚洲区美一区二区三区| 亚洲国产成人久久综合一| 免费人成在线观看播放国产| 1000部羞羞禁止免费观看视频| 黄色毛片免费观看| 亚洲免费电影网站| 亚洲国产精品乱码一区二区| 日韩精品无码人妻免费视频| 日本一卡精品视频免费| 特级毛片免费播放| 国内精品久久久久影院亚洲| 亚洲AV无码专区电影在线观看| 国产成人免费a在线视频app| 日本XXX黄区免费看| 免费视频精品一区二区三区| 男人免费视频一区二区在线观看| 亚洲午夜精品一区二区公牛电影院 | 四虎国产精品成人免费久久| 亚洲欧洲另类春色校园网站| 亚洲av女电影网| 国产成人亚洲精品影院 | 亚洲美女免费视频| 丁香五月亚洲综合深深爱| 国产无遮挡吃胸膜奶免费看视频 | 成人av免费电影| 日韩精品久久久久久免费| 中文字幕av免费专区| 黄色网页免费观看|