webservice--wsdl中含ref="s:schema"时处理的
dos窗口,在生成客户端代码的时候,出现了下图所示的错误:

java是通过JAXB解析wsdl文件的,出现这种错误的原因是:
是JAXB目前还不支持ref 这种元素的解析
s:schema是types内最外层的元素,ref指向它,实际上相当于<s:any />
解决方案:
<s:any minOccurs="2" maxOccurs="2"/>替代<s:element ref="s:schema"/><s:any />
这两句话,其实是等价的。<s:element ref="s:schema"/>其实就是说这里可以用s:schema规定的任意一种元素类型来替代,<s:any />正是起 起到了这个作用。
<s:any minOccurs="2"maxOccurs="2"/>只不过是把两个<s:any />写成了一句罢了。
本文探讨了在使用JAXB解析含ref=s:schema的WSDL文件时遇到的问题及解决方法。详细解释了错误原因,并提供了解决方案:用<s:anyminOccurs=2maxOccurs=2/>替代<s:elementref=s:schema/><s:any/>。
792

被折叠的 条评论
为什么被折叠?



