Moduły java.xml.bind i java.activation zostały usunięte z pakietu JDK 11 (implementacja niestandardowa)

Moduły java.xml.bind i java.activation zostały usunięte z pakietu JDK 11. Te moduły zawierały następujące pakiety:

Ta reguła oznacza aplikacje, w których używany jest dowolny z powyższych pakietów, a implementacja JAXB została umieszczona wraz z aplikacją w jednym pakiecie. Wcześniej implementacja JAXB mogła zakładać, że podane wcześniej interfejsy API są dostępne w pakiecie JDK. Jednak począwszy od pakietu JDK 11 te interfejsy API nie są już dostępne.

Jeśli implementacja JAXB została umieszczona wraz z aplikacją w jednym pakiecie, należy zaktualizować tę implementację, używając wersji kompatybilnej ze środowiskiem Java 11, która uwzględnia usunięte interfejsy API i implementację.

Innym rozwiązaniem jest przejście na domyślną implementację JAXB serwera Liberty. Można to zrobić, dodając składnik jaxb-2.2 do pliku konfiguracyjnego serwera Liberty server.xml. Ponadto wszystkie implementacje JAXB umieszczone wraz z aplikacją w jednym pakiecie muszą zostać usunięte, aby uniknąć wystąpienia problemów z ładowaniem klas.

Oprócz modułu java.xml.bind z pakietu JDK 11 zostały także usunięte narzędzia schemagen i xjc. Te narzędzia są dostępne w katalogu bin/jaxb serwera Liberty, który znajduje się w instalacji serwera Liberty.

Więcej informacji na temat zmian wprowadzonych w pakiecie JDK 11 zawiera publikacja Removal of Java EE and CORBA Modules (Usunięcie modułów Java EE i CORBA).