[英]404 resolving view in spring servlet
我有一个在Eclipse的Tomcat 8上运行的Spring(4)MVC servlet。 当我启动tomcat时,控制台中没有错误,并且记录了控制器的所有正确请求映射。 如果我尝试访问localhost:8080/app/login
则会执行我的控制器方法(通过调试进行检查),但是我得到一个带有以下内容的404页面:
消息/app/WEB-INF/jsp/login.jsp
描述所请求的资源不可用。
我的项目具有以下目录结构:
project-root
|-src
|-WebContent
|-WEB-INF
|-jsp
|-login.jsp
我的配置类:
@EnableWebMvc
@Configuration
@ComponentScan(basePackages = "com.example")
public class WebConfig extends WebMvcConfigurerAdapter {
@Override
public void configureViewResolvers(final ViewResolverRegistry registry) {
registry.jsp("/WEB-INF/jsp/", ".jsp").viewClass(JstlView.class);
}
//Other stuff
}
控制器:
@Controller
@RequestMapping("/login")
public class AuthnRequestController {
@RequestMapping(value = "", method = RequestMethod.GET)
public ModelAndView getLoginPage() {
return new ModelAndView("login");
}
//Other stuff
}
过去,该应用程序运行良好,但是我正在处理我的工作空间/项目在其他方面的工作,现在我又回到了工作状态,因此无法使其再次正常工作。
AFAIK,默认情况下,在Maven战争项目中,jsp文件应位于/src/main/resources/
。 由于您在配置中给了jsp文件前缀/WEB-INF/jsp/
,因此请尝试将jsp文件移动到以下位置。
/src/main/webapp/WEB-INF/jsp/
假设:
Web部署程序集中未提供到root/WebContent
的映射。
Web部署程序集中存在到/src/main/webapp
的映射。
maven war plugin
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.