Aspose.Cells for Java 23.12がサポートしている Apache Xercesのバージョンを教えてください
Apache Xerces は Aspose.Cells と直接関係ありません。Aspose.Cells は Excel ファイル (.xls、.xlsx、.xlsm など) を操作するためのライブラリであり、Apache Xerces は Aspose.Cells の必須または特定の依存関係ではありません。Aspose.Cells for Java は、コア機能に関して Apache Xerces に直接依存していません。Aspose.Cells の機能は Excel ファイルの読み取り、書き込み、および操作に重点を置いており、Xerces のような XML パーサーを明示的に必要としません。
Aspose.Cellsは、明示的にはXercesを使用していない、ということですね。
Java8→17、Aspose.Cells for Java 7.3.2→23.12 にバージョンアップして、下記サイトと同じエラー内容になりました。Aspose.Cellsが、暗黙的にはXercesを使用するようになっており、エラーになっている、という可能性はございますか? 切り分けのために、どのような手順が考えられるでしょうか? Aspose.Cellsが、Xercesを使用する場合、下限バージョンなどございますか?
エラーログ内容は下記です。
2024-11-14 15:34:07,446 ERROR CATALINA - クラス [XX.model.XXContextListner] のリスナインスタンスにコンテキスト初期化イベントを送信中の例外です [http-nio-0.0.0.0-5858-exec-1]
java.lang.AbstractMethodError: Receiver class org.apache.xerces.jaxp.DocumentBuilderFactoryImpl does not define or inherit an implementation of the resolved method ‘abstract void setFeature(java.lang.String, boolean)’ of abstract class javax.xml.parsers.DocumentBuilderFactory.
at com.aspose.cells.a.a._t.b(Unknown Source)
at com.aspose.cells.License.setLicense(Unknown Source)
at XX.model.XXContextListner.contextInitialized(XXContextListner.java:67)
先ほどお話ししたように、Aspose.CellsはXercesを直接呼び出すわけではなく、様々なファイルを読み込んでworkbookを構築する際に、独自のXMLパーサーを使用しています。ライセンスを設定する際のみ、DocumentBuilderFactoryを使用してDocumentを構築します。
異なるJavaバージョンにおいて、これらのJava組み込みインターフェースの実装や設定がXercesを利用しており、かつ設定が適切でない場合、この種の例外が発生する可能性があります。ご引用の投稿にあるように、ご自身の環境でバージョンが競合しているか、あるいは古すぎるバージョンを使用していないかをご確認ください。
プロジェクトに含まれていた、xercesImpl.jar を削除したところ、エラー解消されました。
色々とご教示頂き、ありがとうございました。