当前位置: 首页 > 知识库问答 >
问题:

Spring Boot viewResolver不工作-未映射到给定位置

范鸿畅
2023-03-14

我正在开发学习用的spring boot应用程序。

@Override
public void configureViewResolvers(ViewResolverRegistry registry) {
    InternalResourceViewResolver resolver = new InternalResourceViewResolver();
    resolver.setPrefix("/views/");
    resolver.setSuffix(".jsp");
    registry.viewResolver(resolver);
}

我已经如上所述配置了视图解析器。下面是页面的APIendpoint

@RequestMapping(value = "/",method = RequestMethod.GET)
public ModelAndView homePage(){
    ModelAndView modelAndView = new ModelAndView();
    modelAndView.setViewName("index");
    return modelAndView;
}

但是当我点击这个api时,我无法得到响应。我得到404,并且我在控制台上得到的错误是< code >在名为“dispatcherServle”的DispatcherServlet中找不到具有URI [/WEB-INF/views/index.jsp]的HTTP请求的映射

我该怎么解决这个问题?

共有2个答案

邵绪
2023-03-14

视图路径错误/WEB-INF/view/而不是/view/

@Override
public void configureViewResolvers(ViewResolverRegistry registry) {
    InternalResourceViewResolver resolver = new InternalResourceViewResolver();
    resolver.setPrefix("/WEB-INF/views/");
    resolver.setSuffix(".jsp");
    registry.viewResolver(resolver);
}

或者您可以使用位于 /resources/ 中的 application.properties

并添加这些属性

spring.mvc.view.prefix: /WEB-INF/views/
spring.mvc.view.suffix: .jsp

重要:jsp视图应该在< code>/resources/目录中

金慈
2023-03-14

对于遇到此类问题的人 - Spring Boot 文档在此处指出,在可嵌入的 servlet 容器中运行时不支持 JSP,即使用 JAR 打包时。

当使用WAR打包时,这里的答案中给出的建议应该是有效的-但请检查在最终的WAR中,根目录下有一个目录:WEB-INF/views,其中包含您的JSP

 类似资料:
  • 我正在构建一个REST API, 和ActiveBid类 和我的泽西请求映射器,它具有获取数据的逻辑 有人能帮我吗?我不知道和卡桑德拉共事会这么难。

  • 前端将这个json发送到我的API 控制器:

  • 我在youtube上按部就班地学习教程,但我没有得到结果。代码如下: 主要应用 或来自Chrome的以下内容: 白标签错误页 此应用程序没有/error的显式映射,因此您将其视为一种后退。

  • 这是Flatter未处理异常:PlatformException(错误,java.lang.IllegalStateException:尝试创建未注册类型的平台视图:plugins.flatter.io/google_maps)引发的错误

  • 我试图做一个简单的Spring启动oau2应用程序,我面临的问题, /oauth/authorize是不匹配到oau2服务器endpoint。该endpoint甚至没有列在可用的apis列表中 我的代码: 和应用程序属性: 当我尝试此请求时: 查看此处Oauth代码请求的图像,打印日志,并且没有匹配器映射到/oauth/authorize 项目源zip:https://filehost.net/4

  • 我还在学习ReactJS。我正在挑战自己写一个非常基本的待办事项应用程序(就像一个人一样),我有一个问题,调用onhtml函数。 这里的问题是不能调用,因为它不在render函数的返回调用中 要从map函数内部访问handleClick,我需要做什么?