2017-07-14 2 views
-1

Ich habe ähnliche Lösungen von stackoverflow gesucht, aber ich konnte damit nicht umgehen. Es heißt: [ERROR] Eigenschaft "Any" ist bereits definiert. Verwenden Sie < jaxb: property> um diesen Konflikt zu lösen. Ich habe ein bindendes xml erstellt, um den Konflikt zu lösen und versuche die "Any" -Eigenschaft umzubenennen. Sie sagt, dass Ihr XPath falsch ist. Aber ich konnte nicht finden, wo der Fehler auf dem Pfad ist. Zur besseren Erklärung, teilen "Wsdl", die ich nicht ändern konnte, seinen externen Dienst. Auch meine Bindung xml.Getting Property ist bereits Fehler von wsimport definiert

Wsdl:

<wsdl:definitions xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://tempuri_integration.org/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://tempuri_integration.org/"> 
    <wsdl:types> 
     <s:schema elementFormDefault="qualified" targetNamespace="http://tempuri_integration.org/"> 
      . 
      . 
      . 
      <s:element name="Get_DataSet_Data_With_IDResponse"> 
       <s:complexType> 
        <s:sequence> 
         <s:element minOccurs="0" maxOccurs="1" name="Get_DataSet_Data_With_IDResult"> 
          <s:complexType> 
           <s:sequence> 
            <s:any minOccurs="0" maxOccurs="unbounded" namespace="http://www.w3.org/2001/XMLSchema" processContents="lax"/> 
            <s:any minOccurs="1" namespace="urn:schemas-microsoft-com:xml-diffgram-v1" processContents="lax"/> 
           </s:sequence> 
          </s:complexType> 
         </s:element> 
         <s:element minOccurs="0" maxOccurs="1" name="pref_err" type="s:string"/> 
        </s:sequence> 
       </s:complexType> 
      </s:element> 
     </s:schema> 
    </wsdl:types> 
</wsdl:definitions> 

Binding xml:

<jxb:bindings xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
       xmlns="http://java.sun.com/xml/ns/jaxws" 
       xmlns:jxb="http://java.sun.com/xml/ns/jaxb" 
       xmlns:s="http://www.w3.org/2001/XMLSchema" 
       wsdlLocation="http://10.10.10.10:8080/integration.asmx?wsdl"> 

    <jxb:bindings 
      node="/wsdl:definitions/wsdl:types/s:schema/s:element[@name='Get_DataSet_Data_With_IDResponse']/s:complexType/s:sequence/s:element[@name='Get_DataSet_Data_With_IDResult']/s:complexType/s:sequence/s:any[@namespace='urn:schemas-microsoft-com:xml-diffgram-v1']/s:complexType"> 
     <jxb:property name="any2"/> 
    </jxb:bindings> 
</jxb:bindings> 

Und cmd Befehl wie folgt aus:

wsimport -clientjar export.jar -b binding.xml http://10.10.10.10:8080/integration.asmx?wsdl 

Antwort

0

schließlich den Punkt bekam und mein Problem gelöst.

Ich habe SchemaLocation vergessen. Auch das war der falsche Weg für mein Eigentum.

Es ist meine Bindung xml:

<jxb:bindings version="2.0" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
       xmlns="http://java.sun.com/xml/ns/jaxws" 
       xmlns:jxb="http://java.sun.com/xml/ns/jaxb" 
       xmlns:s="http://www.w3.org/2001/XMLSchema" 
> 
    <jxb:bindings schemaLocation="http://10.10.10.10:8080/integration.asmx?wsdl#types?schema1" 
        node="//s:element[@name='Get_DataSet_Data_With_IDResponse']/s:complexType/s:sequence/s:element[@name='Get_DataSet_Data_With_IDResult']/s:complexType/s:sequence/s:any[@namespace='urn:schemas-microsoft-com:xml-diffgram-v1']"> 
     <jxb:property name="any2"/> 
    </jxb:bindings> 
</jxb:bindings> 
Verwandte Themen