When you use the CICS® Web services assistant to deploy your applications,
you can specify that the SOAP messages should be validated at run time, to
ensure that they conform to the Schema that is contained in the Web service
description. You can perform validation in both provider and requester mode.
CICS uses
a Java™ program
to validate SOAP messages. Therefore, you must have Java support
enabled in your CICS region
to perform validation.

If the
LOCALCCSID system
initialization parameter specifies a value other than 037, then the JVM properties
file associated with JVMProfile DFHJVMCD must contain the following:
com.ibm.cics.soap.validation.local.CCSID=ccsid
where
ccsid is
the value of the
LOCALCCSID system initialization parameter.
This value is required, even if you have specified a value for the
CCSID parameter
in the Web services assistant.

Validation of the SOAP message takes place before it is transformed
into an application data structure, and when a SOAP message is generated from
the application data structure. The SOAP message is validated using the XML
schema in the WSDL, before then being validated against the transformation
requirements of CICS.
When validation is turned off, CICS does not
use the Java program. CICS validates SOAP messages only to the
extent that is necessary to confirm that they contain well-formed XML, and
to transform them. This means that it is possible for a SOAP message to be
successfully validated against the WSDL, but then fail in the runtime environment
and vice versa.
Important: During development and testing of
your Web service deployment, using full validation will assist in detecting
problems in the message exchange between a service requester and a service
provider. However, there is a substantial overhead associated with performing
complete validation of the SOAP messages, and it is inadvisable to validate
messages in a fully tested production application.
To have your SOAP
message validated, perform the following steps:
- Ensure that you have a Web service description associated with
your WEBSERVICE resource. This will be the case for WEBSERVICE
resource definitions that were created automatically if the Web service description
was present in the PIPELINE's pickup directory when the directory was scanned.
For
WEBSERVICE definitions that were created with RDO, the Web service description
is specified with the WSDLFILE attribute.
- Turn validation on for the WEBSERVICE. Use the following CEMT or
SPI command: SET WEBSERVICE(name) VALIDATION. For WEBSERVICEs that are defined with RDO you can specify whether validation
is required or not in the VALIDATION attribute, but you can change this setting
after the WEBSERVICE is installed with the SET WEBSERVICE command.

Check the system log to find out if the SOAP message is valid.
Message DFHPI1002 indicates that the SOAP message was successfully validated,
and message DFHPI1001 indicates that the validation failed.

When you no longer need validation for the Web service, use the following
command to turn it off: SET WEBSERVICE(name)
NOVALIDATION.