最近在学习关于JBPM4的相关内容,集成开发工具用的是eclipse,数据库是mysql,学习材料是family168网站上的东西,在这里感谢family168。
问题一:
今天调试时,调用executionService.signalExecutionById(pi.getId());方法,让流程实例继续执行时报错,内容如下:
org.hibernate.exception.ConstraintViolationException: could not delete:
于是,百度了一下,找到了问题的原因与解决的办法,方法如下:
连接Mysql5时,jBPM4运行到 End结点时的错误,把 hibernate.dialect 改为 org.hibernate.dialect.MySQLInnoDBDialect 就Ok了。
参看:http://fireinwind.javaeye.com/blog/848515
问题二:
在学习“请假流程设计”时,在循环输出ProcessDefinition时,报如下错误:
java.lang.LinkageError: loader constraints violated when linking javax/el/ExpressionFactory class
再次百度,错误的原因与解决办法如下:
因为tomcat6下的el-api.jar与jBPM-4使用的juel.jar产生冲突。
解决方法一:改用tomcat-5.5。
解决方法二:将juel-api.jar, juel-engine.jar, juel-impl.jar三个包复制到Tomcat6.0的lib目录下,并删除Tomcat6.0的lib目录下el-api.jar包和WEB-INF/lib中的juel-api.jar, juel-engine.jar, juel-impl.jar三个包,也就是在项目中不包括juel-api.jar, juel-engine.jar, juel-impl.jar三个包。
http://www.javaeye.com/topic/577078
http://hi.baidu.com/roadrunners/blog/item/07721a83d2a8b9ae6d8119cb.html