验证码不能显示?
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>登录页面</title>
<style type="text/css">
.code {
background: url("<%=basePath%>Course/kaptcha.jpg");
font-family: Arial;
font-style: italic;
color: blue;
font-size: 20px;
border: 0;
padding: 2px 3px;
letter-spacing: 3px;
font-weight: bolder;
float: left;
cursor: pointer;
width: 40px;
height: 20px;
line-height: 20px;
text-align: center;
vertical-align: middle;
}
a {
text-decoration: none;
font-size: 12px;
color: #288bc4;
}
a:hover {
text-decoration: underline;
}
</style>
</head>
<body>
<center>
<h1>用户登录</h1>
<form action="<%=basePath%>/LoginServlet" method="post" onsubmit="return validateCode()">
<table width="300px" cellspacing="0px" cellpadding="0px" border="1px">
<tr>
<td>用户名</td>
<td colspan="2"><input type="text" name="username" placeholder="用户名为3-12位字母数字或下划线组合"></td>
</tr>
<tr>
<td>密 码</td>
<td colspan="2"><input type="password" name="password" placeholder="长度为5-12位字母数字或下划线组合"></td>
</tr>
<tr>
<td>验证码</td>
<td style="border-right-style:none;">
<input type="text" name="checkCode" placeholder="请输入验证码" id="inputCode">
</td>
<td style="border-left-style:none;">
<div class="code" id="checkCode">
<img src="kaptcha.jpg">
</div>
</td>
</tr>
<tr>
<td colspan="3" style="text-align:center">
<input type="submit" value="登录">
<input type="reset" value="取消">
</td>
</tr>
</table>
</form>
</center>
</body>
</html>
正在回答 回答被采纳积分+1
既然老师的代码能运行,就证明你的服务器配置基本没有问题。图片不显示应该还是你basePath的问题,建议你在basePath后面添加"/试试"。
我导入了老师的代码是可以看到验证码的,会不会是我服务器配置有问题?
就是这个artifact是干什么用的?我按这个运行页面有内容出来,但是我按下面的external source选择我的项目地址运行就报404错误?
这是按artifact
这是按external source的,但是这两个也不能显示验证码...
真的不行了老师,是我电脑问题么,我把验证码那堂课的代码考进去也不行啊
你有下图标记的图片吗?设置验证码的时候应该是一个.jsp的页面。建议检查一下是否是这里有问题,或者重新观看java实现验证码这一章节。祝学习愉快~
究竟哪里出问题了啊...搞了好久了,这里搞不了下面做不了啊
真是奇了怪了,控制台没错误呀,jar包也导了...
我在tomcat这里设置了/Course
这是basePath
验证码地址
你的Course是项目名么?
basePath改为下面的书写方式:
<% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %>
路径可以修改一下:background: url("<%=basePath%>kaptcha.jpg");
我在运行你的代码时,url没有改变也是可以显示的;
同学改为上述代码后再试下呢~
祝学习愉快!
<servlet>
<servlet-name>Kaptcha</servlet-name>
<servlet-class>com.google.code.kaptcha.servlet.KaptchaServlet</servlet-class>
<init-param>
<param-name>kaptcha.border</param-name>
<param-value>no</param-value>
</init-param>
<init-param>
<param-name>kaptcha.image.width</param-name>
<param-value>100</param-value>
</init-param>
<init-param>
<param-name>kaptcha.image.height</param-name>
<param-value>40</param-value>
</init-param>
<init-param>
<param-name>kaptcha.textproducer.font.size</param-name>
<param-value>28</param-value>
</init-param>
<init-param>
<param-name>kaptcha.textproducer.char.string</param-name>
<param-value>qwertyuiopasdfghjklzxcvbnm123456789</param-value>
</init-param>
<init-param>
<param-name>kaptcha.textproducer.char.length</param-name>
<param-value>4</param-value>
</init-param>
<init-param>
<param-name>kaptcha.noise.impl</param-name>
<param-value>com.google.code.kaptcha.impl.DefaultNoise</param-value>
</init-param>
<init-param>
<param-name>kaptcha.obscurificator.impl</param-name>
<param-value>com.google.code.kaptcha.impl.FishEyeGimpy</param-value>
</init-param>
<init-param>
<!--session.setAttribute("kcode",生成好的验证吗)-->
<param-name>kaptcha.session.key</param-name>
<param-value>kcode</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Kaptcha</servlet-name>
<url-pattern>/kaptcha.jpg</url-pattern>
</servlet-mapping>
- 参与学习 人
- 提交作业 1088 份
- 解答问题 10205 个
如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星