簡體   English   中英

Spring @RequestParam類型不匹配異常?

[英]Spring @RequestParam Type mismatch exception?

所以我有以下控制器:

@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類型不正確時,Spring拋出哪種異常類型,例如String
從文檔中看,它看起來像ConversionFailedException,但是沒有被相應類的異常處理程序捕獲。

@ExceptionHandler(value = {ConversionFailedException.class,})
@ResponseStatus(value = HttpStatus.NOT_ACCEPTABLE)
public ModelAndView wrongParameterType(ConversionFailedExceptione,HttpServletRequest request){
    //log and things
}

我也嘗試過使用被捕獲的TypeMismatchException ,但是我很困惑,因為從文檔中嘗試設置bean屬性時會拋出該錯誤。

您能否澄清引發哪種類型的異常以及何時引發?

從那時起,您一直在談論,如果您將'uid'作為String提供,並且您期望ConversionFailedException。 但是,當可以存在合適的轉換器並且java找不到該轉換器時,通常會發生ConversionFailedException。

如果您仍然沒有收到,這是一個曾經有人問過的問題 ,您可以在其中理解ConversionFailedException。

但是,在測試之后,您可以檢查是否存在MethodArgumentTypeMismatchException,其根本原因NumberFormatException ,它清楚地表明Java響應了您的轉換,但無法將String轉換為整數

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM