Having a Spring ternary expression "Did he win the race? ${['win'] ? 'Yes.' : "No.'}", PlaceholderParser will break it into two parts.
- TextPart - { text : "Did he win the race?" }
- SimplePlaceholderPart - { key : "['win'] ? 'Yes.'", fallback : "'No.'", text : "['win'] ? "'Yes.' : 'No.'"  }
But while resolving the SimplePlaceholderPart context, it returns the key value of it which misses the fallback part (PlaceholderParser.class : L376).
Now, if try SpelExpression.doParseExpression("['win'] ? 'Yes.'"), this.eatToken(TokenKind.COLON);(InternalSpelExpressionParser.class : L155) will throw the exception.