获取org.springframework.web.bind.MissingServletRequestParameterException

时间:2010-08-12 09:54:01

标签: spring spring-mvc

我正在使用spring注释我写了一个方法

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;
 }

当id1和id2的两个值都存在时它工作正常但是当只有一个值时我得到异常org.springframework.web.bind.MissingServletRequestParameterException:必需的java.lang.String参数'secondInstanceId'不存在 我尝试通过检查null来解决这个问题,但我仍然得到这个异常,任何人都可以告诉我应该怎么做才能避免这种情况发生?

1 个答案:

答案 0 :(得分:8)

如果可能遗漏了请求参数,请使用required = false

进行标记
public ModelAndView showTestPage(@RequestParam("firstInstanceId") String id1,    
    @RequestParam(value = "secondInstanceId", required = false) String id2,
    HttpSession session) {
    ...
}