循环视图路径错误,Spring MVC

Ben

我正在尝试做本教程-> http://spring.io/guides/gs/serving-web-content/

当我运行它时,它说“圆形视图路径” [正在问候],为什么?

在本教程中,我不了解的一件事是以下内容及其工作原理:

return "greeting";

程式码片段:

package hello;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller
public class GreetingController {
    @RequestMapping("/greeting")
    public String greeting(@RequestParam(value="name", required=false, defaultValue="World") String name, Model model) {
        model.addAttribute("name", name);
        return "greeting";
    }
}
Sotirios Delimanolis

在学习本教程时,您可能已经跳过了一步。

我将解释为什么您会看到自己的行为,并且可以决定以后要做什么。

您可能已经启动了应用程序

SpringApplication.run(Application.class, args);

在教程Application类的main方法中。默认情况下,由于@EnableAutoConfiguration(以及类路径中的其他组件)的缘故DispatcherServlet将为您注册a UrlBasedViewResolver它提供的默认值不会设置aprefixsuffix解析的视图。

在您的@Controller处理程序方法中,当您执行

return "greeting";

Spring将使用UrlBasedViewResolver来解析视图名称。在这种情况下,视图名称将仅为greeting通常情况下,一旦完成,它将使用ServletAPIHttpServletRequest#getRequestDispatcher(String)在该视图名称中传递的内容。该方法返回一个RequestDispatcher,指向该路径的处理程序。

在我们的示例中,RequestDispatcherSpring在获取之前,将视图名称(解析为路径)与当前请求的路径进行比较。它将发现它们都是平等的。换句话说,对的请求/greeting将通过返回一个视图来处理,该视图/greeting将由相同的@Controller处理程序方法处理,并且永远返回。Spring会检测到这一点,并告诉您您有一个圆形的视图路径,即。您将无限循环。

了解如何@EnableAutoConfiguration工作并更改配置,以便您可以定义自己的配置UrlBasedViewResolverInternalResourceViewResolver适当设置前缀和后缀的配置。


您可以Spring MVC官方文档中阅读有关视图名称解析的更多信息

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

循环视图路径错误,Spring MVC

来自分类Dev

Spring Boot Rest:循环视图路径[错误]:将再次分派回当前处理程序URL [/错误]

来自分类Dev

Spring MVC返回视图抛出500错误

来自分类Dev

由于错误的视图,Spring MVC 呈现 404

来自分类Dev

Spring MVC JSP视图

来自分类Dev

Spring MVC-处理错误并传递给视图的通用方法

来自分类Dev

Spring MVC JSP错误

来自分类Dev

Spring MVC验证错误

来自分类Dev

Spring MVC路径变量丢失

来自分类Dev

Spring MVC:了解视图绑定

来自分类Dev

Spring MVC:“视图”如何工作?

来自分类Dev

其余路径的Spring MVC路径变量

来自分类Dev

在Spring MVC中的视图模板中使用绝对/全局路径的最佳方法

来自分类Dev

动态生成表循环/ foreach MVC视图

来自分类Dev

Spring MVC错误请求与@requestbody

来自分类Dev

Spring MVC错误,显示“ NoSuchMethodError”

来自分类Dev

Maven项目-Spring MVC错误

来自分类Dev

Spring MVC CSS错误加载

来自分类Dev

Spring MVC bean创建错误

来自分类Dev

Spring MVC错误,显示“ NoSuchMethodError”

来自分类Dev

Spring MVC + Ajax错误400

来自分类Dev

MVC错误路径不能为空

来自分类Dev

在MVC中定义的路由返回错误的路径

来自分类Dev

Spring MVC中的可选路径段

来自分类Dev

Spring MVC路径匹配忽略双斜杠//

来自分类Dev

Spring MVC创建indexservlet作为根路径

来自分类Dev

MVC视图未显示验证错误

来自分类Dev

MVC视图未显示验证错误

来自分类Dev

在MVC中创建视图会导致错误