1、問題:org.hibernate.exception.ConstraintViolationException: could not delete: [org.jbpm.pvm.internal.model.ExecutionImpl#1]
連接Mysql5時,jBPM4運行到 End結點時的錯誤,把 hibernate.dialect 改為 org.hibernate.dialect.MySQLInnoDBDialect



2、問 題:org.hibernate.HibernateException: instance not of expected entity type: org.jbpm.pvm.internal.type.variable.UnpersistableVariable is not a: org.jbpm.pvm.internal.type.Variable

In case you still got the problem. I also had this error due to the fact the Object I was adding as a variable was not Serializable.

Implementing java.io.Serializable should fix this error.


意思是壓入上下文的對象要實現 Serializable接口


3、問題:Caused by: java.lang.ClassNotFoundException: de.odysseus.el.util.SimpleResolver

Requirements

JUEL requires Java 5 or later.

加入juel.jar

-------------------------
I think I get same problem when trying to integrate JBPM4 into my app. And I find out why.
Because you're using Tomcat 6.0... The lib el-api.jar in %tomcat_home%/lib conflicts with juel.jar, which exists in %jbpm4_home%/lib.

juel: <http://juel.sourceforge.net/> You will find the 2 jars define the same api for javax/el/ExressionFactory.

The solution is that you use Tomcat 5.5 instead of Tomcat 6.0. Because tomcat 5.5 uses commons-el.jar (Tomcat5.5/common/lib)

Or you can still use Tomcat 6.0, but you must replace el-api.jar with juel.jar. And don't forget to remove juel.jar from your app lib(A duplicate import, if you don't remove).

Try it!

---------------------------------------------------------
總結:刪掉tomcat6的el.jar,加入juel.jar,juel-impl.jar,juel-engine.jar