我需要从我的servlet发送一个重置密码链接到我的jsp页面。
我正在生成html消息并将其作为电子邮件发送给请求密码更改的用户。
一旦他点击该链接,它将获取链接中的参数并将打开Reset-Password-Page.jsp
所以,这就是我所拥有的......
SendEmail.java
...
String server = "localhost";
int randNum = 25364;
String practiceName = "blueCross";
msg.setContent("<p>Hi there,</p><br /><a>We received a request to reset your password. <br />To reset your password and access your account, click the link below.</a><br />"
+"<a href=\"<%= server%>:8080/RSIwork/ConfirmedResetPasswordPage.jsp?randNum=<%= randNum%>&practiceName=<%= practiceName%>\" Click Here </a>",
"text/html" );
Transport.send(msg);
...
这会生成网址:
http://localhost:8080/RSIwork/ConfirmedResetPasswordPage.jsp?randNum=257&&practiceName=usr
这很好,但我没有在我的servlet中获取这些参数...
ConfirmedResetPasswordPage.jsp
<form id="frmLogon" action="changePasswordLDAP" method="post">
<table>
<tr>
<td class="style2">Username:</td>
<td><input id="username" type="text" name="userName" autocomplete="off" required/></td>
</tr>
<tr>
<td class="style2" >New Password:</td>
<td><input id="rdNewPassword" type="password" name="newPassword"required/> </td>
</tr>
<tr>
<td><input id="practiceName" type="hidden" name="practiceName" value="<%request.getParameter("practiceName");%>"/></td>
</tr>
<tr>
<td><input id="randNum" type="hidden" name="randNum" value="<%request.getParameter("randNum");%>"/></td>
</tr>
changePasswordLDAP.java
String practiceName = request.getParameter("practiceName");
String userName = request.getParameter("userName");
String newPassword = request.getParameter("newPassword");
String randNum = request.getParameter("randNum");
System.out.println(practiceName + userName + newPassword + randNum);
但这并不打印randNum和实用名称
有人告诉我,如果我做任何事情。我一定是......
答案 0 :(得分:1)
正如@JB Nizet在评论中指出的那样:
<%request.getParameter("practiceName");%>
实际应该是:
<%= request.getParameter("practiceName") %>
注意添加的&#34; =&#34;并删除&#34;;&#34;。
除此之外,要检查此类错误,请单击Web浏览器中的第二个按钮,然后选择inspect元素。然后在html中搜索要调试的部分代码,看看它是否正确显示。
在这种情况下,它看起来像这样:
<input id="practiceName" type="hidden" name="practiceName" value/>
而不是:
<input id="practiceName" type="hidden" name="practiceName" value="practiceNameValue"/>