我有两个页面:
userShow.jsp与userEdit.jsp
userShow.jsp中有个超连接跳到userEdit.jsp并将username和password传递给userEdit.jsp.
userEdit.jsp利用这些信息填充表单,表单与UserForm相关联。提交后由UserAction来处理。
现在我要获取最原来由userShow.jsp传递过来参数(即username的原始值)来更新数据库,我应该如何做?
我是想用下面的方法:可是好象struts html标签不支持在里面嵌入<%= %>这样的语句
<html:form action="/userEdit.do?uName=<%=request.getParameter("username")%>" focus="username">
<table>
<tr>
<td colspan="2"><html:errors /></td>
</tr>
<tr>
<td>用户名:</td>
<td><html:text property="username" /></td>
</tr>
<tr>
<td>密码:</td>
<td><html:password property="password" /></td>
</tr>
<tr>
<td colspan="2"><html:submit value="保存修改" property="Submit" /></td>
</tr>
</table>
</html:form>
我还尝试过用request.setAttribute()。可是在UserAction里用request.getAttribute读出来的值为null。不知道为什么

解决方案 »

  1.   

    用EL表达式吧.
    <html:form action="/userEdit.do?uName=${username}" focus="username">
      

  2.   

    可以这样,写一个userbean,然后在userShow.jsp的jsp中添加request.setAttribute("user",你的userbean),然后在userEdit.jsp中
    <html:form action="/userEdit.do?uName=<bean:write name="user" property="userName" scope="request">" focus="username">
      

  3.   

    <%
      pageContext.setAttribute("username", request.getParameter("username"));
      pageContext.setAttribute("password", request.getParameter("password"));
    %>
    <html:form action="/userEdit" method="post" >
    <input type="hidden" name="uName" value="<bean:write name="username"/>">