Spring MVC Multiaction Controller getParameter返回null

时间:2010-10-15 07:23:39

标签: spring jsp spring-mvc

我是Spring MVC的新手,需要指导

我的 jsp 就像:

<form:form name="form1" method="post" action="input.htm?method=getHealth">
.......
<td >
<form:select path="envList">
<form:options items="${envList}"/>
</form:select>
</td>

我的.java就像:

public class InputController extends MultiActionController {
    public ModelAndView getHealth(HttpServletRequest request, HttpServletResponse response) {
        .......................
        String selectedEnv =request.getParameter("envList");
    }
}

这里我想从下拉列表中捕获选定的值,但是 request.getParameter("envList") 返回null 。 请建议我如何从jsp到.java中选择值。

提前致谢

3 个答案:

答案 0 :(得分:1)

如果您使用的是Spring 3或注释

,则可以使用@RequestParam("envList") String envList
public ModelAndView getHealth(@RequestParam("envList") String envList
    , HttpServletRequest request, HttpServletResponse response) {
    .......................
}

以上实现可帮助您直接从jsp获取所需的值。

答案 1 :(得分:0)

我猜您应该指定name

<form:select属性

注意,如果你没有使用spring的绑定功能(即 - spring根据请求参数自动创建命令对象),你可以使用<select>标签(没有任何弹簧的东西)

答案 2 :(得分:0)

我遇到了类似的问题,我设法通过在控制器中尽早捕获null来修复它。试试这个:

if(request.getParameter("form1") == null) { 
  return new ModelAndView();
}

希望它有所帮助。