The client must identify parameter data types
<namesp1:sayHelloTo xmlns:namesp1="urn:HelloServer">
<c-gensym3 xsi:type="xsd:string">Tim O'Reilly</c-gensym3>
</namesp1:sayHelloTo>
The server must identify return value data types
<ns1:sayHelloToResponse
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="urn:HelloServer">
<sayHelloToReturn xsi:type="xsd:string">Hello Tim O'Reilly</sayHelloToReturn>
</ns1:sayHelloToResponse>
The class definition's data types
public class HelloServer {
public String sayHelloTo(String name) {
return "Hello " + name;
}
}
Study the request and response envelope contents for a moment here. Note that SOAP parameter and return types of the class (both Java String's) corresponds directly to the SOAP types in the request and response ("xsd:string").