ストリング・リテラルで com.sun.org.apache JAXP パッケージ名を使用しない

この規則は、以下の JAXP 1.3 パッケージ名のいずれかで始まるストリング・リテラルを検出します。

代用として望ましいものは、javax.xml.* パッケージ内の標準 Java SE API にあります。

例えば、
XMLReader parser = XMLReaderFactory.createXMLReader("com.sun.org.apache.xerces.internal.parsers.XMLParser");

これは、以下に置き換える必要があります。

XMLReader parser = XMLReaderFactory.createXMLReader();

引き続き JAXP の古い実装および内部クラスを使用したい場合、必要な JAR ファイルをダウンロードして、アプリケーションに組み込むことができます。Java 6 と Java 7 には javax.xml パッケージおよび org.apache パッケージを使用する JAXP 1.4 実装が組み込まれています。

マイグレーションの問題を簡単にするために、IBM Java 7 ではこれらの内部 API の一部が JRE に戻されました。 それでも、これらの内部 API を使用しないようにコードを変更することは、ベスト・プラクティスと見なされます。