内容长度已存在错误soapUI 4.5.1

时间:2012-07-02 16:39:39

标签: http-headers soapui

我最近开始使用soapUI 4.5.1,但我仍然不熟悉所有设置。我已经设置了一些Web请求,除了一个以外的所有请求都正常工作。我正在尝试发送application / xml类型的内容,但我得到了:

  由org.apache.http.ProtocolException引起的

org.apache.http.client.ClientProtocolException:Content-Length标头已经存在。

同样的请求在4.5.0中对我来说总是很好。请求的内容是这样的:

POST http://exampleHost.com/exampleRequest HTTP/1.1
Accept-Encoding: gzip,deflate
Accept: text/xml
Content-Type: application/xml
Content-Length: 456
Host: exampleHost.com
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)

接下来是xml。

我认为内容长度发送两次,但我不知道在哪里,因为我没有把它设置在任何地方。 SoapUI将Additional HTTP Headers for this message显示为0

任何指针都会很棒!

5 个答案:

答案 0 :(得分:17)

通过检查

中的Authenticate Preemptively标志,我得到了错误消失(在SoapUI 4.5.1中)

偏好设置 - > HTTP设置 - >抢先认证

答案 1 :(得分:5)

我与SmartBear支持联系,这个问题似乎已在最新的夜间版本中得到修复@ http://soapui.org/Downloads/soapui-pro-nightly-builds.html

答案 2 :(得分:1)

我在使用请求用户凭据但实际接受空白或任何其他密码的身份验证开发服务器时遇到了同样的问题。所以我把密码留空了,这在soapUI 4.5.0中工作得很好,但是你在4.5.1中描述的方式失败了。但我发现只需在密码中加入一些文字即可解决问题。

不知道这是否与您的案件有关,但以防它有用。

答案 3 :(得分:0)

我在Soap UI专业版4.5.1中遇到了同样的问题。

最后发现问题出在代理设置上。

解决:

  1. 在“代理设置的排除列表”中添加目标服务器 解决了这个问题。即使终点url是a,也是如此 当地主持人。
  2. 偏好设置 - >代理设置--->排除
  3. 可以通过逗号分隔值
  4. 指定多个服务器

    对我的系统进行研究/观察:

    1. 奇怪的是,同一个测试套件在其他系统上运行没有问题 在同一个办公室。必须与系统的方式有关 配置。

    2. 在Internet选项中使用代理设置没有     效果。

    3. 根据我的要求,需要代理身份验证。但当 我启用代理设置我得到Http客户端协议异常 重复内容长度错误。
    4. 我们可以从http日志中找到它 一旦请求被发送......但我们没有配置选项 它。
    5. 一个有趣的观察是其中一个内容长度 标题在Incoming Request中,另一个在Outgoing中 请求......这不应该抛弃请求。

答案 4 :(得分:0)

导致此错误的另一种方法是使用错误的密码(我被告知错误的诚实)多次调用Web服务并锁定您的帐户。

一旦密码被重置并且帐户解锁了“org.apache.http.ProtocolException引起的org.apache.http.client.ClientProtocolException:Content-Length标头已经存在”异常消失并且Web服务调用按预期工作。