2013-07-13 68 views
0

我有我的视图解析器无法找到我的合适的freemarker模板的问题。春天的MVC输出视图路径春天试图解决

有没有办法告诉解析器bean和/或弹簧输出它正在寻找的文件路径?

即,如果我的控制器返回viewName为“home”,我希望输出类似“/WEB-INF/views/home.ftl”。

我的freemarker bean定义如下:

@Bean 
public ViewResolver getViewResolver() { 
    FreeMarkerViewResolver resolver = new FreeMarkerViewResolver(); 
    resolver.setCache(false); 
    resolver.setPrefix(""); 
    resolver.setSuffix(".ftl"); 
    return resolver; 

} 

@Bean 
public FreeMarkerConfig getFreemarkerConfig() { 

    Properties props = new Properties(); 
    props.setProperty("number_format","0.##"); 
    props.setProperty("locale","en-GB"); 

    Configuration configuration = new Configuration(); 
    configuration.setDefaultEncoding("UTF-8"); 

    FreeMarkerConfigurer configurer = new FreeMarkerConfigurer(); 
    configurer.setFreemarkerSettings(props); 
    configurer.setConfiguration(configuration); 
    configurer.setTemplateLoaderPath("/WEB-INF/views/"); 

    return configurer; 

} 

回答

0

Junits测试用例

@Test 公共无效插入件()抛出异常{ this.mockMvc = MockMvcBuilders.webAppContextSetup(this.wac) 。建立(); ()()()/())()()()()()()/() ; }

这里“插入”,将您的要求的映射值和 “页”代替将与您预计春季将采取

的相对位置被替换