s2sh之小疑惑
大家知道,在csdn论坛“web”版块,如果是游客,点击“发帖”,会跳转到“注册”页面。如果已“注册”用户,就会直接
跳转到“发帖”页面。在发帖页面也有个“发帖”按钮。
我想问问大家:用s2sh框架,一个“发帖”方法能同时实现是否是“注册用户”,再“发帖”吗?
我用一个方法实现不了
public class InvitationAction extends ActionSupport{
public String deliverInvitation(){
Integer in = invitationManager.deliver(invitation);//发表帖子
if(in != null){
return "success" ;//发帖成功
}else{
return "fail" ;//发帖失败
}
}
public String deliverInvitationInput(){
session = ServletActionContext.getRequest().getSession();
String username = (String)session.getAttribute("username");
if(username != null ){
return "input";//到发帖页面
}else {
return "registerInput";//到注册页面
}
}
在“web”版块中,我有一个链接<a href = "invitationAction-deliverInvitationInput"/>
在“发帖”页面,我有一个“发帖”按钮,提交到“<form action ="invitationAction-deliverInvitation">”,这样才能完成功能。
现在,能不能把“链接”也写成<a href = "invitationAction-deliverInvitation"/>,然后它会自动判断是否是“注册”用户,是就跳转到“发帖”页面,在“发帖”页面中,再点击“发帖”,它还能发帖成功,不会跳到“发贴”页面或者“注册”页面上。有哪位大侠实现了!给点点子啊!!小弟叩拜了!
------解决方案--------------------可以用拦截器,先保存跳转前的url,然后判断用户是否已经登录,如果没有,则跳转到登录页面,否则提交发帖,登录页面处理登录后判断是否有跳转前的url,如果有则跳转到跳转前页面,如果没有则进入登录后的主页面
------解决方案--------------------拦截器都不会写么。。。 javax.servlet.http.Filter
------解决方案--------------------可以用拦截器,先保存跳转前的url,然后判断用户是否已经登录,如果没有,则跳转到登录页面,否则提交发帖,登录页面处理登录后判断是否有跳转前的url,如果有则跳转到跳转前页面,如果没有则进入登录后的主页面