2010-08-12 182 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