【问题标题】:getting null value in the controller while submitting the form提交表单时在控制器中获取空值
【发布时间】:2015-12-28 23:18:01
【问题描述】:

我在这里使用提交操作提交表单。在 Controller 中,模型对象显示空值。假设我正在使用 request.getParameter("mcodeName") - 那么我正在获得价值。当我使用 getMcode() 方法时,乳清值为空。请帮我解决这个问题。

@RequestMapping(value="/masterCode.do", method=RequestMethod.POST) 公共 ModelAndView addMasterCode(HttpServletRequest req, HttpServletResponse res, @ModelAttribute("masterCodeBean") MasterCodeBean mCodeBeanObj) { 日志信息(“”); 字符串 mCodeName = mCodeBeanObj.getMaster_code_name(); //获取null 字符串 mCodeStatus = mCodeBeanObj.isActive(); //获取null System.out.println("请求代码" + req.getParameter("mCodeName")); System.out.println("请求激活:" + req.getParameter("激活")); ModelAndView 模型 = null; 尝试 { model = new ModelAndView("masterCode"); codeDelegate.addMasterCodeDetails(mCodeBeanObj); model.addObject("masterCodeBean", mCodeBeanObj); }catch(异常 e){ System.out.println(EXCEP_ERR); } 返回模型; }

我的表单绑定模型属性如

【问题讨论】:

  •  
    输入产品名称:
    选择状态:

标签: spring-mvc


【解决方案1】:

抱歉,我没有足够的声望来发表评论。所以我在这里写答案。

<form:form id="mCodeForm" method="post" action="masterCode.do" modelAttribute="masterCodeBean"> 
Enter Product Name : <form:input id="mCodeName" path="mCodeName" /> <br>
Select Status : <form:select id="active" path="isActive"> 
<form:option value="0" label="Active" /> 
<form:option value="1" label="De-Active" /> 
</form:select> 
<span> <input type="submit" value="Save" id="save_mstCdeMgr"/> </span> </form:form>
  1. setter 和 getter 应该遵循一些代码约定。 假设如果你有mCodeName 作为类变量,那么getMCodeName()setMCodeName(String mCodeName)

  2. 当您使用表单标记时,路径只不过是modelAttribute 字段名称。无需编写 id 和 name 属性,因为它在运行时生成它们。某些客户端验证或 javascript 相关目的需要该 id。

    &lt;form:input id="mCodeName" path="mCodeName" /&gt; 在运行时转换为 html 代码为&lt;input type="text" id="mCodeName" name="mCodeName" /&gt;

试试这个,让我知道。

【讨论】:

    猜你喜欢
    • 2015-01-04
    • 2017-09-22
    • 1970-01-01
    • 2020-03-11
    • 1970-01-01
    • 2020-03-05
    • 2017-12-02
    • 2018-04-10
    • 1970-01-01
    相关资源
    最近更新 更多