死活得不到HTTP session

jayr110 2014-01-16 08:31:03
在ssh框架里自己做了一个验证码,思路是这样的,写一个验证码类出来,再写一个验证码的action类.代码:
package com.st.action;

import java.io.ByteArrayInputStream;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.st.yanzhengma.Yanzhengma;

public class YanZhengMaAction extends ActionSupport{
private ByteArrayInputStream inputStream;
public String execute() throws Exception{
Yanzhengma rdnu=Yanzhengma.Instance();
this.setInputStream(rdnu.getImage());//取得带有随机字符串的图片
ActionContext.getContext().getSession().put("random", rdnu.getString());//取得随机字符串放入HttpSession
System.out.println("验证码为:"+rdnu.getString());
return SUCCESS;
}
public void setInputStream(ByteArrayInputStream inputStream) {
this.inputStream = inputStream;
}
public ByteArrayInputStream getInputStream() {
return inputStream;
}
}
.再模拟注册一下.这个类为:
package com.st.action;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class RegisterAction extends ActionSupport{
/**
*
*/
private static final long serialVersionUID = 1L;
private String yanzhengma;

public String getYanzhengma() {
return yanzhengma;
}

public void setYanzhengma(String yanzhengma) {
this.yanzhengma = yanzhengma;
}

public String execute() throws Exception{
String str2=(String)(ActionContext.getContext().getSession().get("random"));
System.out.print("系统验证码:"+str2);
if(yanzhengma.equalsIgnoreCase(str2)){

return "s";
}

return ERROR;
}

}
.无论怎样调试再第二个action里始终得到验证码为空.
再贴一个我的注册页面代码吧
<body>
<s:form action="register1">
<s:textfield name="yanzhengma" label="验证码"></s:textfield>
<s:submit value="注册"></s:submit>
</s:form>
<%
long time=new Date().getTime();
%>

<img src="rand1.action?d=<%=time %>" onclick="changeValidateCode(this)"/>点击我更换图片<br>
</body>
求大家指教,谢谢
...全文
174 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
beowulf2005 2014-01-17
  • 打赏
  • 举报
回复
引用 4 楼 u013206238 的回复:
[quote=引用 3 楼 xieyongcx 的回复:] session和cookie有什么关系?
session是通过cookie里面的JsessionId定位到session的[/quote] 不一定的,JsessionId有时可以放到URL里,具体看服务器端设置了。
xieyongcx 2014-01-17
  • 打赏
  • 举报
回复
session和cookie有什么关系?
tony4geek 2014-01-17
  • 打赏
  • 举报
回复
gys13200 2014-01-17
  • 打赏
  • 举报
回复
引用 3 楼 xieyongcx 的回复:
session和cookie有什么关系?
session是通过cookie里面的JsessionId定位到session的
jayr110 2014-01-16
  • 打赏
  • 举报
回复
解决了,以前调试都在myeclipse 的默认刘浏览器下完成的,换一个浏览器就没问题了,应该是禁用了cokie

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧