Есть ли способ использовать Locale в контроллере представления Spring Boot или обработчике ресурсов? - PullRequest
0 голосов
/ 21 ноября 2019

У меня есть некоторые ресурсы, которые я хотел бы вернуть на основе запроса Locale. Могу ли я определить контроллер представления или обработчик ресурсов, который учитывает локаль?

В основном я могу сделать это:

@Controller()
public class StaticController extends BaseWebController {
    @RequestMapping(value = "/")
    public String getCatalogWithView(Model model, Locale locale) throws Exception {
        if(locale == null){
            locale = Locale.ENGLISH;
        }

        return String.format("forward:/%s/index.html", locale.getLanguage());
    }
}

Путем настройки обработчика ресурсов, похожего на этот (но это будетверните "forward: /fr/index.html", если запрос имеет локаль FRENCH):

@Configuration
@EnableWebMvc
public class MvcConfigurationAdapter extends WebMvcConfigurerAdapter{
    @Override
    public void addViewControllers(ViewControllerRegistry registry) 
        registry.addViewController("/").setViewName("forward:/en/index.html");
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...