错误代码如下: E:\ wsimport -s D:\ttest\src -p com.cn.phone -verbose D:\ttest\Book.asmx.xml parsing WSDL... [WARNING] src-resolve: Cannot resolve the name 'soapenc:Array' to a(n) 'type definition' component. line 505 of file:/ D:/tte
错误代码如下:
E:\>wsimport -s D:\ttest\src -p com.cn.phone -verbose D:\ttest\Book.asmx.xml
parsing WSDL...
[WARNING] src-resolve: Cannot resolve the name 'soapenc:Array' to a(n) 'type definition' component.
line 505 of file:/D:/ttest/Book.asmx.xml#types?schema2
[ERROR] undefined simple or complex type 'soapenc:Array'
line 505 of file:/D:/ttest/Book.asmx.xml
错误原因:
net那边给的wsdl使用的规范过低,生成之后的不认原来的那种规范,使生成代码不适应我们java这边的使用。
[html] view plain copy print ?
- <s:schema targetNamespace="http://tempuri.org/AbstractTypes">
- <s:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
- <s:complexType name="ArrayOfString">
- <s:sequence>
- <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
- </s:sequence>
- </s:complexType>
- <s:complexType name="StringArray">
- <s:complexContent mixed="false">
- <s:restriction base="soapenc:Array">
- <s:sequence>
- <s:element minOccurs="0" maxOccurs="unbounded" name="String" type="s:string" />
- </s:sequence>
- </s:restriction>
- </s:complexContent>
- </s:complexType>
更改后:
[html] view plain copy print ?
- <s:schema targetNamespace="http://tempuri.org/AbstractTypes">
- <s:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
- <s:complexType name="ArrayOfString">
- <s:sequence>
- <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
- </s:sequence>
- </s:complexType>
- </s:schema>
重新执行:wsimport -s D:\ttest\src -p com.cn.phone -verbose D:\ttest\Book.asmx.xml
成功生成。
注意:在windows下必须以管理员身份形式运行此命令。