[英]Why does spring resolve views only when one level url path present on controller request mapping annotation
我正在使用Spring MVC實現一個網站,並且注意到以下問題。 我有一個像這樣的控制器
/**
* Created by adelin.ghanayem@cayetanogaming.com on 4/7/15.
*/
@Controller
@RequestMapping(value = "/")
public class UserControlPanelController {
// this url has a second level. /user/panel
@RequestMapping(value = "/user/panel",method = RequestMethod.GET)
@Secured(value = {"ROLE_USER"})
public ModelAndView mainPage(){
return new ModelAndView("user-panel.jsp");
}
}
我收到的視圖user-panel.jsp不是解析器
HTTP ERROR 404
Problem accessing /myapp/user/login-user.jsp. Reason:
/myapp/user/login-user.jsp
但是,當我將方法映射到@RequestMapping(value = "/user",method = RequestMethod.GET)
視圖已解決。 jsp頁面位於webapp的根目錄(Web目錄)
現在,當我嘗試將方法映射到@RequestMapping(value = "/user/panel",method = RequestMethod.GET)
並return new ModelAndView("/user-panel.jsp");
注意根碎片。 視圖已正確解決。
您需要在配置中指定視圖解析器,以便Spring知道在哪里查找視圖。 如果不提供,則必須指定文件的路徑,這就是為什么“ user-panel.jsp”不起作用,而“ /user-panel.jsp”起作用的原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.