gpt4 book ai didi

java - wsdl2java 中属性已定义错误

转载 作者:行者123 更新时间:2023-12-01 11:33:11 27 4
gpt4 key购买 nike

我正在尝试使用 cxf 从 wsdl2java 生成代理类,但每当我尝试时,我都会不断收到以下错误:

WSDLToJava Error: http://webservices.sabre.com/wsdl/sabreXML1.0.00/shopping/Grou pedItineraryResponse_v1-0-2.xsd [0,0]: Property "ValidatingCarrier" is already d efined. Use <jaxb:property> to resolve this conflict. http://webservices.sabre.com/wsdl/sabreXML1.0.00/shopping/GroupedItineraryRespon se_v1-0-2.xsd [0,0]: The following location is relevant to the above error

当我从如下网址之一获取信息时,我尝试将绑定(bind)文件添加到 wsdl2java.bat:

<jaxws:bindings wsdlLocation="http://webservices.sabre.com/wsdl/sabreXML1.0.00/shopping/BargainFinderMaxRQ_v1-8-2.wsdl" 
xmlns:jaxws="http://java.sun.com/xml/ns/jaxws"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
jaxb:extensionBindingPrefixes="xjc"
xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc">


<jaxws:bindings node="wsdl:definitions/wsdl:types/xsd:schema">
<jaxb:globalBindings
jaxb:version="2.0">
<xjc:simple />
</jaxb:globalBindings>
</jaxws:bindings>

我正在使用第三方 wsdl url,因此我没有任何控制权可以在服务器端进行更改,我只需要根据命令进行更改即可成功生成代理类。有人可以帮我解决这个问题吗?

最佳答案

问题在于 FareType 具有名为 ValidatingCarrier 的子元素和同名的属性。

要解决此问题,您应该按照错误消息的建议添加字段绑定(bind)。绑定(bind)示例:

<jaxb:bindings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
xsi:schemaLocation="http://java.sun.com/xml/ns/jaxb http://java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd"
jaxb:version="2.1"
schemaLocation="http://webservices.sabre.com/wsdl/sabreXML1.0.00/shopping/GroupedItineraryResponse_v1-0-2.xsd">
<jaxb:bindings node="//xs:complexType[@name='FareType']/xs:sequence/xs:element[@name='ValidatingCarrier']">
<jaxb:property name="validatingCarrierInfo"></jaxb:property>
</jaxb:bindings>
</jaxb:bindings>

通过此绑定(bind),我将 ValidatingCarrier 重命名为 ValidatingCarrierInfo

关于java - wsdl2java 中属性已定义错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30261195/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com