返回信息流LZ最近在初学JSP技术,我用的IDE是eclipse,调用的是SQL Server2005的数据库,然后是在eclipse中加了tomcat的插件,来运行jsp带么,但是现在我想要再JSP中调用另外写的java的代码,发现出错了,提示的结果显示如下:
An error occurred at line: 16 in the jsp file: /WebContent/LoginCL.jsp
UserBeanCL cannot be resolved to a type
13: String u = request.getParameter("username");
14: String p = request.getParameter("passwd");
15:
16: UserBeanCL ubc = new UserBeanCL();
17: if(ubc.checkUser(u, p))
18: {
19: response.sendRedirect("Wel.jsp");
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:102)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:198)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:450)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:361)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:336)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:323)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:570)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:356)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)
javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
我在网上找了半天,发现与我出现这个问题的大有人在,但是照一些网上的修改方式,发现并不能成功,我知道应该是我的配置路径的问题,导致jsp找不到java代码所编译生成的class文件,以下是我的在eclipse中新建的这个项目的一些文档和路径:
这里出问题的代码如下:
<%@ page language="java" import="java.util.*,java.sql.*,com.swd.*" contentType="text/html; charset=gb2312"
pageEncoding="gb2312"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Insert title here</title>
</head>
<body>
<%
String u = request.getParameter("username");
String p = request.getParameter("passwd");
UserBeanCL ubc = new UserBeanCL(); //这里出错了
if(ubc.checkUser(u, p))
{
response.sendRedirect("Wel.jsp");
}
else
{
response.sendRedirect("Login.jsp");
}
%>
</body>
</html>
而我定义的UserBeanCL类在另一个java文件里,代码如下:
package com.swd;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
public class UserBeanCL
{
Statement sm = null;
ResultSet rs = null;
Connection ct = null;
public void close()
{
try
{
if(rs != null)
{
rs.close();
rs = null;
}
if(sm != null)
{
sm.close();
sm = null;
}
if(ct != null)
{
ct.close();
ct = null;
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
public boolean checkUser(String u,String p)
{
boolean b =false;
try
{
ct = new ConnDB().getConn();
//3、创建Statement
sm = ct.createStatement();
//4、查询数据库
rs = sm.executeQuery("select passwd from users where username='" + u +"'");
if(rs.next())
{
String passwd = rs.getString("passwd");
if(passwd.equals(p))
{
b = true;
}
else //说明是用户名对的,但是密码错了
{
b = false;
}
}
else //这里说明是用户名都输错了
{
//说明用户名都输错了
b = false;
}
return b;
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
this.close();
}
return b;
}
}
LZ刚学这玩意儿,所以对于路径这问题是在不太明白,望大神们解救啊。。。
这是一条镜像帖。来源:北邮人论坛 / java / #39775同步于 2015/4/6
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
关于jsp中调用java遇到的一个问题
sun111
2015/4/6镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
请导入你写的java文件
<%import com.swd.UserBeanCL%>
一般写在这句下面
<%@ page language="java" import="java.util.*,java.sql.*,com.swd.*" contentType="text/html; charset=gb2312"
pageEncoding="gb2312"%>
【 在 moonpather 的大作中提到: 】
: 请导入你写的java文件
: <%import com.swd.UserBeanCL%>
: 一般写在这句下面
: ...................
这个方法我也试了,发现没用啊