我有以下文件夹结构
MyApp
--WEB-INF
--resources
--partialFooter.jsp
--myPartials
--menu.jsp
--views
--index.jsp
和我的index.jsp文件
<#include "../resources/partialFooter.jsp"/>
<#include "../resources/myPartials/menu.jsp"/>
但是在两行中都找不到重新找到的文件。我是否采用正确的路径,我也尝试使用绝对路径但是找不到相同的文件错误。
这就是我创建自由标记视图解析器的方法
@Configuration
@EnableWebMvc
@ComponentScan({"configuracion", "controladores", "seguridad"})
public class ConfigMVC extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("/WEB-INF/resources/");
}
@Bean
public FreeMarkerConfigurer freemarkerConfig() {
FreeMarkerConfigurer freeMarkerConfigurer = new FreeMarkerConfigurer();
freeMarkerConfigurer.setTemplateLoaderPath("/WEB-INF/views/");
return freeMarkerConfigurer;
}
@Bean
public FreeMarkerViewResolver viewResolver() {
FreeMarkerViewResolver viewResolver = new FreeMarkerViewResolver();
viewResolver.setPrefix("");
viewResolver.setSuffix(".jsp");
viewResolver.setCache(false);
return viewResolver;
}
}
答案 0 :(得分:0)
您无法退出/WEB-INF/views/
目录,因为setTemplateLoaderPath
将其设置为根模板目录。因此,您必须使用/WEB-INF/
,然后在引用视图模板时,必须使用"/view/"
开始其名称。 (虽然更常见的方法是将包含的文件放入视图模板的&#34; lib
&#34;子目录中,然后您可以使用视图模板的目录作为根目录。)< / p>
顺便说一下,你可能正在使用过时的FreeMarker版本,因为有一段时间它会在错误信息中解释这一点。