2017-12-22 35 views
0

freemarker-2.3.27-incubating.jar과 함께 spring-mvc를 사용하고 있습니다. 아래처럼 뷰 해결을위한 그리고 빈 설정 ...freemarker에서 auto_escape 구성 spring-mvc 응용 프로그램

<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer"> 
    <property name="templateLoaderPath" value="/"/> 
    <property name="freemarkerSettings"> 
     <props> 
      <prop key="template_exception_handler">rethrow</prop> 
      <prop key="number_format">0.########</prop> 
      <prop key="date_format">dd/MM/yyyy</prop> 
     </props> 
    </property> 
</bean> 

<bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver"> 
    <property name="suffix" value=".ftl"/> 
    <property name="exposeSpringMacroHelpers" value="true"/> 
    <property name="exposeRequestAttributes" value="true"/> 
    <property name="exposeSessionAttributes" value="true"/> 
    <property name="requestContextAttribute" value="rc"/> 
</bean> 

과 어떻게 HTML auto-scape 수 있도록 <#ftl output_format="HTML"> 또는 <#ftl output_format="HTML" auto_esc=true>를 사용할 수 있습니까?

답변

1

#ftl 태그는 템플릿 파일의 시작 부분에 추가하기 만하면됩니다. 그러나 을 freemarkerSettings 속성의 true으로 설정하고 .ftl 대신 파일 확장자 .ftlh을 사용하는 것이 좋습니다. 또는 incompatible_improvements2.3.27으로 설정하면 recognize_standard_file_extensions 및 일부 수정 사항을 사용할 수 있습니다. (당신이 어떤 이유로 .ftl이 원하는 경우에 당신이 너무 HTMLOutputFormatfreemarkerSettings의 특성에 output_format을 설정할 수 있습니다, 없습니다 마지막으로.)

+0

이가 '의미입니다 소품 사실 - -> 2.3.27 HTML'. 그러나 이것은 작동하지 않습니다 –

+0

예. (물론 주석을 달지 않고.) 작동하지 않는 것은 무엇입니까? – ddekany

+0

이 세 가지 소품에 대한 언급이 없으면 프로젝트가 다시 재구성되고 결국 다시 실행되지 않습니다. 'output_format'없이 시도했을 때 프로젝트는 실행되지만'$ {. output_format}'는'undefined'를 출력하고'$ {. auto_esc? c}'는'false'를 출력합니다. –