APAR status
Closed as program error.
Error description
When the DFDL parser parses an element with nillable="yes" and dfdl:nilKind="literalValue", if the start of the element matches one of the nil values in dfdl:nilValue then the DFDL parser returns <null> for the element. It should only return <null> if the whole of the element matches one of the nil values.
Local fix
Replace the nilValue of "WSP*;" (zero or more white space) with "%ES; %WSP+" (empty or one or more white space) which is logically equivalent.
Problem summary
**************************************************************** USERS AFFECTED: All users of IBM Integration Bus V9.0 and V10.0 using the DFDL parser, defining elements as nillable with nilkind 'literalValue', where one of the the nil values matches the start of the data value but does not match all the data value. Platforms affected: MultiPlatform **************************************************************** PROBLEM DESCRIPTION: When parsing an element with nillable="yes" and dfdl:nilKind="literalValue", the DFDL parser code uses the delimited scanner to perform matching of nil values. If the start of the element value matches one of the nil values in dfdl:nilValue then the DFDL parser incorrectly matches the nil value even though there is data remaining. It should be an exact match. Further, if one of the nil values is WSP* and the value has an MBCS encoding, then the parser incorrectly matches the nil value if the first byte of the element value matches the first byte of one of the WSP entity characters. After a match the code was not checking that the end of the scoped buffer was reached, and not stepping to the end of the matched data. Additionally if one of the nil values is WSP*, then a value of empty string was not being matched when it should be. The code was not setting the matched flag when WSP* matched empty string. Affects text and binary elements.
Problem conclusion
The product now contains and updated level of the DFDL component which fixes the problem. --------------------------------------------------------------- The fix is targeted for delivery in the following PTFs: Version Maintenance Level v9.0 9.0.0.6 v10.0 10.0.0.5 The latest available maintenance can be obtained from: http://www-01.ibm.com/support/docview.wss?rs=849&uid=swg27006041 If the maintenance level is not yet available,information on its planned availability can be found on: http://www-1.ibm.com/support/docview.wss?rs=849&uid=swg27006308 ---------------------------------------------------------------
Temporary fix
Comments
APAR Information
APAR number
IT14150
Reported component name
INTEGRATION BUS
Reported component ID
5724J0530
Reported release
900
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2016-03-07
Closed date
2016-05-25
Last modified date
2016-05-25
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
INTEGRATION BUS
Fixed component ID
5724J0530
Applicable component levels
R900 PSY
UP
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSNQK6","label":"IBM Integration Bus"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
23 March 2020