only call LocaleResolver when encountering an actual HttpServletRequest

This commit is contained in:
Juergen Hoeller 2009-07-09 10:03:17 +00:00
parent 2db239031f
commit 542b88fb04
1 changed files with 7 additions and 6 deletions

View File

@ -44,16 +44,17 @@ public class SpringLocaleResolver extends DefaultLocaleResolver {
@Override @Override
public Locale resolveLocale(TilesRequestContext context) { public Locale resolveLocale(TilesRequestContext context) {
if (context instanceof ServletTilesRequestContext) { if (context instanceof JspTilesRequestContext) {
return RequestContextUtils.getLocale(((ServletTilesRequestContext) context).getRequest());
}
else if (context instanceof JspTilesRequestContext) {
PageContext pc = ((JspTilesRequestContext) context).getPageContext(); PageContext pc = ((JspTilesRequestContext) context).getPageContext();
return RequestContextUtils.getLocale((HttpServletRequest) pc.getRequest()); return RequestContextUtils.getLocale((HttpServletRequest) pc.getRequest());
} }
else { else if (context instanceof ServletTilesRequestContext) {
return super.resolveLocale(context); HttpServletRequest request = ((ServletTilesRequestContext) context).getRequest();
if (request != null) {
return RequestContextUtils.getLocale(request);
}
} }
return super.resolveLocale(context);
} }
} }