2 回答

TA貢獻1943條經驗 獲得超7個贊
問題出在這里:
@Controller
public class ErrorController {
@RequestMapping("/error")
public String error(@RequestParam(value = "err", required = false) Integer paramErrorCode, Locale locale,
ModelMap model, HttpServletRequest httpRequest) {
// Do something
}
我有一個控制器,它處理錯誤屏幕,但它只支持 GET 方法。當我將其同時更改為 GET 和 POST 時,它開始工作了。
解決方案:
@Controller
public class ErrorController {
@RequestMapping(value = "/error" method = {RequestMethod.GET, RequestMethod.POST})
public String error(@RequestParam(value = "err", required = false) Integer paramErrorCode, Locale locale,
ModelMap model, HttpServletRequest httpRequest) {
// Do something
}
如果web.xml不確定是什么導致重定向
<error-page>
<location>/error</location>
</error-page>
或 securitycontext.xml
<sec:access-denied-handler error-page="/error?err=403"/>

TA貢獻1859條經驗 獲得超6個贊
METHOD_NOT_ALLOWED(405, "Method Not Allowed")
似乎您在測試時使用的是 GET 方法而不是 POST 方法,一旦您更改為 POSt 將獲得下一個異常是
UNAUTHORIZED(401, "Unauthorized")
添加回答
舉報