我有一个应用程序,用户可以在我的应用程序的欢迎页面上动态切换语言环境。我发现之前的开发人员(继承了没有太多文档的代码)已经重写了ViewHandler中的以下三个方法,并告诉我这对于动态切换Locale是必需的...非常感谢您的帮助。
此外,请让我知道是否有更好的处理方法。
此外,请让我知道是否有更好的处理方法。
public Locale calculateLocale(FacesContext facescontext)
{
Locale userLocale = LocaleManager.getInstance().getCurrentLocale();
if (userLocale != null)
{
return userLocale;
}
else
{
return delegate.calculateLocale(facescontext);
}
}
public void renderView(FacesContext facescontext, UIViewRoot uiviewroot)
throws IOException, FacesException {
uiviewroot.setLocale(LocaleManager.getInstance().getCurrentLocale());
delegate.renderView(facescontext, uiviewroot);
}
public UIViewRoot createView(FacesContext facescontext, String s)
{
UIViewRoot view = delegate.createView(facescontext, s);
view.setLocale(LocaleManager.getInstance().getCurrentLocale());
return view;
}