我在这里使用提交动作提交表单。在Controller中,模型对象显示空值。假设我正在使用request.getParameter(" mcodeName") - 那么我正在获得价值。当我使用getMcode()方法时,乳清值为null。请帮我解决这个问题。
@RequestMapping(value="/masterCode.do", method=RequestMethod.POST) public ModelAndView addMasterCode(HttpServletRequest req, HttpServletResponse res, @ModelAttribute("masterCodeBean") MasterCodeBean mCodeBeanObj) { log.info(""); String mCodeName = mCodeBeanObj.getMaster_code_name(); //getting null String mCodeStatus = mCodeBeanObj.isActive(); //getting null System.out.println("Req code des " + req.getParameter("mCodeName")); System.out.println("Req active : " + req.getParameter("active")); ModelAndView model = null; try { model = new ModelAndView("masterCode"); codeDelegate.addMasterCodeDetails(mCodeBeanObj); model.addObject("masterCodeBean", mCodeBeanObj); }catch(Exception e) { System.out.println(EXCEP_ERR); } return model; }
我的表单绑定模型属性就像
答案 0 :(得分: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>
setter和getter应遵循一些代码约定。
假设您有mCodeName
作为类变量,那么getMCodeName()
和setMCodeName(String mCodeName)
。
使用表单标记时,路径只是modelAttribute
字段名称。不需要编写id和name属性,因为它在运行时生成它们。某些客户端验证或与javascript相关的目的需要id。
<form:input id="mCodeName" path="mCodeName" />
在运行时转换为html代码<input type="text" id="mCodeName" name="mCodeName" />
试试这个并告诉我。