这个WSDL有效吗?

时间:2017-04-25 06:30:13

标签: java linux web-services wsdl wsdl2java

在运行WSDL2Java sample时,我想检查生成的WSDL,因为我遇到了来自网络服务的client code Netbeans generated问题。 this WSDL有效还是无效?如果无效,为什么会在URL以及XML中“广告”为WSDL

运行WSDL2Java validator from the CLI会将其显示为无效:

thufir@doge:~$ 
thufir@doge:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-openjdk-amd64/
thufir@doge:~$ 
thufir@doge:~$ jars/apache-cxf-3.1.11/bin/wsdlvalidator https://www.w3schools.com/xml/tempconvert.asmx?WSDL
WSIBP Validator found <{https://www.w3schools.com/xml/}TempConvertHttpPost> is NOT a SOAP binding
WSDLValidator Error : 
line 127 column 66 of https://www.w3schools.com/xml/tempconvert.asmx?WSDL: cvc-complex-type.4: Attribute 'part' must appear on element 'mime:content'.

line 136 column 66 of https://www.w3schools.com/xml/tempconvert.asmx?WSDL: cvc-complex-type.4: Attribute 'part' must appear on element 'mime:content'.

thufir@doge:~$ 

但是,从字面上看,这是我第一次使用WSDL2Java API。也许有一个online验证器作为Web服务运行?

虽然我无法保存报告,但在下载页面然后上传后,似乎才有效:

https://www.wsdl-analyzer.com/service/service/893784871?version=1

1 个答案:

答案 0 :(得分:1)

前面提到的WSDL包含三个不同的绑定:soap 1.1,soap 1.2和http,这意味着有三种不同的方法/协议可以调用temperatureurte转换器webservice,如下所示: https://www.w3schools.com/xml/tempconvert.asmx?op=CelsiusToFahrenheit

但是如果你坚持使用soap 1.1绑定,WSDL工具和互操作性最有效。出于学习目的,只需使用soap 1.1绑定即可找到WSDL。