Conversion errors in trace points

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.