When you run tracing for a failing Web service and find the PI
domain exception trace points PI 0F39 or PI 0F08, a conversion error is provided
by CICS. Possible interpretations for these conversion errors are provided
to help you diagnose the cause of the conversion error, and where appropriate,
next steps are also given.
The following conversion errors refer to COMMAREAs, but these errors
can equally apply to containers.
- INPUT_TOO_LONG
- This conversion error occurs when:
- A SOAP element that is declared as numeric contains more than 31 digits
- A numeric field in the COMMAREA contains a value that is more than 31
digits in length.
- OUTPUT_OVERFLOW
- This conversion error occurs when:
- A SOAP element contains a value that is too long to fit in the associated
field of the COMMAREA
- A SOAP element contains a numeric value that is outside the permitted
range for the associated field in the COMMAREA.
Consider changing the Web service description (WSDL) to explicitly supply
a "maxLength" facet for this field. If a "maxLength" is
specified in the WSDL, CICS ensures that this much space is set aside in the
COMMAREA for the field. If a "maxLength" facet is not
specified, CICS uses a default of 255 characters. This might be an inappropriate
value for the field. You can also add a "whitespace" facet
for character based fields and set it to "collapse". This ensures that
white space is removed from the field. By default, white space is preserved.
- NEGATIVE_UNSIGNED
- This conversion error occurs when:
- A negative number has been found in a SOAP element that is declared as
unsigned.
- A negative number has been found in a COMMAREA field that is declared
as unsigned.
- NO_FRACTION_DIGITS
- This conversion error occurs when a SOAP element contains a number that
has a decimal point but is not followed by any valid fractional digits.
- FRACTION_TOO_LONG
- This conversion error occurs when a SOAP element contains a number with
more nonzero fraction digits than the WSDL allows.
- INVALID_CHARACTER
- This conversion error occurs when:
- A SOAP element that is declared as a boolean contains a value other than
0, 1, true, or false.
- A SOAP element that is declared as hexBinary contains a value that is
not in the range 0-9, a-f, A-F.
- A SOAP element that is declared as numeric contains a nonnumeric character
- A SOAP message is not well formed.
- ODD_HEX_DIGITS
- This conversion error occurs when a SOAP element that is declared as hexBinary
contains an odd number of hexadecimal characters.
- INVALID_PACKED_DEC
- This conversion error occurs when a packed decimal field in the COMMAREA
contains an illegal value that can not be converted to XML.
- INVALID_ZONED_DEC
- This conversion error occurs when a zoned decimal field in the COMMAREA
contains an illegal value that can not be converted to XML.
- INCOMPLETE_DBCS
- This conversion error occurs when a DBCS sequence in the COMMAREA is missing
a shift in (SI) character.