【问题标题】:Spring MVC Request Life CycleSpring MVC 请求生命周期
【发布时间】:2011-09-30 15:26:05
【问题描述】:

这似乎是一个非常基本的问题,但不幸的是我不知道答案,似乎也找不到。

我正在尝试了解初始 POST/GET 到在 Tomcat 6 上运行 Spring 2.5 的 Java 6 服务器的生命周期。

我注意到对于 HttpServletRequest,在控制器中的 request.getRequestURL() 返回它所映射到的原始请求(例如“http://localhost:8080/computers/accessories. html”)。相应 JSP 中的相同调用返回 JSP 本身的路径(例如“http://localhost:8080/WEB-INF/jsp/category.jsp”)。我期待看到原始的 HTML 请求!

我错过了什么吗?

【问题讨论】:

    标签: http servlets spring-mvc


    【解决方案1】:

    此行为在api doc 中指定:

    如果此请求已使用 RequestDispatcher.forward(javax.servlet.ServletRequest, javax.servlet.ServletResponse),重构后的服务器路径 URL 必须反映用于获取 RequestDispatcher 的路径,并且 不是客户端指定的服务器路径。

    getRequestURI

    【讨论】:

    • 我知道我错过了一些东西。感谢您的快速回复。
    • 遇到了一个也解决了这个问题的线程:*.com/questions/1256562/…