[
http://opensource.atlassian.com/projects/hibernate/browse/HV-44?page=com....
]
Olle Hallin commented on HV-44:
-------------------------------
I checked the MessageInterpolator interface.
The default interpolator is fine. I just want to inject another Locale to ClassValidator.
That's all.
IMHO it is *much* simpler if ClassValidator.java replaces the two calls to
Locale.getDefault() with
LocaleHolder.getLocale(), provided that the following class exists:
package org.hibernate.validator;
import java.util.Locale;
public class LocaleHolder {
private static ThreadLocal localeHolder = new InheritableThreadLocal();
public static void setLocale(Locale locale) {
localeHolder.set(locale);
}
public static Locale getLocale() {
Locale locale = (Locale)localeHolder.get();
return locale == null ? Locale.getDefault() : locale;
}
}
Benefits:
1) Configuration-free
2) Simple
3) Efficient
4) Backwards compatible
Make Hibernate Validator multi-lingual
--------------------------------------
Key: HV-44
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HV-44
Project: Hibernate Validator
Issue Type: Improvement
Affects Versions: 3.0.0.ga
Reporter: Olle Hallin
Hibernate Validator 3.0.0 is unfortunately useless in a multi-lingual web app, since it
uses Locale.getDefault() for locating the validation message bundle.
Each and every HTTP request can have a different locale, in it's own thread.
Please add something in line with Spring's LocaleContextHolder (a ThreadLocal), which
can be set early in the request handling chain. If not set, it could fall back to the
platform's Locale.getDefault().
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira