hi hardy,
thx for moving it to an own thread!
a copy of my last answer:
...
it's just about:
- an interface which directly allows simple but still flexible custom implementations of (custom) message-sources (including a simple delegation to a ResourceBundle) - see [1].
vs.
- an interface which is restricted to ResourceBundle. -> if it isn't possible to use ListResourceBundle or PropertyResourceBundle, users have to implement #getKeys which might not be possible (/ that easy) for some advanced use-cases.
the rest is more or less the same - if the MessageInterpolator receives a key, it uses the new interface for the lookup (if there is no custom implementation of the new interface or no result for the given key, the existing default bundle (ValidationMessages) is used as a fallback).
regards,
gerhard