cxf 的webservice生成服务端时异常( undefined element declaration 's:schema')



 关于cxf 的webservice生成服务端异常( undefined element declaration 's:schema')

今天在使用CXF的wsdl2java.bat 根据wsdl文件生成客户端调用时出现以下错误:

<!--StartFragment -->

 

在国外的一些文章上对待这样的错误有如下的解决办法:用<s:any minOccurs="2" maxOccurs="2"/>替代<s:element ref="s:schema" /><s:any /> ,我试了下果然可以,因此我基本上可以个人武断地认为这个wsdl2java的生成错误应该是和JAXB不支持xml的ref有关。因为

<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 />写成了一句罢了。

 

附带记录另一个问题。

wsdl2java -p com.test.orderservice OrderService1.wsdl 一个文件时出现下列错误:

cxf 的webservice生成服务端时异常( undefined element declaration 's:schema')_第1张图片

这个错误是由于有一行类似这样<wsdl:part name="Body" /> 缺少 type="s:string" 造成的

 

原文:http://www.cnblogs.com/hzhuxin/archive/2011/05/25/2057142.html

 

 

你可能感兴趣的:(CXF)