Spring MVC中控制器的问题

时间:2012-01-03 05:09:40

标签: spring-mvc controller

我正在尝试创建一个用于输入用户信息的jsp表单。 我正在使用控制器来显示输入页面。 我已经使用modelmap添加了一个User bean对象。控制器返回ModelandView对象。 问题在于此。没有模型值返回到jsp页面。有人知道为什么会这样吗?请帮帮我......

<context:annotation-config/>
<context:component-scan base-package="com.mobilize.rest"/>
<mvc:annotation-driven/>

<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"/>


<import resource="configuration/messageConverter.xml"/>
<import resource="configuration/viewResolveContext.xml"/>

下面的代码显示了用于获取AddUSer.jsp视图页面的控制器 调试时,值正确存储在对象中。 但问题是在表单页面上没有收到对象。

@RequestMapping(value = "/AddUser.html", method = RequestMethod.GET)

public ModelAndView addUser(
  @RequestParam(value = "reload", required = false, defaultValue = "false")
  Boolean reload,
  @RequestParam(value = "reset", required = false, defaultValue = "false")
  Boolean reset,HttpServletRequest request) {

    HttpSession httpSession = request.getSession();
    ModelMap modelmap = new ModelMap();
    Users users = new Users();

    modelmap.addAttribute("users", users);
    modelmap.addAttribute("MOB_USER_ADD_STATUS_SUCCESS_MESSAGE","trial");

    return new ModelAndView("AddUser", modelmap);
}

[已编辑,其他代码已从评论部分移出]

<div id="content" style="height:508px"> <br/>  
  <c:if test="${MOB_USER_ADD_STATUS_SUCCESS_MESSAGE!=null}"> 
    <div align="center" 
           id="statusIndicator"
        class="successMessage">${MOB_USER_ADD_STATUS_SUCCESS_MESSAGE}
    </div> 
  </c:if> 
  ${MOB_USER_ADD_STATUS_SUCCESS_MESSAGE} 
  <form:form commandName="users" 
                  method="POST" 
                  action="AddUser.html"> 
    <table> 
     <tr>
       <td> User Name: </td>
       <td><form:input path="userName" 
                         id="username">
           </form:input> 
       </td> 
     </tr> 
     <tr> 
       <td></td> 
       <td><form:errors path="userName" 
                    cssClass="errorMessage">
           </form:errors>
       </td> 
     </tr> 
     <tr> 
       <td> Password: </td> 
       <td> <form:textarea path="password" id="password"></form:textarea> </td> 
     </tr> 
     <tr> 
       <td></td> 
       <td><form:errors path="password" cssClass="errorMessage"></form:errors></td>
     </tr> 
     <tr> 
       <td></td> 
       <td> <input type="submit" name="offer" value=" Add "/> 
            <input type= "reset" 
                   name="Reset" 
                  value=" Reset "
                onclick="document.location.href='AddUser.html?reset=true'"/> 
        </td> 
      </tr> 
   </table> 
  </form:form> 
</div>

1 个答案:

答案 0 :(得分:0)

错误是我导入了错误的类。我没有导入org.springframework.web.servlet.ModelAndView,而是导入了 org.springframework.web.portlet.ModelAndView。这就是错误的原因。我本来应该更加小心。