在pom.xml中加入jBPM4.4的支持, 用jetty6跑的时候发现, 在jsp中只要使用EL就会报:
java.lang.ClassCastException: de.odysseus.el.ExpressionFactoryImpl cannot be cast to javax.el.ExpressionFactory.
后来在jbpm-4.4.pom中发现这样一段话:
The juel engine is the library from scripting.java.sun.com that exposes juel as a jsr233 scripting engine. It's not part of the juel distribution. For some reason i don't recall, we uploaded it as an juel-engine artifact in the group juel. And more problematic, used the juel version (2.1.0) for it. That is not intuitive.
怀疑是这个问题,于是在jbpm-pvm下排除:
<dependency>
<groupId>org.jbpm.jbpm4</groupId>
<artifactId>jbpm-pvm</artifactId>
<version>4.4</version>
<exclusions>
<exclusion>
<groupId>juel</groupId>
<artifactId>juel-engine</artifactId>
</exclusion>
<exclusion>
<groupId>juel</groupId>
<artifactId>juel-api</artifactId>
</exclusion>
<exclusion>
<groupId>juel</groupId>
<artifactId>juel-impl</artifactId>
</exclusion>
</exclusions>
</dependency>
问题解决.