9

Weblogic クラスローダは、私の war のライブラリよりもシステム ライブラリを好むようWEB-INF/lib/です。

で次のように設定しようとしましたがWEB-INF/weblogic.xml、成功しませんでした:

<weblogic-web-app>
    <container-descriptor>
        <prefer-web-inf-classes>true</prefer-web-inf-classes>
    </container-descriptor>
</weblogic-web-app>

これにより、多くの VerifyErrors が発生します。

exception is java.lang.VerifyError: (class: org/apache/xerces/parsers/AbstractSAXParser, method: parse signature: (Lorg/xml/sax/InputSource;)V) Incompatible object argument for function call
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:730)
        at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:196)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1003)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:907)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)
        Truncated. see log file for complete stacktrace

(WAR を EAR にパッケージ化することは避けようとしています。)

4

3 に答える 3

5

-Djavax.xml.parsers.SAXParserFactory=[xerces sax parser factory class name]Weblogic の起動時に (検証 SchemaFactory などの他の JAXP ファクトリについても同様に)指定する以外に、これを満足に修正することはできませんでした。

prefer-web-infおそらく、WAR / EAR構成ファイルを読み取る前にWeblogicが起動時にJAXPライブラリを必要とするため、フィルタリング/ものはどれも機能しませんでした。

于 2011-06-15T07:55:58.297 に答える
1

このビデオでは、WebLogic FilteringClassLoaders を構成するためのオプションの概要を説明しています。

http://www.youtube.com/watch?v=ArLTKapjV_8

于 2011-06-09T19:28:37.617 に答える
0

tomcat-arquillian でもこの問題が発生しました。「xml-apis 2.0.2」が私のクラスパスにあったことがわかりました。これは実際にはxml-apis 1.0.b2であり、xml-apis 1.3.04を必要とするxercesImpl 2.9.1と互換するには古すぎます。

于 2011-08-24T10:02:15.383 に答える