0

ドメインモードでJBossAS7.0.2を使用しているときに、 org.apache.xalan.xsltc.trax.SmartTransformerFactoryImpljavax.xml.transform.TransformerFactoryとして設定する際に問題が発生します。次のプロパティをstandalone.xmlに配置すると、すべてが機能しますが、host.xml(またはdomain.xml)のサーバーに同じプロパティを追加すると、サーバーが起動しません。

<property name="javax.xml.transform.TransformerFactory" value="org.apache.xalan.xsltc.trax.SmartTransformerFactoryImpl"/>

私のデプロイメントにはxalanlibがありますが、それをグローバルモジュールとして配置しようとさえしました。何も機能しませんでした。コンソールで次のエラーに気づきました。

[Server:server-one] Exception in thread "main" javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.xsltc.trax.SmartTransformerFactoryImpl not found
[Server:server-one]     at javax.xml.transform.TransformerFactory.newInstance(TransformerFactory.java:108)
[Server:server-one]     at __redirected.__TransformerFactory.<clinit>(__TransformerFactory.java:66)
[Server:server-one]     at __redirected.__JAXPRedirected.initAll(__JAXPRedirected.java:82)
[Server:server-one]     at org.jboss.modules.Module$1.run(Module.java:88)
[Server:server-one]     at org.jboss.modules.Module$1.run(Module.java:75)
[Server:server-one]     at java.security.AccessController.doPrivileged(Native Method)
[Server:server-one]     at org.jboss.modules.Module.<clinit>(Module.java:75)
[Server:server-one]     at org.jboss.modules.Main.main(Main.java:257)

プロパティを削除するだけで、サーバーは正常に機能します。

他に何ができますか?

JBoss AS7.0.2Finalを使用しています。

JBossコミュニティの同じ質問へのリンク

4

3 に答える 3

0

MANIFEST ファイルに依存関係を追加する必要があります。
たとえば、SmartTransformerFactoryImpl クラスを使用する JAR モジュールには、MANIFEST ファイルに次の行が必要です。

Dependencies: org.apache.xalan

Maven を使用している場合は、次の構成を maven JAR プラグインに追加することで、パッケージ化中にこの行を追加するように構成できます。

<configuration>
    <archive>
        <manifestEntries>
            <Dependencies>org.apache.xalan</Dependencies>
        </manifestEntries>
    </archive>
</configuration>
于 2013-03-05T10:06:14.923 に答える
0

私の推測では、xalan は JBoss 内のどこかに配置されており、初期の起動段階ではまだロードされていません。

可能な解決策:

  • システム プロパティの割り当てを延期する
  • xalan を jvm クラスパスに明示的に配置して、早期起動時にロードできるようにする
于 2013-02-28T17:40:34.413 に答える