2017-09-27 1 views
0

Ich stehe beim Aufruf eines Webservice vor einem Problem. Der Name meines Elements für meine Antwort stimmt nicht mit dem Namen in der WSDL überein. Aber für die Anfrage funktioniert es perfekt.Falscher Namespace für meine Webservice-Antwort

Haben Sie eine Idee? Differents Namen sieht gut aus für mich.

Dies ist die WSDL:

<?xml version="1.0" encoding="UTF-8"?> 
<definitions name="test-existence-muna-service" 
    targetNamespace="http://www.fimasys.com/fsb" 
    xmlns="http://schemas.xmlsoap.org/wsdl/" 
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
    xmlns:tns="http://www.fimasys.com/fsb" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 

    <types> 
     <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.fimasys.com/fsb"> 
      <element name="TestExistenceMuna_Input_Message"> 
       <complexType> 
        <sequence> 
         <element minOccurs="1" name="muna" type="string"/> 
        </sequence> 
       </complexType> 
      </element> 
      <element name="TestExistenceMuna_Output_Message"> 
       <complexType> 
        <sequence> 
         <element minOccurs="1" name="existenceMuna" type="boolean"/> 
        </sequence> 
       </complexType> 
      </element> 
     </schema> 
    </types> 

    <message name="TestExistenceMuna_Input_Message"> 
     <part name="parameters" element="tns:TestExistenceMuna_Input_Message"></part> 
    </message> 
    <message name="TestExistenceMuna_Output_Message"> 
     <part name="parameters" element="tns:TestExistenceMuna_Output_Message"></part> 
    </message> 

    <portType name="testExistenceMunaPortType"> 
     <operation name="getExistenceMuna"> 
      <input message="tns:TestExistenceMuna_Input_Message" /> 
      <output message="tns:TestExistenceMuna_Output_Message" /> 
     </operation> 
    </portType> 

    <binding name="testExistenceMunaBinding" type="tns:testExistenceMunaPortType"> 
     <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> 
     <operation name="getExistenceMuna"> 
      <soap:operation soapAction="http://www.fimasys.com/fsb/getExistenceMuna" /> 
      <input> 
       <soap:body use="literal" /> 
      </input> 
      <output> 
       <soap:body use="literal" /> 
      </output> 
     </operation> 
    </binding> 

    <service name="test-existence-muna-service"> 
     <port binding="tns:testExistenceMunaBinding" name="testExistenceMunaPort"> 
      <soap:address location="http://0.0.0.0:8088/fsb/test-existence-muna-service/"/> 
     </port> 
    </service> 
</definitions> 

Dies ist die Anforderung in SoapUI:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:fsb="http://www.fimasys.com/fsb"> 
    <soapenv:Header/> 
    <soapenv:Body> 
     <fsb:TestExistenceMuna_Input_Message> 
     <muna>07282166.12</muna> 
     </fsb:TestExistenceMuna_Input_Message> 
    </soapenv:Body> 
</soapenv:Envelope> 

Dies ist die Antwort in SoapUI:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> 
    <soap:Body> 
     <ns2:getExistenceMunaResponse xmlns:ns2="http://www.fimasys.com/fsb"> 
     <existenceMuna>true</existenceMuna> 
     </ns2:getExistenceMunaResponse> 
    </soap:Body> 
</soap:Envelope> 
+0

Ist das nicht Ihre Response-Element referenziert wie 'getExixtenceMunaResponse' irgendwo in Wsdl? Können Sie Ihre WSDL-Datei anzeigen? – bilak

+0

Vielen Dank für Ihre Antwort. Ich habe den ursprünglichen Post bearbeitet. –

+0

haben Sie auch Zugriff auf die Implementierung? Gibt es keinen Wrapper oder etwas, was dazu führt, dass das Element umbenannt wird? – bilak

Antwort

0

Sieht man Zweifel haben in Bezug auf die Präfixe in der Anfrage und Antwort dh, fsb vs ns2, richtig?

Es spielt keine Rolle, welches Präfix verwendet wird, solange es denselben Namespace verwendet. Wenn Sie sowohl die Anfrage als auch die Antwort betrachten, sind beide auf Namespace d. H. http://www.fimasys.com/fsb.

Sie können mehr über Namespaces lesen here

+0

Ok danke dafür. Mein echtes Problem ist die WSDL, meine Antwort ist ein , aber soapui gibt mir stattdessen ... Die Eingabe ist übrigens OK, in WSDL und soapui ist es

Verwandte Themen