4

JBoss 4.2.3 で正しく動作するアプリケーション (.war ファイルにパック) を JBoss 5.1 (Java 5 を使用) にデプロイしようとしています。

現在、展開時に server.log に次のエラーが表示されます。

... 原因: org.jboss.xb.binding.JBossXBRuntimeException: 新しい SAX パーサーの作成に失敗しました

... 原因: java.lang.ClassCastException: org.apache.xerces.parsers.XML11Configuration

JBoss フォーラムのこのスレッドによると、アプリケーションを分離する必要があります。私の質問:

  1. JBoss 5.1 リリース ノートによると-既存の設定との主な違いは、値による呼び出しとデプロイメントの分離がデフォルトで有効になっていることです。したがって、アプリケーションを分離するように暗黙的に設定する必要は本当にあるのでしょうか?
  2. 同じアプリケーション サーバーが互いに衝突する複数のアプリケーションを実行している場合、主に分離が必要であると考えました。私の場合、アプリケーションを 1 つだけ実行しようとしています。では、やはり隔離が必要ですか?
  3. 上記の質問に対する答えが肯定的で、分離を強制する必要がある場合、どのように構成できますか? 私のwarファイルが「foo」と呼ばれているとします。次のセクションを jboss-web.xml に挿入する必要がありますか?
<jboss-web> 
  <loader-repository>
 tld.mydomain:loader=foo.war
 </loader-repository>
</jboss-web>
4

2 に答える 2

6

OK明らかに解決策は、私のweb-inf/libからxerces.jarを削除することです

バグが原因で分離が機能しません。こちらをご覧ください

于 2010-01-07T11:16:17.277 に答える
1

Failed to create a new sax parser エラーは、不要な JAR ファイルが WAR および EAR に存在する場合に発生するためです。そのため、これらの不要な JARS を削除することで、このエラーは解消されました。

于 2011-02-01T12:08:03.287 に答える