我按如下步骤配置验证码:
-
web.xml配置如下:
[code="java"]<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">BuGu
index.html
contextConfigLocation
classpath:spring.xml
org.springframework.web.context.ContextLoaderListener
openSessionInViewFilter
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
singleSession
false
openSessionInViewFilter
/*
struts2
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
struts2
/*
dwr
uk.ltd.getahead.dwr.DWRServlet
debug
true
dwr
/dwr/*
struts-cleanup
org.apache.struts2.dispatcher.ActionContextCleanUp
struts
org.apache.struts2.dispatcher.FilterDispatcher
struts-cleanup
/*
struts
/*
img
com.bugu.web.authentication.AuthImg
img
/authImg
[/code] -
AuthImg关键代码如下:
[code="java"]public class AuthImg extends HttpServlet
{
n行代码省滤。。。public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
response.setHeader("Pragma","No-cache");
response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires", 0);
response.setContentType("image/jpeg");System.out.println("test img"); n行代码省滤。。。 ImageIO.write(image, "JPEG", response.getOutputStream());
}
}[/code] jsp代码:
[code="java"] 验证码如图:看不清?单击此处刷新[/code]js代码:
[code="java"] function refresh()
{
document.getElementById("authImg").src='authImg?now=' + new Date();
}[/code]
问题:
当IE打开该jsp时,并没有相应的验证码显示。点击refresh()也不能更新、产生验证码。
同时发现点击refresh()控制台并没有将“test img”打印出来。
[b]问题补充:[/b]
to zhongli:
我已经加了随机数做参数。具体请看代码:
[code="java"]document.getElementById("authImg").src='authImg?now=' + new Date()[/code]