天天看点

spring整合JBPM4.4遇到的问题

1.使用tomcat6部署时

  1. 包的冲突,导致打开jsp报错,解决办法:删除tomcat下的el-api,把jbpm中的juel-api,juel-engine,juel-impl添加到tomcat的lib下。项目在导入jbpm的JAR包时一定不要到这三个包。
  2. 不能使用xml的方式部署,否则会找不到映射文件。使用文件方式部署。
  3. 使用的oracle 10的驱动包是oracle安装目录下的ojdbc14_g,jdbc.properties可以从jbpm-4.4\install\jdbc中获取。之前没有整合jbpm的时候使用的是class12.不会出现错误,但是整合了jbpm后就报找不到合适的驱动。

2.整合JBPM

  1. 需要导入的xml文件:spring.jbpm.cfg.xml(文件在jbpm-4.4\install\src\cfg\jbpm),导入和spring.jbpm.cfg.xml有关的所有xml文件,把JBPM的包直接放到lib下。导入hibernate映射文件。
  2. 在applicationContext.xml中加入
    <property name="mappingResources">
    			<list>
    				<value>jbpm.repository.hbm.xml</value>
          			<value>jbpm.execution.hbm.xml</value>
          			<value>jbpm.history.hbm.xml</value>
          			<value>jbpm.task.hbm.xml</value>
          			<value>jbpm.identity.hbm.xml</value>
    			</list>
    		</property> 
               
    <bean id="springHelper" class="org.jbpm.pvm.internal.processengine.SpringHelper">
    		<property name="jbpmCfg">
    			<value>spring.jbpm.cfg.xml</value>
    		</property>
    	</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="historyService" factory-bean="processEngine" factory-method="getHistoryService" /> 
      	<bean id="identityService" factory-bean="processEngine" factory-method="getIdentityService" /> 
      	<bean id="taskService" factory-bean="processEngine" factory-method="getTaskService" />
               
  3. 注入的时候出现。

          java.lang.ClassNotFoundException: org.objectweb.asm.Type

      添加包asm.jar