1

プロジェクトに Apache POI poi-ooxml ライブラリを含めようとすると、問題が発生します。私はMavenと次の依存関係を使用しています:

    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>3.8</version>
    </dependency>

しかし、これを行った後、Spring MVC アプリを再度起動できません。スタックトレースは次のとおりです。

例外が作成されました: org.springframework.beans.factory.BeanDefinitionStoreException: ServletContext リソース [/WEB-INF/context/applicationContext.xml] から XML ドキュメントを解析中に予期しない例外が発生しました。ネストされた例外は javax.xml.parsers.FactoryConfigurationError です: javax.xml.parsers.DocumentBuilderFactory のプロバイダが見つかりません

したがって、私が理解しているのは、poi-ooxml には、Spring が xml 構成ファイルを読み取るために使用するデフォルトの Java VM デフォルトのものをオーバーライドする別の xml パーサーが含まれているということです。

次の2つのライブラリを除外すると:

  • xmlbeans
  • xml-api

すべて正常に動作しています (Spring アプリを起動できます) が、もちろん Apache POI は、これら 2 つの必要なライブラリが不足しているため、機能しなくなりました...

どんなアドバイスでも大歓迎です;)

ありがとう

4

1 に答える 1

2

既存の Groovy アプリケーションに poi-ooxml を追加した後、同様の問題が発生しました。プロジェクトに xercesImpl を追加しましたが、動作しているようです。試してみるといいかもしれません。

<dependency>
   <groupId>xerces</groupId>
   <artifactId>xercesImpl</artifactId>
   <version>2.9.1</version>
</dependency>
于 2012-08-23T09:01:07.420 に答える