Я впервые работаю с весенними сапогами и тимелистом. Я получил 2 страницы в моем заявлении. Страница со всеми автомобилями и страница конфигурации для конкретного автомобиля.
В моем заголовке я получил поле выбора, в котором можно изменить язык. Это появляется на обеих страницах. Когда я меняю язык, я получаю localeResolver, который меняет язык. Я получил 2 файла message.properties для 2 языков.
Если я, например, выберу английский, страница перезагружается с английским языком. Затем, когда я нажимаю на автомобиль, чтобы перейти на страницу конфигурации этого конкретного автомобиля, он все еще помнит, какой язык использовать. Но на странице конфигурации вы также можете изменить язык в шапке. Если я нажимаю, например, на голландский, он тоже работает.
Но если я перейду на предыдущую страницу, у нее все еще будет старый URL с localhost: 9000 / locale? Lang = en_GB вместо localhost: 9000 / locale? Lang = nl_NL.
Когда я возвращаю представление из контроллера, я хочу, чтобы оно возвращало его с языком.
Это мой webMvcConfig
@Configuration
public class WebMvcConfig extends WebMvcConfigurationSupport {
@Override
protected void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(localeChangeInterceptor());
registry.addInterceptor(new ThymeLeafLayoutInterceptor());
}
@Bean
public LocaleResolver localeResolver(){
SessionLocaleResolver localeResolver = new SessionLocaleResolver();
localeResolver.setDefaultLocale(Locale.US);
return localeResolver;
}
@Bean
public LocaleChangeInterceptor localeChangeInterceptor() {
LocaleChangeInterceptor localeChangeInterceptor = new LocaleChangeInterceptor();
localeChangeInterceptor.setParamName("lang");
return localeChangeInterceptor;
}
Это мой контроллер, который возвращает представление search.html
@RequestMapping(method = RequestMethod.GET)
public String search() {
return "search";
}
Как мне вернуть представление с языковым параметром. Так, например: localhost:9000/locale?lang=en_GB