无法排除URL';springmvc中servlet映射中的
我在Spring MVC 3.2中有一个控制器,我想允许以下url: 我想排除任何其他可能导致错误的内容。当前,bar被映射到getStuff方法 我想我必须能够做到这一点,而不使用过滤器 我的servlet映射如下所示:无法排除URL';springmvc中servlet映射中的,spring,spring-mvc,Spring,Spring Mvc,我在Spring MVC 3.2中有一个控制器,我想允许以下url: 我想排除任何其他可能导致错误的内容。当前,bar被映射到getStuff方法 我想我必须能够做到这一点,而不使用过滤器 我的servlet映射如下所示: <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/mypage/*</url-pattern&g
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/mypage/*</url-pattern>
</servlet-mapping>
servlet的
标记不支持排除。这是Servlet规范的一个限制。您必须在
过滤器中以编程方式创建此功能,servlet的
标记不支持排除。这是Servlet规范的一个限制。
您必须在过滤器中以编程方式创建此功能您必须使用名为拦截器的Spring MVC
过滤器
如果您编写自己的拦截器
,您有两个选项,如下所示:
1。选项:
使用postHandle()
方法检查您的状况。如果使用postHandle()
方法,您可以访问ModelAndView
,如果您的url与3个url中的一个不匹配,您只需抛出异常
或更改ModelAndView
2。选项:
使用preHandle()
ModelAndView定义异常(新ModelAndView(“errorPage”)
您必须使用名为拦截器的Spring MVC
过滤器
如果您编写自己的拦截器
,您有两个选项,如下所示:
1。选项:
使用postHandle()
方法检查您的状况。如果使用postHandle()
方法,您可以访问ModelAndView
,如果您的url与3个url中的一个不匹配,您只需抛出异常
或更改ModelAndView
2。选项:
使用preHandle()
ModelAndView定义异常(新ModelAndView(“errorPage”)
@RequestMapping(method = RequestMethod.GET)
public String getView(HttpServletRequest request, @ModelAttribute("myform") final MyForm form) {
return "myview";
}
@ResponseBody
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
@POST
@RequestMapping(value = "/save")
public String onSave(@RequestBody MyForm form, HttpServletRequest request, HttpServletResponse response) {
return "saved";
}