-
Notifications
You must be signed in to change notification settings - Fork 73
Description
I have tried the example thats listed here.
But the parameters are not being replaced in the final request. I still see the placeholders ?XXX?
I don't get any errors either.
Is there a known issue around this?
Here is my WSDL
`
<wsdl:definitions targetNamespace="http://demo" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://demo" xmlns:intf="http://demo" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
wsdl:types
</wsdl:types>
<wsdl:message name="sayThanksRequest">
<wsdl:part element="impl:sayThanks" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="sayThanksWithAdjectiveResponse">
<wsdl:part element="impl:sayThanksWithAdjectiveResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="sayThanksWithAdjectiveRequest">
<wsdl:part element="impl:sayThanksWithAdjective" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="sayThanksResponse">
<wsdl:part element="impl:sayThanksResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="sayHelloWorldRequest">
<wsdl:part element="impl:sayHelloWorld" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="addPersonRequest">
<wsdl:part element="impl:addPerson" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="addPersonResponse">
<wsdl:part element="impl:addPersonResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="sayHelloWorldResponse">
<wsdl:part element="impl:sayHelloWorldResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:portType name="HelloWorld">
<wsdl:operation name="sayThanksWithAdjective">
<wsdl:input message="impl:sayThanksWithAdjectiveRequest" name="sayThanksWithAdjectiveRequest">
</wsdl:input>
<wsdl:output message="impl:sayThanksWithAdjectiveResponse" name="sayThanksWithAdjectiveResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="sayThanks">
<wsdl:input message="impl:sayThanksRequest" name="sayThanksRequest">
</wsdl:input>
<wsdl:output message="impl:sayThanksResponse" name="sayThanksResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="sayHelloWorld">
<wsdl:input message="impl:sayHelloWorldRequest" name="sayHelloWorldRequest">
</wsdl:input>
<wsdl:output message="impl:sayHelloWorldResponse" name="sayHelloWorldResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="addPerson">
<wsdl:input message="impl:addPersonRequest" name="addPersonRequest">
</wsdl:input>
<wsdl:output message="impl:addPersonResponse" name="addPersonResponse">
</wsdl:output>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="HelloWorldSoapBinding" type="impl:HelloWorld">
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="sayThanksWithAdjective">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="sayThanksWithAdjectiveRequest">
<wsdlsoap:body use="literal"/>
</wsdl:input>
<wsdl:output name="sayThanksWithAdjectiveResponse">
<wsdlsoap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="sayThanks">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="sayThanksRequest">
<wsdlsoap:body use="literal"/>
</wsdl:input>
<wsdl:output name="sayThanksResponse">
<wsdlsoap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="sayHelloWorld">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="sayHelloWorldRequest">
<wsdlsoap:body use="literal"/>
</wsdl:input>
<wsdl:output name="sayHelloWorldResponse">
<wsdlsoap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="addPerson">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="addPersonRequest">
<wsdlsoap:body use="literal"/>
</wsdl:input>
<wsdl:output name="addPersonResponse">
<wsdlsoap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="HelloWorldService">
<wsdl:port binding="impl:HelloWorldSoapBinding" name="HelloWorld">
<wsdlsoap:address location="http://localhost:8080/SimpleSOAPExample/services/HelloWorld"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
`
And I am trying to add parameters to the map like so:
HashMap<String, String> formParams = new HashMap<String, String>(); formParams.put("xpath:/sayThanksWithAdjective/adjective", "Handsome"); formParams.put("xpath:/sayThanksWithAdjective/name", "Vikram");
The output I am getting is as below:
<s11:Envelope xmlns:s11='http://schemas.xmlsoap.org/soap/envelope/'> <s11:Body> <impl:sayThanksWithAdjective xmlns:impl='http://demo'> <impl:adjective>?XXX?</impl:adjective> <impl:name>?XXX?</impl:name> </impl:sayThanksWithAdjective> </s11:Body> </s11:Envelope>
Here is the expected output
<s11:Envelope xmlns:s11='http://schemas.xmlsoap.org/soap/envelope/'> <s11:Body> <impl:sayThanksWithAdjective xmlns:impl='http://demo'> <impl:adjective>**Handsome**</impl:adjective> <impl:name>**Vikram**</impl:name> </impl:sayThanksWithAdjective> </s11:Body> </s11:Envelope>