Klasy i interfejsy w pakiecie com.sun.net.ssl zostały zastąpione przez klasy i interfejsy w pakiecie javax.net.ssl.
Zautomatyzowana poprawka zmienia odwołania do pakietu com.sun.net.ssl na javax.net.ssl. Skopiuj konfigurację niestandardową do pliku budowania aplikacji, aby włączyć automatyzację poprawek. Reguła wykrywa pełne nazwy zawarte w instrukcjach importu i w treści kodu Java.
Na przykład fragmenty kodu, takie jak
import com.sun.net.ssl.X509KeyManager;
if (keyManager instanceof com.sun.net.ssl.X509KeyManager)
|
są zmieniane do postaci
import javax.net.ssl.X509KeyManager;
if (keyManager instanceof javax.net.ssl.X509KeyManager)
|
Zautomatyzowana poprawka zmienia import pakietu, na przykład
import com.sun.net.ssl.*;
|
na
Po zastosowaniu zautomatyzowanych poprawek dla tej reguły można wprowadzić wiele zmian w zależności od tego, które interfejsy API są używane i w jaki sposób.
Aby ułatwić sobie wprowadzanie zmian wynikających z różnic między interfejsami API pakietu com.sun.net.ssl i pakietu javax.net.ssl, można użyć znaczników problemów Java dostępnych na platformie Eclipse.
Poniżej przedstawiono kilka przykładów różnic:
- W klasach javax.net.ssl.KeyManager, javax.net.ssl.KeyManagerFactory,
javax.net.ssl.TrustManager i javax.net.ssl.TrustManagerFactory dodano modyfikator języka Java
final do niektórych metod. Metod tych nie można już przesłaniać.
- W klasie javax.net.ssl.X509KeyManager zmieniono typy parametrów w metodach chooseClientAlias i chooseServerAlias.
- W klasach javax.net.ssl.KeyManagerFactorySpi i javax.net.ssl.TrustManagerFactorySpi usunięto metodę engineInit(KeyManagerFactoryParametersSpec arg0).
W jej miejsce dodano nowe metody.
- W klasie javax.net.ssl.SSLContextSpi
usunięto metodę engineInit(String arg0, String arg1, String arg2). W jej miejsce dodano nowe metody.
- W klasie javax.net.ssl.SSLContext zmieniono argumenty metody init.
- W klasie javax.net.ssl.X509TrustManager zmieniono metody isClientTrusted i isServerTrusted.
Zamiast nich należy używać metod checkClientTrusted i checkServerTrusted z odpowiednimi parametrami.
- Klasa javax.net.ssl.HttpsURLConnection zawiera nowe metody abstrakcyjne do zaimplementowania.
- Klasa javax.net.ssl.KeyManagerFactorySpi zawiera nowe metody abstrakcyjne do zaimplementowania.
- Klasa javax.net.ssl.SSLContextSpi zawiera nowe metody abstrakcyjne do zaimplementowania.
- Klasa javax.net.ssl.TrustManagerFactorySpi zawiera nowe metody abstrakcyjne do zaimplementowania.
- Interfejs javax.net.ssl.HostnameVerifier ma nową metodę do zaimplementowania.
- Interfejs javax.net.ssl.X509KeyManager zawiera nowe metody do zaimplementowania.
- Interfejs javax.net.ssl.X509TrustManager zawiera nowe metody do zaimplementowania.
Informacje dodatkowe dotyczące tej reguły znajdują się w następujących dokumentach: