zoukankan      html  css  js  c++  java
  • SoapUI中HttpClient的使用分析(特:NTLM验证)

    最近接触到SoapUI,下载了最新的版本4.0.1使用,功能相当的强大。对于一个采用了NTLM验证的Web Service服务器,使用SoapUI几乎能够对所有的Web Service进行访问,而相比较之下,自己编写的基于HttpClient的库却不行。于是只能阅读以下SoapUI中与HttpClient相关的代码,求解惑。正好网上的资料也比较少,写成文档供以后参考。

    SoapUI 4.0.1使用的还是3.x版本的HttpClient,而现在HttpClient已经到4.x版本了,而且整个类结构有了非常大的变化,而且在3.x直接支持的NTLM现在必须要使用额外的JCIFS库才能调用。

    从代码中来看,SoapUI使用了HttpAuthenticationRequestFilter的initRequestCreditials静态方法来给当前的submitContext添加NTLM验证的provider。接下来在DefaultEndPointStrategy类的overrideRequest方法、copyToRequest方法、complementRequest方法中会调用该静态方法添加NTLM验证机制。其中overrideRequest方法中首先会判断是否设置了wssType,如果没有,则加上身份验证的东西。

    这三个函数都被同一个函数调用,applyDefaultsToWsdlRequest,该方法也是一个protect方法,被filterRequest这个public的方法调用。filterRequest方法最终被HttpClientRequestTransport的sendRequest方法调用。而sendRequest方法则是由WsdlSubmit.run方法调用。

    调用顺序

  • 相关阅读:
    AO学习资料.pdf
    ArcGIS中对Feature的操作
    http://bbs.esrichinabj.cn/ESRI/thread7402911.html
    ArcEngine获取两点间沿曲线的距离已经解决
    http://edndoc.esri.com/arcobjects/9.2/welcome.htm
    shp文件读入内存变量
    韩鹏 地图编辑 笔记
    出差补贴没算
    素数小结
    tomcat7配置
  • 原文地址:https://www.cnblogs.com/mmjx/p/2276691.html
Copyright © 2011-2022 走看看