Yani ben şu denetleyicisi vardır:Spring @RequestParam Tür uyuşmazlığı istisnası?
@RequestMapping(value = "/test.html", method = RequestMethod.POST)
public String test(Model model, @RequestParam(value = "uid", required = true) Long uid) {
// logic to play with uid
}
uid
tipi örneğin String
için, yanlış olduğunda istisna ne tür Bahar atar ki?
Belgelerden, ConversionFailedException gibi görünüyor, ancak bu, ilgili sınıf için bir istisna işleyicisinde yakalanmadı.
@ExceptionHandler(value = {ConversionFailedException.class,})
@ResponseStatus(value = HttpStatus.NOT_ACCEPTABLE)
public ModelAndView wrongParameterType(ConversionFailedExceptione,HttpServletRequest request){
//log and things
}
Ben de yakalanır TypeMismatchException ile çalıştım, ama çünkü bir fasulye özelliğini ayarlamak çalışırken bu atılır dokümanlardan karıştı.
Hangi türden istisnanın ne zaman atılacağını açıklar mısınız?
Atılan istisnayı bulmak için yığın izine bakamaz mısınız? – samlewis
Birkaç testten sonra, 'org.springframework.web.method.annotation.MethodArgumentTypeMismatchException' her zaman atılır. – dambros
ya da Exception.class'ı yakalamak ve bir kaydediciyi ya da bir şeyi yazdırmak için işleyicinizi konsol ya da değiştirerek kontrol edin –