当前位置 : 主页 > 网页制作 > Nodejs >

Net的wsdl生成webservice 异常:undefined simple or complex type 'soapenc:Array'

来源:互联网 收集:自由互联 发布时间:2021-06-24
错误代码如下: 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 ?
  1. <s:schema targetNamespace="http://tempuri.org/AbstractTypes">  
  2.       <s:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />  
  3.        <s:complexType name="ArrayOfString">  
  4.         <s:sequence>  
  5.           <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />  
  6.         </s:sequence>  
  7.       </s:complexType>  
  8.       <s:complexType name="StringArray">  
  9.         <s:complexContent mixed="false">  
  10.           <s:restriction base="soapenc:Array">  
  11.             <s:sequence>  
  12.               <s:element minOccurs="0" maxOccurs="unbounded" name="String" type="s:string" />  
  13.             </s:sequence>  
  14.           </s:restriction>  
  15.         </s:complexContent>  
  16.       </s:complexType>  

更改后:

[html]  view plain  copy  print ?
  1. <s:schema targetNamespace="http://tempuri.org/AbstractTypes">  
  2.      <s:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />  
  3.   <s:complexType name="ArrayOfString">  
  4.        <s:sequence>  
  5.          <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />  
  6.        </s:sequence>  
  7.      </s:complexType>  
  8.    </s:schema>  

重新执行:wsimport -s D:\ttest\src -p com.cn.phone -verbose  D:\ttest\Book.asmx.xml

成功生成。

注意:在windows下必须以管理员身份形式运行此命令。

网友评论