WEB-INF /文件夹/ .jsp给出404

时间:2017-08-26 08:38:30

标签: spring jsp spring-mvc

我有一个spring MVC项目和一堆jsp文件。当我尝试在WEB-INF / views /中访问我的jsp文件时,它给了我404.

供参考的屏幕截图。

enter image description here

2 个答案:

答案 0 :(得分:3)

您无法直接访问WEB-INF文件夹中的jsp页面。要访问它,您需要创建InternalResourceViewResolver bean来解析jsp页面的路径:

@EnableWebMvc
@Configuration
public class AppConfig extends WebMvcConfigurerAdapter {
    @Bean
    public InternalResourceViewResolver viewResolver() {
        InternalResourceViewResolver internalResourceViewResolver = new InternalResourceViewResolver();
        internalResourceViewResolver.setPrefix("/WEB-INF/views/");
        internalResourceViewResolver.setSuffix(".jsp");
        return internalResourceViewResolver;
    } 

在您的控制器中只返回该jsp页面的名称:

@Controller
public class EmployeeController {

    @RequestMapping(value = "/add/employee", method = RequestMethod.GET)
    public String addEmployee(Model model) {
        return "addEmployee";
    }
}

现在点击网址:http://localhost:8181/SpringMVC_CRUD/add/employee

答案 1 :(得分:1)

WEB-INF中的内容未公开到公共网址空间。您只能从其他文件中包含/访问它。这对模板等非常有用(当然,编译后的代码也驻留在那里)。

将您的公共JSP移到WEB-INF之外。