2012-04-05 10 views
1

を指定しないでClassCastExceptionのJuelの-のimpl jarを含んプロジェクトで、JSPページにJSTLを使用することはできませんエラーは、次のとおりです。は理由ExpressionFactoryImpl

SEVERE: Servlet.service() for servlet [jsp] in context with path [] threw exception  [Unable to compile class for JSP] with root cause 
java.lang.ClassCastException: de.odysseus.el.ExpressionFactoryImpl cannot be cast to javax.el.ExpressionFactory 
at javax.el.ExpressionFactory.newInstance(ExpressionFactory.java:180) 
at javax.el.ExpressionFactory.newInstance(ExpressionFactory.java:107) 
at org.apache.jasper.compiler.PageInfo.<init>(PageInfo.java:79) 
at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:110) 
    ..... 

オーバーレイプロジェクトを持っている戦争のオーバーレイを、使用しているプロジェクトshindigの使用に必要なjuel-impl瓶。子プロジェクトのjspページでjstlを使用する方法はありますか?

答えて

3

あなたのクラスパスには2つの匹敵するEL APIがあります(Tomcatのものとアプリケーションのものがあります)。あなたの戦争ファイルには、el-api.jarまたはjuel-api.jarが含まれていてはなりません。これらの依存関係を除外してください。

+0

私はel-api.jarを除外しましたが、まだクラスパスのロードに関する問題があるようです。私のJSPページを実行すると、次のエラーが表示されます。 – chrismarx

+0

INFO:不正なアクセス:このWebアプリケーションインスタンスはすでに停止しています。 de.odysseus.el.tree.impl.ast.AstUnary $オペレータをロードできませんでした。結果的に続くスタックトレースは、デバッグ目的でスローされたエラーと、不正アクセスの原因となったスレッドを終了しようとするために発生し、機能上の影響はありません。 java.lang.IllegalStateException \t at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1564)at org.apache.catalina..WebappClassLoader.loadClass(WebappClassLoader.java:1523)at de.odysseus。 el.tree.impl.Parser.unary(Parser.java:573 – chrismarx

+0

と同様に - 根本原因 java.lang.ClassNotFoundException:de.odysseus.el.tree.impl.ast.AstUnary $オペレータ – chrismarx

1

Juel 2.1.3 jarは、次のjars juel-impl.jar、juel-spi.jar、およびjuel-api.jarの組み合わせです。 jum 2.1.3 jarをpomに含めて風袋に入れたときに同じ問題が発生しました。

この問題は、juel 2.1.3をpomから削除し、juel-implだけを追加することで解決します。

<依存>
<のgroupId> de.odysseus.juel </groupIdを>
<たartifactId> Juelの-IMPL < /たartifactId >
<バージョン> 2.2.6 < /バージョン>
< /依存>

また、 < > <依存> <のgroupId > de.odysseus.juel </groupIdを> <たartifactId > Juelの-API < /たartifactIdを追加したバージョン> 2.2.6 < /バージョン/依存> < >

juel 2.1.3 jarにはjavax/elインタフェースが含まれており、jsp-api jarの一部でもあります。

こちらがお役に立てば幸いです。

関連する問題