在我目前的休息服务方案中,我需要能够向个别客户提供本地化的错误消息。
想一下像void validate(Locale locale)
这样的方法,它在接收一些请求时会在参数对象上调用。
可以从http标头中挤出语言环境信息。
如何在插入违规消息时指示/配置验证器使用某种语言?
据我所知,验证者通过调用Locale.getDefault()
来选择使用过的Locale。
到目前为止,除了this文章之外,我找不到任何与我的需求完全不符合的文章(这个故事太长,无法说明)。
提前致谢!
答案 0 :(得分:4)
根据spec,您有两种可能性:
使用interpolate(String, Context, Locale)
或
实施custom message interpolator。
可以提供自定义消息插补器(例如,插入上下文数据,或调整使用的默认语言环境)。
另见: