日期:2014-05-17  浏览次数:20721 次

用户修改时出现问题
struts做得用户资料修改。首先显示用户列表,然后点击某条数据进入修改界面,进入修改页后给文本框赋值时出错。
For input string: "userName"
at java.lang.NumberFormatException.forInputString
从list里点击“修改”后的action如下:
Action如下
public ActionForward modify(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
CompanyUserDAO cuDAO = new CompanyUserDAO();
XtTcCompanyUser xtcu = new XtTcCompanyUser();
String username = request.getParameter("username");
HttpSession session=request.getSession();
List<XtTcCompanyUser> listxtcu=new ArrayList<XtTcCompanyUser>();
String sql=" and 用户名称 like '%" + username + "%'";
listxtcu=cuDAO.getList(sql);
request.setAttribute("companyusermodifylist",listxtcu );
return mapping.findForward("success");
}
编辑页:
<html:form action="/**.do">
pwd : <html:text property="pwd" /><html:errors property="pwd"/><br/>
linkperson : <html:text property="linkperson" ><html:errors property="linkperson"/><br/>
usernae : <html:text property="username" value="${companyusermodifylist.userName}"//><html:errors property="username"/><br/>
<html:submit/><html:cancel/>
</html:form>

username的大小写都测试了,不管用。
调试时listxtcu里也有值。

------解决方案--------------------
探讨
struts做得用户资料修改。首先显示用户列表,然后点击某条数据进入修改界面,进入修改页后给文本框赋值时出错。
For input string: "userName"
at java.lang.NumberFormatException.forInputString
从list里点击“修改”后的action如下:
Action如下
public ActionForward modify……

------解决方案--------------------
value="${companyusermodifylist.userName}"
list里放的是XtTcCompanyUser对象,XtTcCompanyUser对象里放着userName属性 你这样写表示拿list的userName属性
 value="${companyusermodifylist[0].userName}"
------解决方案--------------------
1楼的分析很好。3楼的建议应该是点子上了。就是EL的问题了。