首先是安装4.4版本的插件.通过使用links方式安装好了插件,前提是7.0以上版本的myeclipse吧. 插件见附件jbpm_jpd_site.zip!
之后,由于插件对于中文支持不是太好,经常二次打开后,乱码,故修改myeclipse.ini,在最后加上 '-Dfile.encoding=UTF-8'. 这样做使得jbpm配置文件不再乱码.但是导致tomcat控制台中文乱码,再次修改tomcat目录下/bin/catalina.bat文件,在set JAVA OPT=XXX 这段话最后也加上'-Dfile.encoding=UTF-8' . 这样就搞定乱码问题了!
一 ssh整合jbpm了,其实很简单:
1.
首先写下jbpm在spring中的配置:
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean id="springHelper" class="org.jbpm.pvm.internal.processengine.SpringHelper">
<property name="jbpmCfg" value="jbpm.cfg.xml" />
</bean>
<bean id="processEngine" factory-bean="springHelper" factory-method="createProcessEngine" />
<bean id="repositoryService" factory-bean="processEngine" factory-method="getRepositoryService" />
<bean id="executionService" factory-bean="processEngine" factory-method="getExecutionService" />
<bean id="taskService" factory-bean="processEngine" factory-method="getTaskService"/>
<bean id="historyService" factory-bean="processEngine" factory-method="getHistoryService"/>
<bean id="identityService" factory-bean="processEngine" factory-method="getIdentityService"/>
<bean id="jbpmService" class="com.creditease.engine.flow.jbpm.service.JBPMServiceImpl" parent="baseService">
<property name="repositoryService" ref="repositoryService" />
<property name="taskService" ref="taskService" />
<property name="executionService" ref="executionService" />
<property name="jbpmLogService" ref="jbpmLogService" />
</bean>
<bean id="jbpmLogService" class="com.creditease.engine.flow.jbpm.log.JbpmLogServiceImpl" parent="baseService">
</bean>
</beans>
jbpmService是自己封装的工作流服务类,既然是做成组件,那当然业务对象里不能参合工作流的东西了.这个service一会再讲.
jbpmLogService是是用来做历史服务的,详细记录了什么人什么时间执行了什么流程,成功执行还是回退到某个流程.
jbpm.cfg.xml这个文件也是必须的,每天可连不上数据库哦:
<?xml version="1.0" encoding="UTF-8"?>
<jbpm-configuration>
<import resource="jbpm.default.cfg.xml" />
<import resource="jbpm.tx.spring.cfg.xml" />
<import resource="jbpm.jpdl.cfg.xml" />
<import resource="jbpm.bpmn.cfg.xml" />
<import resource="jbpm.identity.cfg.xml" />
<import resource="jbpm.businesscalendar.cfg.xml" />
<import resource="jbpm.console.cfg.xml" />
<!-- Job executor is excluded for running the example test cases. -->
<!-- To enable timers and messages in production use, this should be included. -->
<!--
<import resource="jbpm.jobexecutor.cfg.xml" />
-->
</jbpm-configuration>
最后,事务控制别忘了做哦:
<!-- 事务控制 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="saveOrUpdate" propagation="REQUIRED" />
<tx:method name="delete" propagation="REQUIRED" />
<tx:method name="get" read-only="true" />
<tx:method name="count" read-only="true" />
<tx:method name="find" read-only="true" />
</tx:attributes>
</tx:advice>
<tx:advice id="jbpmAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="*" propagation="REQUIRED" />
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="jbpmPointcut"
expression="execution(* com.creditease.engine.**.service.*.*(..))" />
<aop:pointcut id="servicePointcut"
expression="execution(* com.creditease.clic.**.service.*.*(..))" />
<aop:advisor advice-ref="txAdvice" pointcut-ref="servicePointcut" />
<aop:advisor advice-ref="jbpmAdvice" pointcut-ref="jbpmPointcut" />
</aop:config>
jbpmService最好注入在其他服务类中,使用时,调用其他服务类中带事务的方法也就保持了事务一致性了.
这样我们经过以上的一些配置,jbpm与sping就完成了结合的工作了.
二 jbpmService服务类,
下班了,下次有空再写吧.
目前在做接口,供其他开发人员调用,也就是说组件化jbpm.做完了,再上来说,继续忙!
分享到:
相关推荐
### jBPM配置心得与多种数据库环境搭建详解 #### 一、环境介绍及软件准备 在本篇文章中,我们将深入探讨如何在特定环境下配置JBPM工作流引擎,并使其与多种数据库(MySQL、Oracle等)兼容。为了更好地理解配置过程...
在深入学习和使用jBPM3的过程中,我积累了丰富的经验和心得,下面将分享一些关键知识点。 首先,jBPM3基于Java平台,利用JBOSS组织的支持,其核心组件包括流程定义语言(JPDL)、流程引擎以及工作流服务。JPDL是一...
- **流程建模**:可以使用图形化工具(如jBPM Eclipse Plugin)来创建流程模型,支持BPMN2.0标准。 - **流程实例化**:通过API启动一个流程实例,指定流程定义ID等参数。 - **任务管理**: - **任务查询**:获取待...
当Eclipse同时安装了MyEclipse和jBPM时,可能会遇到冲突,导致jBPM的流程设计器无法正常使用。这通常是由于插件之间的版本兼容性问题或者类加载器冲突所致。解决方法可能包括更新或降级相关插件,或者在Eclipse中...
学习笔记可能是一位有经验的开发者或学习者记录下的心得和体会,包含了他们在研究jbpm过程中遇到的问题、解决方案,以及一些实用的技巧和建议。这些笔记对于初学者来说尤其有价值,因为他们可以从中借鉴他人的经验,...
本资料汇总主要针对jbpm的学习,通过《JBPM学习心得(西西日志)》这份文档,我们可以深入理解jbpm的核心概念和使用方法。文档可能涵盖了以下内容: 1. **jbpm基础**:介绍jbpm的基本架构,包括工作流引擎、任务服务...
jbpm是一款免费开源的工作流引擎,虽然现在还不完善,但是用起来还是不错的..... 我学习jbpm的一些笔记心得
### JBPM 用户指南知识点 #### 一、JBPM 概述 - **1.1 什么是 JBPM?** - **定义**: JBPM 是一款高度灵活的业务流程管理...以上内容概括了JBPM用户指南的主要知识点,为用户提供了全面且详细的JBPM使用指导。
### jBPM工作流系统概览与实践案例 #### 核心知识点解析: **jBPM**(Java Business...通过以上步骤,不仅可以掌握jBPM的基本使用,还能深入了解其内部机制和最佳实践,为后续更复杂的工作流设计和实现打下坚实基础。
通过这个jbpm4.3 CHM教程,学习者可以系统地了解如何安装和配置jbpm环境,创建和执行第一个流程,使用工作流API进行编程,以及如何进行流程监控和优化。同时,教程可能还涵盖了与Drools的集成,以及如何利用jbpm的...
文件"JBPM4学习笔记.doc"可能包含了博主在学习过程中整理的详细笔记,涵盖了上述所有知识点的实践经验和心得,对于理解JBPM4.3的使用和开发有着重要的参考价值。 总结,JBPM4.3的学习笔记涵盖了流程建模、执行、...
在提供的链接博客中,作者黄嘉腾分享了他的学习和实践心得,可能包括遇到的问题、解决方案以及对jbpm4.4的理解。通过阅读和分析这些代码,开发者可以加深对jbpm工作原理的理解,提高自己在业务流程自动化领域的技能...
经过大量的失败之后,以及网上各位大哥的指点,终于将JBPM成功部署到了TOMCAT上面,本文就是一些心得.希望能给初学者带来点好处,有不明白可以加我QQ:376969488,共同交流和学习.
- **实践出真知**:通过实际运行示例项目,不仅可以直观感受到jBPM的能力,还能加深对其内部机制的理解。 通过上述内容,我们可以看到jBPM作为一种强大的工作流管理系统,在提高业务流程自动化水平、提升用户体验等...
开源工作流产品JBPM的开发指南,是本人在学习JPBM过程中一点心得体会,希望能给各位开发者在使用JBPM过程中带来帮助.
接着,"jBPM工作流应用开发指南目录.pdf"可能是整个jBPM开发文档的大纲,涵盖了从入门到进阶的所有主题,包括流程定义语言BPMN2的解析、jBPM的工作原理、流程实例的创建与管理、任务服务的使用、监听器和事件处理、...
自己学习jBPM4.2过程中的一些心得以及对官方文档的整理
jBPM使用JPA(Java Persistence API)来存储流程实例、任务、变量等信息,因此熟悉JPA和SQL也是必要的。同时,jBPM提供了基于Hibernate的持久化服务,了解其工作机制可以帮助优化性能。 在实践中,jBPM还可以与其他...