Java SOAPHandler与LogicalHandler
有人能解释一下,如果我们可以在Java SOAPHandler与LogicalHandler,java,web-services,jax-ws,java-metro-framework,Java,Web Services,Jax Ws,Java Metro Framework,有人能解释一下,如果我们可以在JaxWs中使用SOAPHandler做更多的事情,为什么我们需要LogicalHandler?来自JAX-WS 2.2: JAX-WS 2.0定义了两种类型的处理程序: 逻辑处理程序 对消息上下文属性和消息有效负载进行操作。合乎逻辑 处理程序与协议无关,无法影响协议 消息的特定部分。逻辑处理程序是 实现javax.xml.ws.handler.LogicalHandler。协议处理程序 对消息上下文属性和特定于协议的消息进行操作 协议处理程序特定于特定协议,可以访
JaxWs
中使用SOAPHandler
做更多的事情,为什么我们需要LogicalHandler
?来自JAX-WS 2.2:
JAX-WS 2.0定义了两种类型的处理程序:
逻辑处理程序
对消息上下文属性和消息有效负载进行操作。合乎逻辑
处理程序与协议无关,无法影响协议
消息的特定部分。逻辑处理程序是
实现javax.xml.ws.handler.LogicalHandler。协议处理程序
对消息上下文属性和特定于协议的消息进行操作
协议处理程序特定于特定协议,可以访问
并更改消息的特定于协议的方面。协议处理程序
是实现从javax.xml.ws派生的任何接口的处理程序-
.handler.handler,javax.xml.ws.handler.LogicalHandler除外
非SOAP协议的处理程序应实现
扩展javax.xml.ws.handler.handler的协议特定接口
因此,简而言之,如果您不需要处理任何SOAP,则不需要实现SOAPHandler
。一个用例可能是只处理HTTP头、附件或检查HttpServletRequest
的处理程序。是的,您可以使用SOAPHandler
做更多的事情,但有时您不需要访问SOAP头、SOAPMessage
或负载DOM访问