Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
7.6.0
-
None
Description
If you run your Wicket application on a system with Turkish locale, and you're using `StringValidator`, the string key you end up looking up is `"StringValidator.mınımum"`, when it should be `"StringValidator.minimum"`. This results in either an empty message or an exception, depending on the resource settings for the application.
`AbstractRangeValidator` turns out to have this:
public static enum Mode { MINIMUM, MAXIMUM, RANGE, EXACT; public String getVariation() { return name().toLowerCase(); } }
This `toLowerCase()` should probably be `toLowerCase(Locale.ROOT)`.
I'd also recommend setting up forbidden-apis or similar to catch similar issues at build-time.