首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

验证码的图片请求时向客户端返回一个session.但客户端读取不出来!解决方法

2012-02-15 
验证码的图片请求时向客户端返回一个session.但客户端读取不出来!public class ValidataCodeAction extend

验证码的图片请求时向客户端返回一个session.但客户端读取不出来!
public class ValidataCodeAction extends BaseAction {
@Override
public String execute(ActionForm form, HttpServletRequest request,
HttpServletResponse response) throws Exception {

Map<String,BufferedImage> imageMap = ImageUtil.getImage();
Set<Map.Entry<String,BufferedImage>> set = imageMap.entrySet();
BufferedImage image=null;
ValidataCodeForm validataCodeForm = (ValidataCodeForm)form;
for(Map.Entry<String, BufferedImage> entry:set){
String codeValue = entry.getKey();
image = entry.getValue();
validataCodeForm.setValidataStringcode(codeValue);
validataCodeForm.setValidataImagecode(image);
request.getSession().setAttribute("validataCodeForm", validataCodeForm);
}
ServletOutputStream out = response.getOutputStream();
ImageIO.write(image, "JPEG", out);
return null;
}
}
以上是action中的代码。验证码在另一个类中生成。经调试无错误。

jsp中通过以下方法调用:
<img class="yzm_img" id='imgVcode' src="${pageContext.request.contextPath}/user/validatacode.do" />
经过输出:${sessionScope.validataCodeForm.validataStringcode}
发现第一次打开页面时session中没有存储。然后每次刷新。session中存储的都是上次调用action中生成的验证码。请问一下各位大神。这是神马个情况!!!

[解决办法]
这个建议你自己调试下,看看每次启动页面时怎么执行的代码,多调调就能发现原因了

热点排行