2015-01-21 4 views
1

Java 구성의 Spring MVC 및 Thymeleaf를 사용하는 webapp에서 작업하고 있습니다. html 페이지 템플릿의 언어는이 코드를 통해 스웨덴어로 설정되어언어 설정 springMVC/Thymeleaf

<html lang="sv"> 

그리고 인코딩이 메타 태그를 통해 UTF-8로 설정됩니다

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

그러나 몇 가지 이유 , 그 스웨덴 문자를 표시하지 않습니다.

<html> 태그를 XHTML 버전 xml:lang="en"으로 변경하려고 시도했지만 아무런 차이가 없습니다.

저는 아직 Spring과 Thymeleaf에 익숙하지 않기 때문에 무언가 잘못되었거나 언어/문자셋이 명시/설정되어 있어야하는 위치를 알지 못해서 thymeleaf 구성 코드를 제공합니다. 하고 페이지 컨트롤러 :

@Configuration 
public class ThymeleafConfig { 

    @Bean 
    public ServletContextTemplateResolver templateResolver() { 
     ServletContextTemplateResolver resolver = new ServletContextTemplateResolver(); 
     resolver.setPrefix("/WEB-INF/pages/"); 
     resolver.setSuffix(".html"); 
     resolver.setTemplateMode("HTML5"); 
     resolver.setOrder(1); 
       resolver.setCacheable(false); 
     return resolver; 
    } 

    @Bean 
    public SpringTemplateEngine templateEngine() { 
     SpringTemplateEngine engine = new SpringTemplateEngine(); 
     engine.setTemplateResolver(templateResolver()); 
     return engine; 
    } 

    @Bean 
    public ThymeleafViewResolver thymeleafViewResolver() { 
     ThymeleafViewResolver resolver = new ThymeleafViewResolver(); 
     resolver.setTemplateEngine(templateEngine()); 
     return resolver; 
    } 
} 

컨트롤러 :

@Controller 
public class IndexController { 

    @RequestMapping(value = "/", method = RequestMethod.GET) 
    public ModelAndView index() { 
     ModelAndView model = new ModelAndView(); 
     model.setViewName("index"); 
     return model; 
    } 
} 

답변

1

ThymeleafConfigtemplateResolver에 다음 줄을 추가합니다 :

,210

AS는 docssetCharacterEncoding에 주목 :

가 뷰를 렌더링 할 때 문자 인코딩 반응로 설정을 지정.

2

나는 재산 characterEncodingServletContextTemplateResolverThymeleafViewResolver 모두에 추가 된 경우에만 적절한 인코딩을 얻었다.

<bean id="templateResolver" 
     class="org.thymeleaf.templateresolver.ServletContextTemplateResolver"> 
    ... 
    <property name="characterEncoding" value="UTF-8"/> 
</bean> 
<bean class="org.thymeleaf.spring4.view.ThymeleafViewResolver"> 
    ... 
    <property name="characterEncoding" value="UTF-8"/> 
</bean>