在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>
问题解决.
本文介绍了解决JBPM 4.4与JUEL在使用EL表达式时出现的ClassCastException错误的方法。通过在pom.xml文件中排除特定的JUEL依赖项,可以避免与JBPM中的EL实现冲突。
9870

被折叠的 条评论
为什么被折叠?



