SOAP版本不匹配

SOAP版本不匹配,soap,wsdl,version,mismatch,Soap,Wsdl,Version,Mismatch,我目前正在开发一个客户端Java应用程序,该应用程序调用基于Soap的(v1.2)Web服务。该服务提供了一个方法调用“ping()”来检查服务状态(当前是否可用)。一旦使用代理类实例调用了“ping()”方法调用,我就会得到一个java.rmi.RemoteException声明(400)[ISS.0088.9168]SOAP版本不匹配 以下工件在此公开供您参考 服务的WSDL 我还跟踪了从名为TcpMon的工具从客户端发送到服务的Soap请求。我还使用了另一个名为SoapUI的工具来调用“p

我目前正在开发一个客户端Java应用程序,该应用程序调用基于Soap的(v1.2)Web服务。该服务提供了一个方法调用“ping()”来检查服务状态(当前是否可用)。一旦使用代理类实例调用了“ping()”方法调用,我就会得到一个
java.rmi.RemoteException
声明(400)[ISS.0088.9168]SOAP版本不匹配

以下工件在此公开供您参考

  • 服务的WSDL
  • 我还跟踪了从名为TcpMon的工具从客户端发送到服务的Soap请求。我还使用了另一个名为SoapUI的工具来调用“ping()”方法调用,它生成了一个成功的响应

    Java应用程序生成的Soap请求与由SoapUI生成的Soap请求不同,这意味着存在Soap版本冲突。这些请求格式也在此公开,以供您理解

  • Soap请求生成的Java应用程序(从TcpMon跟踪)
  • SoapUI生成的Soap请求和Soap响应
  • 解决这个问题的办法是什么

    1。服务的WSDL

    <wsdl:definitions xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapjms="http://www.w3.org/2010/soapjms/" xmlns:tns="http://xxxxxxxxxx" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" name="v1" targetNamespace="http://xxxxxxxxxx">
    <wsdl:types>
    <pre>
    <xsd:schema xmlns:tns="http://xxxxxxxxxx" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://xxxxxxxxxx">
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" nillable="true" type="tns:xxxxxxxxxx"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:simpleType name="xxxxxxxxxx">
    <xsd:restriction base="xsd:string">
    <xsd:maxLength value="30"/>
    <xsd:whiteSpace value="preserve"/>
    </xsd:restriction>
    </xsd:simpleType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element minOccurs="0" name="status" nillable="true" type="tns:xxxxxxxxxx"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" type="xsd:int"/>
    <xsd:element name="xxxxxxxxxx" type="xsd:string"/>
    <xsd:element maxOccurs="unbounded" name="errors" nillable="true" type="tns:xxxxxxxxxx"/>
    <xsd:element maxOccurs="unbounded" name="warnings" nillable="true" type="tns:warning"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" type="xsd:string"/>
    <xsd:element name="xxxxxxxxxx" type="xsd:string"/>
    <xsd:element name="xxxxxxxxxx" type="xsd:string"/>
    <xsd:element name="xxxxxxxxxx" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" type="xsd:string"/>
    <xsd:element name="xxxxxxxxxx" type="xsd:string"/>
    <xsd:element name="xxxxxxxxxx" type="xsd:string"/>
    <xsd:element name="xxxxxxxxxx" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element maxOccurs="unbounded" name="faults" nillable="true" type="tns:xxxxxxxxxx"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" nillable="true" type="xsd:string"/>
    <xsd:element name="xxxxxxxxxx" nillable="true" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence></xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element maxOccurs="unbounded" minOccurs="0" name="xxxxxxxxxx" nillable="true" type="tns:xxxxxxxxxx"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" type="xsd:string"/>
    <xsd:element name="xxxxxxxxxx" type="xsd:boolean"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence></xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" nillable="true" type="xsd:boolean"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" nillable="true" type="tns:xxxxxxxxxx"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" type="xsd:base64Binary"/>
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    <xsd:element minOccurs="0" name="private" type="xsd:boolean"/>
    <xsd:element name="xxxxxxxxxx" type="tns:xxxxxxxxxx"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:simpleType name="xxxxxxxxxx">
    <xsd:restriction base="xsd:string">
    <xsd:maxLength value="500"/>
    <xsd:whiteSpace value="preserve"/>
    </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="xxxxxxxxxx">
    <xsd:restriction base="xsd:string">
    <xsd:enumeration value="xxx"/>
    <xsd:enumeration value="xxx"/>
    <xsd:whiteSpace value="preserve"/>
    </xsd:restriction>
    </xsd:simpleType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" nillable="true" type="tns:xxxxxxxxxx"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="xxxxxxxxxx">
    <xsd:sequence>
    <xsd:element name="xxxxxxxxxx" type="xsd:boolean"/>
    <xsd:element minOccurs="0" name="paymentId" nillable="true" type="xsd:string"/>
    <xsd:element maxOccurs="unbounded" name="errors" nillable="true" type="tns:error"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:schema>
    </wsdl:types>
    <wsdl:message name="xxxxxxxxxx">
    <wsdl:part name="parameters" element="tns:xxxxxxxxxx"></wsdl:part>
    </wsdl:message>
    <wsdl:message name="xxxxxxxxxx">
    <wsdl:part name="parameters" element="tns:xxxxxxxxxx"></wsdl:part>
    </wsdl:message>
    <wsdl:message name="xxxxxxxxxx">
    <wsdl:part name="parameters" element="tns:xxxxxxxxxx"></wsdl:part>
    </wsdl:message>
    <wsdl:message name="xxxxxxxxxx">
    <wsdl:part name="parameters" element="tns:xxxxxxxxxx"></wsdl:part>
    </wsdl:message>
    <wsdl:message name="xxxxxxxxxx">
    <wsdl:part name="parameters" element="tns:xxxxxxxxxx"></wsdl:part>
    </wsdl:message>
    <wsdl:message name="xxxxxxxxxx">
    <wsdl:part name="parameters" element="tns:xxxxxxxxxx"></wsdl:part>
    </wsdl:message>
    <wsdl:message name="xxxxxxxxxx">
    <wsdl:part name="parameters" element="tns:xxxxxxxxxx"></wsdl:part>
    </wsdl:message>
    <wsdl:message name="xxxxxxxxxx">
    <wsdl:part name="parameters" element="tns:xxxxxxxxxx"></wsdl:part>
    </wsdl:message>
    <wsdl:message name="xxxxxxxxxx">
    <wsdl:part name="parameters" element="tns:xxxxxxxxxx"></wsdl:part>
    </wsdl:message>
    <wsdl:portType name="xxxxxxxxxx">
    <wsdl:operation name="xxxxxxxxxx">
    <wsdl:input message="tns:xxxxxxxxxx"></wsdl:input>
    <wsdl:output message="tns:xxxxxxxxxx"></wsdl:output>
    <wsdl:fault name="faults" message="tns:xxxxxxxxxx"></wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="xxxxxxxxxx">
    <wsdl:input message="tns:xxxxxxxxxx"></wsdl:input>
    <wsdl:output message="tns:xxxxxxxxxx"></wsdl:output>
    <wsdl:fault name="xxxxxxxxxx" message="tns:xxxxxxxxxx"></wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="xxxxxxxxxx">
    <wsdl:input message="tns:xxxxxxxxxx"></wsdl:input>
    <wsdl:output message="tns:xxxxxxxxxx"></wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="xxxxxxxxxx">
    <wsdl:input message="tns:xxxxxxxxxx"></wsdl:input>
    <wsdl:output message="tns:xxxxxxxxxx"></wsdl:output>
    <wsdl:fault name="xxxxxxxxxx" message="tns:xxxxxxxxxx"></wsdl:fault>
    </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="xxxxxxxxxx" type="tns:xxxxxxxxxx">
    <soap12:binding style="xxxxxxxxxx" transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="xxxxxxxxxx">
    <soap12:operation soapAction="xxxxxxxxxx" style="document"/>
    <wsdl:input>
    <soap12:body parts="parameters" use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap12:body parts="parameters" use="literal"/>
    </wsdl:output>
    <wsdl:fault name="xxxxxxxxxx">
    <soap12:fault name="xxxxxxxxxx" use="literal"/>
    </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="xxxxxxxxxx">
    <soap12:operation soapAction="xxxxxxxxxx"/>
    <wsdl:input>
    <soap12:body parts="parameters" use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap12:body parts="parameters" use="literal"/>
    </wsdl:output>
    <wsdl:fault name="xxxxxxxxxx">
    <soap12:fault name="xxxxxxxxxx" use="literal"/>
    </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="ping">
    <soap12:operation soapAction="xxxxxxxxxx" style="document"/>
    <wsdl:input>
    <soap12:body parts="parameters" use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap12:body parts="parameters" use="literal"/>
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="xxxxxxxxxx">
    <soap12:operation soapAction="xxxxxxxxxx" style="document"/>
    <wsdl:input>
    <soap12:body parts="parameters" use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap12:body parts="parameters" use="literal"/>
    </wsdl:output>
    <wsdl:fault name="xxxxxxxxxx">
    <soap12:fault name="xxxxxxxxxx" use="literal"/>
    </wsdl:fault>
    </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="xxxxxxxxxx">
    <wsdl:port name="xxxxxxxxxx" binding="tns:xxxxxxxxxx">
    <soap12:address location="https://xxxxxxxxxx"/>
    </wsdl:port>
    </wsdl:service>
    </wsdl:definitions>
    
    
    
    2。Soap请求生成的Java应用程序(从TcpMon跟踪)[失败]

    <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:dir="http://xxxxxxxxxx">
       <soap:Header/>
       <soap:Body>
          <dir:ping/>
       </soap:Body>
    </soap:Envelope>
    
    <?xml version='1.0' encoding='UTF-8'?>
    <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
        <soapenv:Body>
            <ser-root:pingResponse xmlns:ser-root="http://xxxxxxxxxx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <status>true</status>
            </ser-root:pingResponse>
        </soapenv:Body>
    </soapenv:Envelope>
    
    
    
    3。SoapUI生成的Soap请求[成功]

    <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:dir="http://xxxxxxxxxx">
       <soap:Header/>
       <soap:Body>
          <dir:ping/>
       </soap:Body>
    </soap:Envelope>
    
    <?xml version='1.0' encoding='UTF-8'?>
    <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
        <soapenv:Body>
            <ser-root:pingResponse xmlns:ser-root="http://xxxxxxxxxx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <status>true</status>
            </ser-root:pingResponse>
        </soapenv:Body>
    </soapenv:Envelope>
    
    
    
    3。SoapUI生成的Soap响应[成功]

    <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:dir="http://xxxxxxxxxx">
       <soap:Header/>
       <soap:Body>
          <dir:ping/>
       </soap:Body>
    </soap:Envelope>
    
    <?xml version='1.0' encoding='UTF-8'?>
    <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
        <soapenv:Body>
            <ser-root:pingResponse xmlns:ser-root="http://xxxxxxxxxx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <status>true</status>
            </ser-root:pingResponse>
        </soapenv:Body>
    </soapenv:Envelope>
    
    
    真的
    
    按照此链接中的建议更改您的客户端。。

    我在链接页面中没有看到任何建议。