[
https://issues.apache.org/jira/browse/NIFI-7055?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17021160#comment-17021160
]
Wouter de Vries commented on NIFI-7055:
---------------------------------------
My take on this, in the "," case we do have at least one empty element, even if
you exclude trailing commas. And so passing false to excludeEmpty and a
NON_EMPTY validator should result in a fail. This is due to how String.split
works "," results in a zero-length array, and so the NON_EMPTY validator is not
called.
Concretely: "", ",", ",,,,," should all not pass validation if a NON_EMPTY
validator is provided and excludeEmpty is false.
> createListValidator returns valid for empty list with "," input
> ---------------------------------------------------------------
>
> Key: NIFI-7055
> URL: https://issues.apache.org/jira/browse/NIFI-7055
> Project: Apache NiFi
> Issue Type: Bug
> Reporter: Otto Fowler
> Assignee: Otto Fowler
> Priority: Major
>
> from Slack:
> <[email protected]>
> "I'm looking at the createListValidator, and to my surprise passing in a list
> of (essentially) two empty elements "," validates, while a totally empty
> string "" does not. Apparently due to some underlying behavior of
> String.split."
> The string "," does return a String[0] from split. This should fail
> validation as if here were no elements as null, "", " " do possibly.
> But that kind of goes against or doesn't consider the ignore empty entries.
> I think the difference is whether or not you consider "," to be a list of two
> empty elements or an empty list.
> The current implementation with String.spilt() will produce an empty list.
> Is that correct?
--
This message was sent by Atlassian Jira
(v8.3.4#803005)