在我的申请中有一个注册表单,提交后,它将被邮寄给管理员接受/拒绝注册。
在邮件发送时间,一个唯一的键是附加的Accept button
。单击此按钮后actionListener
,控制器中将触发一个,并且我想从查询字符串中读取唯一键值,但我得到空值,尽管 URLhttp://localhost:8080/BridgeFront/app/AproveReq.xhtml?activityId=LFGP13005
包含查询字符串参数。我做错什么了吗?如果有人知道,请告诉我。我想在我的项目中说一件事,我正在使用 spring 框架。
在 web.xml 中我写了这个来过滤:
<filter>
<filter-name>openSessionInView</filter-name>
<filter-class>org.springframework.orm.hibernate4.support.OpenSessionInViewFilter</filter-class>
</filter>
的代码AproveReq.xhtml
如下:
<h:form>
<p:commandButton value="Aprove" action="#{aproveDeny.xyz}"/>
<p:commandButton value="Deny"/>
</h:form>
控制器如下:
@ManagedBean(name = "aproveDeny")
@RequestScoped
public class AproveDeny{
@ManagedProperty("#{param.activityId}")
private String activityId;
public void xyz(){
System.out.println("-------+++"+getActivityId());
}
public String getActivityId() {
return activityId;
}
public void setActivityId(String activityId) {
this.activityId = activityId;
}}
以这种方式设置邮件正文(MimeMessage):
MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true);
mimeMessageHelper.setTo("xxxxxx.xxxx@gmail.com");
StringBuilder text = new StringBuilder();
StringBuilder text = new StringBuilder();
text.append("<html>");
text.append("<body>");
text.append("<a href="+URL+"?activityId="+ActivityId+">Accept Or Deny request.."+"</a>");
text.append("</body>");
text.append("</html>");
mimeMessageHelper.setText(text.toString(), true);