Această regulă semnalează referinţele la <handler> element din interior web.xml , webservicesclient.xml , webservices.xml şi ejb-jar.xml fişiere. Handler-urile sunt unități de procesare suplimentare aplicate fiecărei cereri sau răspuns. Ele pot fi înlănțuite, permițând mai multor manipulatori să proceseze o cerere în secvență. Când un client trimite o solicitare, aceasta este procesată de fiecare handler în ordinea specificată în descriptorii de implementare înainte de a fi trimisă unui furnizor. De exemplu, pentru a înregistra fiecare cerere client, puteți defini un handler care citește fiecare mesaj de solicitare și îl scrie într-un fișier. De asemenea, managerii pot modifica cererile și răspunsurile. Datorită implementării noilor clase enumerate mai jos, toate metodele anterior suprascrise sau implementate în clasa handler au fost actualizate.
Au existat o serie de modificări semnificative în API-ul Handler între JAX-RPC și JAX-WS, unele dintre acestea sunt:
- O modificare a convenției de numire. De la
javax.xml.rpc.handler.Handler
până la
javax.xml.ws.handler.soap.SoapHandler
.
- Înlăturarea unui
HandlerInfo
obiect.
- Eliminarea celor două clase pe care Handler-ii trebuiau să le implementeze/prelungească anterior. Acestea au fost
javax.xml.rpc.handler.Handler
și
javax.xml.rpc.handler.GenericHandler
. Manipulatorii trebuie să implementeze acum
javax.xml.ws.handler.soap.SoapHandler
sau
javax.xml.ws.handler.LogicalHandler
.
Un exemplu de diferență de implementare dintre manevrele JAX-RPC și manipulatorii JAX-WS SOAPHandler este următorul exemplu de LoggingHandler .
Când utilizați manevrele JAX-RPC, declarația dvs. de clasă ar arăta astfel:
Și pentru a defini aceeași clasă folosind Soap Handlers în JAX-WS: