2010-08-12 249 views
3

我使用Spring註解我寫了一個方法越來越org.springframework.web.bind.MissingServletRequestParameterException

public ModelAndView showTestPage(@RequestParam("firstInstanceId") String id1, 
    @RequestParam("secondInstanceId") String id2, HttpSession session) { 

    ModelAndView mv = new ModelAndView("showCompareItemList"); 
    mv.addObject("pageTitle", "showCompareItemList"); 
    mv.addObject("firstInstanceId", id1); 
    mv.addObject("secondInstanceId", id2); 

    return mv; 
} 

在有和ID2 ID1的兩個值都存在它工作正常,但是當只有一個值我得到異常org.springframework.web.bind.MissingServletRequestParameterException:必需的java.lang.String參數'secondInstanceId'不存在 我試着通過檢查null來解決這個問題,但我仍然得到這個異常任何人都可以告訴我該怎麼辦避免這種情況?

回答

8

如果請求參數可能會錯過,與required = false標記它:

public ModelAndView showTestPage(@RequestParam("firstInstanceId") String id1,  
    @RequestParam(value = "secondInstanceId", required = false) String id2, 
    HttpSession session) { 
    ... 
} 
+1

謝謝!它現在工作正常 – Vipul 2010-08-12 11:40:13

+0

非常感謝。你救了我! – Deckard 2013-08-30 11:07:47