15

我最近开始使用soapUI 4.5.1,但我仍然不熟悉所有设置。我已经设置了一些网络请求,除了一个之外,所有请求都正常工作。我正在尝试发送 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 message0.

任何指针都会很棒!

4

5 回答 5

17

通过检查 Authenticate Preemptively 标志,我得到了错误消失(在 SoapUI 4.5.1 中)

首选项 -> HTTP 设置 -> 抢先验证

于 2013-03-08T14:03:58.833 回答
5

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

于 2012-08-08T17:28:01.523 回答
1

我使用正在请求用户凭据但实际上接受空白或任何其他密码的身份验证开发服务器遇到了同样的问题。因此,我将密码留空,这在soapUI 4.5.0 中运行良好,但按照您在4.5.1 中描述的方式失败了。但我发现简单地在密码中输入一些文本似乎可以解决问题。

不知道这是否与您的情况有关,但以防万一它有用。

于 2012-07-10T15:39:07.390 回答
0

我在使用 Soap UI pro 4.5.1 版时遇到了同样的问题。

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

解析度:

  1. 在代理设置的排除列表中添加目标服务器已解决该问题。即使端点 url 是本地主机也是如此。
  2. 首选项 --> 代理设置 ---> 排除
  3. 可以通过逗号分隔值指定多个服务器

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

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

  2. 在 Internet 选项中使用代理设置无效。

  3. 对于我的请求,需要代理身份验证。但是当我启用代理设置时,我得到 Http Client 协议异常,内容长度重复错误。
  4. 发送请求后,我们可以从 http 日志中找到它……但是我们没有配置它的选项。
  5. 一个有趣的观察是内容长度标头之一在传入请求中,另一个在传出请求中......但这不应该抛出请求。
于 2012-12-23T02:11:29.030 回答
0

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

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

于 2013-03-12T23:27:10.737 回答