0

私のシステムhttp://www.primefaces.org/showcase-labs/ui/requestContext.jsfで requestContext デモ例を使用する

次のエラーが表示されます

Caused by: java.lang.ClassCastException: org.primefaces.context.DefaultRequestContext cannot be cast to org.primefaces.context.RequestContext
at org.primefaces.context.RequestContext.getCurrentInstance(RequestContext.java:38) [primefaces-3.4.1.jar:]

javaコマンド実行時に発生するエラー

RequestContext context = RequestContext.getCurrentInstance();

jboss AS 7.1 で jboss seam 2.3.0.Final の下で primefaces-3.4.1 を使用する

アミール

4

1 に答える 1

1

Webアプリケーションのランタイムクラスパスに複数の異なるバージョンのPrimeFacesJARファイルがあります。たとえば、1つのPrimeFaces3.3と別のPrimeFaces3.4.1です。それらは互いに競合しています。

Webアプリケーションのランタイムクラスパスをクリーンアップして、最新バージョンのみが残り、この問題が解消されるようにします。Webアプリケーションのランタイムクラスパスによってデフォルトでカバーされるパスは、Webアプリケーション自体の/WEB-INF/libフォルダー、サーバーおよび/またはJRE自身の/libフォルダー/lib/extです。


更新:別の、実際にはもっとまれな原因は、異なるクラスローダーによってロードされる同じバージョンの複数のPrimeFacesJARファイルがあることです。そのgetClass()場合、両方のクラスのが==チェックと一致することはありません。両方のいずれかを削除する必要があります。

于 2012-10-24T13:49:10.910 に答える