NonStop SOAP User's Manual

NonStop SOAP Features and Functions
NonStop SOAP User’s Manual520501-012
4-28
Internationalization and Encoding
These changes have been made to the method InvokeSoap():
The method has been compiled as a C function.
The object file SoapInvoke.o is now available in the <soapInstallation>/lib directory,
instead of the <soapInstallation>/samples/pathway/LinkSoapLib directory.
A header file, invoke_soap.h in the directory <soapInstallation>/include contains
the signature of the method InvokeSoap().
Internationalization and Encoding
NonStop SOAP allows a client to specify the output encoding of SOAP messages in
any of these ways (in order of decreasing precedence):
In the Encoding element of the NonStop SOAP header. (See NonStop SOAP
Header on page 4-2.) This option lets you control the encoding of individual
responses.
In the outputEncoding attribute of the SDL file. This option lets you specify the
default encoding of responses from a service.
Implicitly. If neither the SOAP header nor the SDL file specifies an output encoding,
the output encoding is the same as the input encoding.
NonStop SOAP supports all output encodings in the International Components for
Unicode (ICU) library, version 2.6.1.
Specifying the Output Encoding in the Request
This is an example of a SOAP request that specifies ISO-8859-1 as the output
encoding.
If the SOAP server does not support the requested encoding, it returns this fault
message:
Example 4-15. Request with Output Encoding Specified in Header
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header
xmlns:nskhdr="urn:compaq_nsk_oss_SoapHeader">
<nskhdr:Encoding OutputEncoding="Shift_JIS"/>
</SOAP-ENV:Header>
<SOAP-ENV:Body xmlns:admin="urn:compaq_nsk_oss_soapquery">
<admin:ListServices serviceType="all">
</admin:ListServices>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>