Spring国际化语言切换不生效

使用SessionLocaleResolver一致不生效,获取message时候报错:

java.lang.UnsupportedOperationException: Cannot change HTTP accept header - use a different locale resolution strategy

at org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver.setLocale...

org.springframework.web.servlet.i18n.LocaleChangeInterceptor.preHandle...

最终定位到原因,DispatcherServlet读取到的仍然是AcceptHeaderLocaleResolver,注入了但没有生效,问题代码如下:

java 复制代码
@Bean
@Primary
public LocalResolver sessionLocaleResolver() {
     SessionLocaleResolver slr = new SessionLocaleResolver();
     slr.setDefaultLocale(Locale.ENGLISH);
     slr.setDefaultTimeZone(TimeZone.getTimeZone("UTC"));
     return slr;
}

修改后代码如下:

java 复制代码
@Bean("localeResolver")
   @Primary
   public LocalResolver sessionLocaleResolver() {
        SessionLocaleResolver slr = new SessionLocaleResolver();
        slr.setDefaultLocale(Locale.ENGLISH);
        slr.setDefaultTimeZone(TimeZone.getTimeZone("UTC"));
        return slr;
}
相关推荐
爱笑的眼睛11几秒前
PyTorch Lightning:重新定义深度学习工程实践
java·人工智能·python·ai
Kevinyu_13 分钟前
责任链模式
java·hadoop·责任链模式
明洞日记17 分钟前
【设计模式手册012】责任链模式 - 请求处理的流水线艺术
java·设计模式·责任链模式
q***071421 分钟前
Java实战:Spring Boot application.yml配置文件详解
java·网络·spring boot
龙卷风040531 分钟前
深入理解Spring AI Alibaba多Agent系统:图结构驱动的智能协作
人工智能·后端
雨中飘荡的记忆32 分钟前
Spring Alibaba AI 实战指南
java·ai编程
冰封剑心34 分钟前
MiniCPM-V-2_6 (4-bit 量化)使用
java·前端·数据库
用户83562907805136 分钟前
C# 高效生成 Word 表格:复杂表格创建实战指南
后端·c#
mqiqe36 分钟前
【Spring AI MCP】四、MCP 服务端
java·人工智能·spring
q***428237 分钟前
SpringCloudGateWay
android·前端·后端