- Issue created by @fmb
Boolean fields on external entities mapped using the "String functions and JSONPath" plugin are always evaluated as TRUE.
Create a boolean field on an external entity. Map it with the "String functions and JSONPath" plugin (in my case the mapping was $.additionalInfo.available). FALSE will be converted to the 'FALSE' string in StringJsonPath::extractValueFromRawDataUsingMapping(), and TRUE to 'TRUE', which will always be evalued to TRUE (conversion of a non-empty string) later on in BinaryData::getCastedValue() (called from ExpressionFieldMapperBase::processPropertyValue()).
Figuring out a fix. Unfortunately I cannot provide a patch as I do not understand the full logic in StringJsonPath::extractValueFromRawDataUsingMapping().
Active
1.0
Code