Stworzyłem serwer HTTP, który realizuje MessageListener i podłącza się do systemu MQ na podstawie JMS z pomocą javax.jms.ConnectionFactoy.
Fabryka związków wprowadza się do serwletu za pomocą adnotacji zasobu.
@Resource(name = "jms/ConnectionFactory")
private ConnectionFactory connectionFactory;
Zasób jest określona w context.xml plik konfiguracyjny.
Co przeżyłem, to to, że podczas kompilacji serwletu za pomocą Java 11, adnotacje javax.Zasób po prostu ignorowane, podczas gdy ja jeszcze mogę szukać zasób na podstawie jego nazwy bezpośrednio w kontekście. Ale kiedy компилирую go za pomocą Java 8, zasób wprowadza w аннотированное polu serwletu.
Czy ktoś może to wyjaśnić?
Innym momencie polega na tym, że przestrzeń nazw javax zamiana przestrzeni nazw jakarate przy przejściu z Java EE Jakarta EE. Duża część bibliotek JMS nadal realizowane z wykorzystaniem interfejsu javax.jms.*, takich jak ConnectionFactory, kolei itp.
Czy ma ktoś doświadczenie w tym, jak wygląda kompatybilność, czy konieczna jest ponowna implementacja bibliotek JMS?