Esta regra sinaliza as referências para <handler> dentro do elemento web.xml , webservicesclient.xml , webservices.xml e ejb-jar.xml . Os manipuladores são unidades de processamento adicionais aplicadas a cada solicitação ou resposta. Eles podem ser encadeados, permitindo que vários manipuladores processem uma solicitação em sequência. Quando um cliente envia uma solicitação, ela é processada por cada manipulador na ordem especificada nos descritores de implantação antes de ser enviada a um provedor. Por por exemplo, para registrar cada solicitação do cliente, é possível definir um manipulador que lê cada mensagem de solicitação e a grava em um arquivo. Os manipuladores também podem modificar solicitações e respostas. Devido à implementação das novas classes listadas abaixo, todos os métodos substituídos ou implementados anteriormente na classe do manipulador foram atualizados.
Houve várias alterações significativas na API do manipulador entre o JAX-RPC e o JAX-WS, algumas delas
são:
- Uma mudança na convenção de nomenclatura. De
javax.xml.rpc.handler.Handler
para
javax.xml.ws.handler.soap.SoapHandler
.
- A remoção de um
HandlerInfo
objeto.
- A remoção das duas classes que os manipuladores eram obrigados a implementar/extender anteriormente. Esses foram
javax.xml.rpc.handler.Handler
e
javax.xml.rpc.handler.GenericHandler
. Os manipuladores agora devem implementar
javax.xml.ws.handler.soap.SoapHandler
ou
javax.xml.ws.handler.LogicalHandler
.
Um exemplo da diferença de implementação entre os manipuladores JAX-RPC e os JAX-WS SOAPHandlers é o seguinte exemplo
exemplo a seguir de um LoggingHandler.
Ao usar os manipuladores JAX-RPC, sua declaração de classe seria semelhante a
assim:
E para definir a mesma classe usando Soap Handlers no JAX-WS: