旧バージョンの Xerces または Xalan の使用
旧バージョンの Xerces (2.0 より前) または Xalan (2.3 より前) を endorsed ディレクトリーに入れて使用している場合、アプリケーションを起動したときに NullPointerException が発生する可能性があります。 この例外は、これらの従来バージョンではjaxp.propertiesファイルが正しく処理されないため、発生します。
この状態を避けるために、以下の次善策のいずれかを使用してください。
- 最新の Java™ API for XML Programming (JAXP) 仕様 (https://jaxp.dev.java.net/) を実装するアプリケーションの新しいバージョンにアップグレードします。
- jaxp.properties ファイルを削除します。
- AIX®の場合、 jaxp.properties.sample ファイルを /etc/java8[_64]/jre/libの jaxp.properties にコピーします。 jaxp.properties ファイルの項目のコメントを外します。 /etc/java8[_64]/jre/lib ディレクトリーから jaxp.properties ファイルへのシンボリック・リンクを作成します。
- -Dコマンドラインオプションを使用してjavax.xml.parsers.SAXParserFactory、javax.xml.parsers.DocumentBuilderFactoryまたはjavax.xml.transform.TransformerFactoryシステムプロパティを設定します。
- アプリケーションでjavax.xml.parsers.SAXParserFactory、javax.xml.parsers.DocumentBuilderFactory、javax.xml.transform.TransformerFactoryのシステム・プロパティーを設定します。 例は、JAXP 1.6 の仕様を参照してください。
- IBM_JAVA_OPTIONSまたはOPENJ9_JAVA_OPTIONS環境変数を使用して、SAXパーサー、資料ビルダー、またはTransformerファクトリを明示的に設定します。 例えば、UNIX ベースのシステムの場合は、以下のようになります。
またはexport IBM_JAVA_OPTIONS=-Djavax.xml.parsers.SAXParserFactory= org.apache.xerces.jaxp.SAXParserFactoryImpl
またはexport IBM_JAVA_OPTIONS=-Djavax.xml.parsers.DocumentBuilderFactory= org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
Windows では、 exportの代わりに set コマンドを使用します。export IBM_JAVA_OPTIONS=-Djavax.xml.transform.TransformerFactory= org.apache.xalan.processor.TransformerFactoryImpl
注:IBM_JAVA_OPTIONS 環境変数は非推奨になり、 OPENJ9_JAVA_OPTIONS 環境変数に置き換えられました。
注: IBM XML 実装は、 IBM® SDK, Java Technology Edition バージョン 8 では非推奨であり、将来のリリースでは Oracle XML 実装に置き換えられます。