soap解析wsdl错误:意外的元素:TAG_END

时间:2013-06-07 10:25:56

标签: wsdl soapui

将ASP.NET版本4 Visual Studio 2010 Express项目中的WSDL定义导入SOAPUI 4.5.1时出错

网址就像

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

生成错误

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

错误追踪:

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)
...

欢迎任何建议!

4 个答案:

答案 0 :(得分:15)

我在Soap UI 5.2.0中遇到了同样的问题

我的解决方案是关闭代理(由@ user518066建议)

enter image description here

答案 1 :(得分:5)

问题是soapui不知道在哪里可以找到模式文件。 如果您的wsdl部署到服务器,它将返回要包含的xsd文件的URL,并且soapui将能够找到它....

答案 2 :(得分:2)

我遇到了同样的问题,几个小时后我发现问题出在IPv6上。

当我转到服务URL时,我可以看到并验证wsdl文件。完全没有问题。

@

但是当我将此URL添加到SoapUI时,它会给出错误http://localhost/SoapServer.php?wsdl 。 我通过使用cURL找到了原因,Unexpected element: TAG_END返回404 !!

因此我意识到我的Apache同时监听IPv4和IPv6,浏览器转到IPv6并获取wsdl但cURL和SoapUI转到IPv4并获得404错误。

我通过删除curl http://localhost/SoapServer.php?wsdl文件中的行Listen [::0]:80在我的Apache上禁用了IPv6,这解决了这个问题。

答案 3 :(得分:0)

您确定该服务正在运行吗? 在调试带有多个WCF项目的解决方案时,有时我们会以为正在运行我们正在研究的项目,事实并非如此。 如果在浏览器中输入svc url时遇到错误404,则可能是问题的原因。 在这种情况下,当尝试添加或创建新的WSDL端点时,SOAP UI将失败。 因此,请确保您的解决方案从目标svc所在的项目开始运行。