日期:2014-05-17  浏览次数:20938 次

web service 客户端创建失败
本帖最后由 lifefucksss 于 2014-03-17 13:45:16 编辑
我用 JaxWsDynamicClientFactory.createClient("xxxxxxx?wsdl")创建client
抛出了异常Error compiling schema from WSDL:
Two declarations cause a collision in the ObjectFactory class.


于是我发现xml文件中element的两个参数貌似单词一样 大小写不同
   <xs:complexType name="Info">
      <xs:sequence>

         <xs:element minOccurs="0" name="aaaa" type="xs:string" />
         <xs:element minOccurs="0" name="bbbbc" type="xs:string" />
         <xs:element minOccurs="0" name="ddddd" type="xs:string" />
         <xs:element minOccurs="0" name="dsagsdg" type="xs:string" />
         <xs:element minOccurs="0" name="Bbbbc" type="xs:string" />
      </xs:sequence>
   </xs:complexType>


标红的两个name造成了冲突,它只用了首字母大小写来区分,据说.Net可以用,但是到了java这边报错了,在不修改wsdl的前提下,如何搞定?
------解决方案--------------------
不懂帮你顶下吧
------解决方案--------------------
这个是一个bug,还没有解决,不过你可以用另一种方式解决。看这里
------解决方案--------------------
就像楼上的链接定义区分。