Browse Source

Merge branch '7.0.x'

pull/36522/head
Brian Clozel 1 week ago
parent
commit
a302ad88f3
  1. 2
      spring-webmvc/src/main/java/org/springframework/web/servlet/i18n/AcceptHeaderLocaleResolver.java
  2. 8
      spring-webmvc/src/test/java/org/springframework/web/servlet/i18n/AcceptHeaderLocaleResolverTests.java

2
spring-webmvc/src/main/java/org/springframework/web/servlet/i18n/AcceptHeaderLocaleResolver.java

@ -85,7 +85,7 @@ public class AcceptHeaderLocaleResolver extends AbstractLocaleResolver { @@ -85,7 +85,7 @@ public class AcceptHeaderLocaleResolver extends AbstractLocaleResolver {
@Override
public Locale resolveLocale(HttpServletRequest request) {
Locale defaultLocale = getDefaultLocale();
if (defaultLocale != null && request.getHeader("Accept-Language") == null) {
if (defaultLocale != null && !StringUtils.hasText(request.getHeader("Accept-Language"))) {
return defaultLocale;
}
Locale requestLocale = request.getLocale();

8
spring-webmvc/src/test/java/org/springframework/web/servlet/i18n/AcceptHeaderLocaleResolverTests.java

@ -105,6 +105,14 @@ class AcceptHeaderLocaleResolverTests { @@ -105,6 +105,14 @@ class AcceptHeaderLocaleResolverTests {
assertThat(this.resolver.resolveLocale(request)).isEqualTo(US);
}
@Test
void defaultLocaleWithBlankAcceptLanguageHeader() {
this.resolver.setDefaultLocale(JAPANESE);
MockHttpServletRequest request = new MockHttpServletRequest();
request.addHeader("Accept-Language", "");
assertThat(this.resolver.resolveLocale(request)).isEqualTo(JAPANESE);
}
private HttpServletRequest request(Locale... locales) {
MockHttpServletRequest request = new MockHttpServletRequest();

Loading…
Cancel
Save