2012-07-02 38 views
15

Gần đây tôi đã bắt đầu sử dụng soapUI 4.5.1 và tôi vẫn chưa quen với tất cả các cài đặt. Tôi đã thiết lập một vài yêu cầu web và tất cả nhưng yêu cầu web đang hoạt động chính xác. Tôi đang cố gắng để gửi nội dung của kiểu application/xml nhưng tôi nhận được:Độ dài nội dung đã xuất hiện lỗi soapUI 4.5.1

org.apache.http.client.ClientProtocolException do org.apache.http.ProtocolException: header Content-Length đã hiện diện.

Yêu cầu tương tự luôn làm việc tốt cho tôi trong 4.5.0. Nội dung yêu cầu là như sau:

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) 

Tiếp theo là xml.

Tôi lấy nó rằng độ dài nội dung được gửi hai lần, nhưng tôi không biết ở đâu, bởi vì tôi chưa đặt nó ở bất cứ đâu. SoapUI đang hiển thị Additional HTTP Headers for this message0.

Mọi con trỏ sẽ tuyệt vời!

+6

Sự cố xảy ra với cài đặt của tôi, như tôi nghĩ! Kiểm tra hộp kiểm "Authenciate Preemptively" trong cài đặt HTTP toàn cầu đã giải quyết được vấn đề :) – user1088166

+0

Bây giờ nó đã ngừng hoạt động trở lại mặc dù tôi không thay đổi gì cả - đã từng làm việc một lần rồi sẽ không hoạt động trở lại nữa, cái quái gì đang xảy ra? – user1088166

+1

(Tôi có thể giải quyết vấn đề này bằng cách thay đổi 'Loại Ủy quyền' thành 'Ưu tiên' trong tab 'Tự động' của yêu cầu xà phòng của tôi.) [Http://forum.soapui.org/viewtopic.php?t=14356] –

Trả lời

1

Tôi gặp phải vấn đề tương tự khi sử dụng máy chủ phát triển xác thực yêu cầu thông tin xác thực người dùng nhưng thực sự chấp nhận một mật khẩu trống hoặc bất kỳ mật khẩu nào khác. Vì vậy, tôi đã để lại mật khẩu trống mà làm việc tốt trong soapUI 4.5.0, nhưng không thành công theo cách bạn mô tả trong 4.5.1. Nhưng tôi thấy rằng chỉ cần đặt một số văn bản vào mật khẩu sẽ xuất hiện để khắc phục sự cố.

Không biết điều này có liên quan đến trường hợp của bạn hay không, nhưng chỉ trong trường hợp nó hữu ích.

+0

Cảm ơn bạn đã trả lời, nhưng có văn bản trong mật khẩu và vẫn cùng một vấn đề: ( – user1088166

0

Tôi gặp vấn đề tương tự với Soap UI pro phiên bản 4.5.1.

Cuối cùng đã tìm ra vấn đề là với cài đặt proxy.

Độ phân giải:

  1. Thêm máy chủ mục tiêu trong Loại trừ Danh sách cho Proxy Settings có giải quyết vấn đề này. Đây là trường hợp ngay cả khi url của điểm kết thúc là một máy chủ cục bộ là .
  2. Preferences -> Proxy Settings ---> Loại trừ
  3. có thể chỉ định máy chủ mutliple bởi các giá trị dấu phẩy tách

Nghiên cứu/Quan sát trên hệ thống của tôi:

  1. Kỳ lạ cùng bộ kiểm tra chạy mà không có sự cố trên hệ thống khác trong cùng một văn phòng. Phải làm điều gì đó với cách hệ thống được cấu hình .

  2. Phát bằng cài đặt Proxy trong Tùy chọn Internet không có hiệu lực .

  3. Đối với yêu cầu của tôi, Yêu cầu xác thực proxy.Nhưng khi tôi bật cài đặt Proxy, tôi nhận được ngoại lệ giao thức HTTP của máy khách với lỗi độ dài nội dung trùng lặp.
  4. Chúng tôi có thể tìm thấy thông tin này từ nhật ký http khi yêu cầu được gửi ... Nhưng chúng tôi không có tùy chọn để định cấu hình .
  5. Một quan sát thú vị là một trong các nội dung có độ dài tiêu đề là trong Yêu cầu đến và mục còn lại nằm trong mục Outgoing Yêu cầu ... Điều này không nên loại bỏ yêu cầu.
17

Tôi đã nhận lỗi ra đi (trong soapUI 4.5.1) bằng cách kiểm tra cờ Authenticate preemptively trong

Preferences -> HTTP Cài đặt -> Authenticate preemptively

+0

+1 để giải quyết sự cố. –

+0

Điều này cũng phù hợp với tôi! –

0

Một cách khác để gây ra lỗi này là để gọi dịch vụ web với mật khẩu sai (tôi đã nói sai thành thật) quá nhiều lần và bị khóa tài khoản của bạn.

Ngay sau khi đặt lại mật khẩu và tài khoản đã mở khóa "org.apache.http.client.ClientProtocolException do tiêu đề org.apache.http.ProtocolException: Nội dung độ dài đã xuất hiện", ngoại lệ đã biến mất và dịch vụ web cuộc gọi đã hoạt động như mong đợi.

Các vấn đề liên quan