2013-06-07 29 views
7

Tôi có lỗi khi nhập một định nghĩa WSDL từ một ASP.NET phiên bản 4 Visual Studio 2010 dự án Express, vào soapUI 4.5.1xà phòng phân tích wsdl lỗi: yếu tố bất ngờ: TAG_END

URL sẽ như thế nào

http://localhost:7929/ws/AX.asmx?WSDL 

Lỗi tạo

Error loading [http://localhost:7929/ws/AX.asmx?WSDL]: org.apache.xmlbeans.XmlException: 
org.apache.xmlbeans.XmlException: error: Unexpected element: TAG_END 

Lỗi dấu vết:

com.eviware.soapui.impl.support.definition.support.InvalidDefinitionException 
    at com.eviware.soapui.impl.wsdl.support.wsdl.WsdlLoader.loadXmlObject(WsdlLoader.java:138) 
    at com.eviware.soapui.impl.wsdl.support.xsd.SchemaUtils.getDefinitionParts(SchemaUtils.java:535) 
... 

Bất kỳ đề xuất nào được hoan nghênh nhất!

Trả lời

10

Tôi có cùng một vấn đề với Soap UI 5.2.0

các giải pháp đối với tôi là để tắt proxy (theo đề nghị của @ user518066)

enter image description here

+0

Nó hoạt động! Sẽ tốt hơn nếu ai đó chỉnh sửa câu trả lời và đưa ra giải thích nhanh về lý do tại sao lại là một vấn đề. – daniloquio

+0

@daniloquio, xin lỗi, nhưng tôi không biết giải thích tại sao nó hoạt động. –

+0

Đó là ba năm sau đó, và tôi tự tin rằng cả hai lời giải thích này và khối lượng upvotes trên bình luận @ user518066 là dấu hiệu của một câu trả lời đúng (hoặc ít nhất là thích). Cảm ơn Alin - có lẽ bạn xứng đáng với một số loại huy hiệu. –

5

Vấn đề là soapui không biết nơi tìm tệp lược đồ. Nếu wsdl của bạn được triển khai đến một máy chủ, nó sẽ trả về một url của tệp xsd để bao gồm và soapui sẽ có thể tìm thấy nó ....

+1

Cảm ơn câu trả lời, Marijke. Tôi không biết làm thế nào để thay đổi vị trí/url của tệp xsd (Tôi nghĩ rằng các thực thể được định nghĩa trong một không gian tên trong cùng một tệp wsdl), nhưng tôi sẽ đánh dấu nó là được chấp nhận. –

+0

Tôi gặp vấn đề tương tự. Khi tôi chạy với soapui phiên bản 4.5.2 nó hoạt động. Tuy nhiên với phiên bản 5.0.0, tôi nhận được lỗi này. – user518066

+5

Tôi đã làm việc với soapui phiên bản 5.0.0. Đã thay đổi cài đặt proxy thành không. – user518066

2

tôi đã cùng một vấn đề, sau vài giờ tôi thấy rằng vấn đề là về IPv6.

Khi tôi truy cập URL dịch vụ, tôi có thể xem và xác thực tệp wsdl. Không có vấn đề gì cả.

http://localhost/SoapServer.php?wsdl 

Nhưng khi tôi thêm URL này vào SoapUI, lỗi này sẽ gây ra lỗi Unexpected element: TAG_END. Tôi đã tìm ra lý do bằng cách sử dụng cURL, curl http://localhost/SoapServer.php?wsdl trả về 404 !!

Vì vậy, nhận ra rằng Apache của tôi nghe cả IPv4 và IPv6, trình duyệt đi đến IPv6 và nhận được wsdl nhưng cURL và SoapUI đi đến IPv4 và nhận lỗi 404.

Tôi đã tắt IPv6 trên Apache bằng cách xóa dòng Listen [::0]:80 trong tệp httpd.conf, điều này đã giải quyết được sự cố.