我想爲錯誤代碼處理創建攔截器,它將在Spring MVC應用程序中重定向到適當的錯誤頁面。問題在於錯誤代碼來自服務,這是在請求處理程序內處理的,所以我可能需要攔截服務而不是請求處理程序。 例如:在java攔截器中重定向
@RequestMapping(value = "/products", method = RequestMethod.GET)
public ModelAndView handleProducts(ModelAndView mav) {
//do something
...
//load products
ResponseMo response = productsService.getProducts();
//process the response
mav.addObject("products", response.getData());
...
/do something else
return mav;
}
我需要的是趕上)的getProducts的響應(如果有錯誤響應,我需要重定向...在項目中,有很多這樣的處理程序和服務電話,所以我需要在一個地方解決它。 ProductsService是該項目的一部分,同樣的耳朵。 我在想攔截器,過濾器,方面......我可以攔截getProducts()調用,但是我不能在攔截器內部重定向,或者我可以嗎?或者我應該使用一些不同的方法?
您是否應該重定向到任何失敗的服務方法的同一頁面? –
Sotirios:是的,現在根據項目規範,只有一個頁面,所有例外都是一樣的。但是你知道,有可能會有新的請求重定向到不同的頁面... –