ターゲットのオペレーティング・システムによっては、sun.security.x509 パッケージおよび sun.security.util パッケージ内のクラスおよびインターフェースが com.ibm.security.x509 パッケージおよび com.ibm.security.util パッケージ内のクラスおよびインターフェースに置き換えられる場合があります。
クイック・フィックスは、パッケージ名を、IBM Java ランタイム環境提供のパッケージを使用するように変更します。 規則は Java コードのインポート・ステートメント内および本文中の完全修飾名を検出します。
Java ランタイム環境に IBM と同等の API が含まれていない場合、この規則に関するクイック・フィックスを実行しないでください。 例えば、HP-UX および Solaris の JRE には IBM API が含まれていません。
この規則は、以下のようにパッケージ・インポートを検出します。
|
import sun.security.x509.*; import sun.security.util.*; |
クイック・フィックスは、これらを、com.ibm.security パッケージを使用するように変更します。
|
import com.ibm.security.x509.*; import com.ibm.security.util.*; |
この規則に関するクイック・フィックスを適用した後も、使用する API およびその使用方法によってはまだコードに変更が必要な場合があります。 Eclipse Java 問題マーカーを使用すると、sun.security.x509 API と com.ibm.security.x509 API の違いのために 必要な追加の変更を実行するのに役立ちます。 こうした違いの例として次のようなものがあります。
com.ibm.security.x509 クラスには、それ以上拡張できないように final の Java 修飾子が追加されました。sun.security.x509.ExtendedKeyUsageExtension はマップされません。com.ibm.security.x509.OCSPNoCheckExtension はマップされません。com.ibm.security.x509.X500Signer はマップされません。
AlgorithmId 静的フィールドの一部はマップされません。CertificateIssuerName.DN_PRINCIPAL はマップされません。この規則に関連した詳細情報については、以下を参照してください。