SOAPHandler与LogicalHandler

时间:2016-10-26 21:06:29

标签: java web-services jax-ws java-metro-framework

任何人都可以解释一下,如果我们可以使用@Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); switch(requestCode) { case (1) : { if (resultCode == RESULT_OK) { mViewPager.setCurrentItem(QRCODE_POSITION, true); // HOW TO UPDATE QRCODELISTFRAGMENT WITH DATA? } break; } } } 中的LogicalHandler做更多事情,我们为什么需要SOAPHandler

1 个答案:

答案 0 :(得分:0)

来自JAX-WS 2.2 spec

  

JAX-WS 2.0定义了两种类型的处理程序:

     

逻辑仅限处理程序   对消息上下文属性和消息有效负载进行操作。合乎逻辑   处理程序是协议不可知的,不能影响协议   消息的特定部分。逻辑处理程序是处理程序   实现javax.xml.ws.handler.LogicalHandler。协议处理程序   对消息上下文属性和协议特定消息进行操作。

     

协议处理程序特定于特定协议并可以访问   并更改消息的协议特定方面。协议处理程序   是实现从javax.xml.ws-派生的任何接口的处理程序   除了javax.xml.ws.handler.LogicalHandler之外的.handler.Handler。

     

...

     

SOAP之外的协议的处理程序应该实现一个   特定于协议的接口,扩展了javax.xml.ws.handler.Handler。

简而言之,如果您不需要任何与SOAP相关的事情,则无需实现SOAPHandler。一个用例可能是仅处理HTTP标头,附件或检查HttpServletRequest的处理程序。是的,您可以使用SOAPHandler执行更多操作,但有时您不需要访问SOAP标头,SOAPMessage或有效负载DOM访问。