I have not worked in these days and have been idle for jbpm. Well, it was not very smooth and encountered several problems. I used jbpm 4.3 and tomcat 6.0.26. I didn't expect these two guys to launch a fight. I encountered an error when releasing the WEB Project and checked it online, it turns out that jbpm and tomcat are compatible. Here, I would like to thank a buddy from the blog Park for giving me the answer.
An error occurred while publishing the jbpm4-based Web project JSP page. The error is as follows:
Exception <br/> javax. servlet. servletexception: Java. lang. linkageerror: loader Constraint Violation: when resolving interface method "javax. servlet. JSP. jspapplicationcontext. getexpressionfactory () ljavax/El/expressionfactory; "The Class Loader (instance of org/Apache/Jasper/servlet/jasperloader) of the current class, org/Apache/JSP/onduty/wfmanage_jsp, and the class loader (instance of org/Apache/Catalina/loader/standardclassloader) for resolved class, javax/servlet/JSP/jspapplicationcontext, have different class objects for the Type javax/El/expressionfactory used in the signature <br/> Org. apache. jasper. servlet. jspservlet. service (jspservlet. java: 275) <br/> javax. servlet. HTTP. httpservlet. service (httpservlet. java: 717) </P> <p> root cause <br/> JAVA. lang. linkageerror: loader Constraint Violation: when resolving interface method "javax. servlet. JSP. jspapplicationcontext. getexpressionfactory () ljavax/El/expressionfactory; "The Class Loader (instance of org/Apache/Jasper/servlet/jasperloader) of the current class, org/Apache/JSP/onduty/wfmanage_jsp, and the class loader (instance of org/Apache/Catalina/loader/standardclassloader) for resolved class, javax/servlet/JSP/jspapplicationcontext, have different class objects for the Type javax/El/expressionfactory used in the signature <br/> Org. apache. JSP. onduty. wfmanage_jsp. _ jspinit (wfmanage_jsp.java: 27) <br/> Org. apache. jasper. runtime. httpjspbase. init (httpjspbase. java: 52) <br/> Org. apache. jasper. servlet. jspservletwrapper. getservlet (jspservletwrapper. java: 159) <br/> Org. apache. jasper. servlet. jspservletwrapper. service (jspservletwrapper. java: 329) <br/> Org. apache. jasper. servlet. jspservlet. servicejspfile (jspservlet. java: 342) <br/> Org. apache. jasper. servlet. jspservlet. service (jspservlet. java: 267) <br/> javax. servlet. HTTP. httpservlet. service (httpservlet. java: 717)
The reason is that the three jar packages (juel. jar, WEB-INF, juel-engine.jar) in the juel-impl.jar/lib in the project conflicts with the jar package (el-api.jar) in the Lib under tomcat6
Solution:
Method 1: replace tomcat5.5 with no problem
Method 2: copy the three packages juel. jar, juel-engine.jar and juel-impl.jar to the Lib under tomcat6 and delete the original el-api.jar,
Remember to delete juel. jar, WEB-INF, juel-engine.jar in juel-impl.jar/lib, or an error will still occur.