org.apache.jasper.JasperException: 是什么错误呢~

「已注销」 2009-04-05 11:19:20
org.apache.jasper.JasperException: /testjdbc.jsp(3,0) Page directive has invalid attribute: package
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:198)
org.apache.jasper.compiler.JspUtil.checkAttributes(JspUtil.java:305)
org.apache.jasper.compiler.Validator$DirectiveVisitor.visit(Validator.java:99)
org.apache.jasper.compiler.Node$PageDirective.accept(Node.java:550)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2216)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2222)
org.apache.jasper.compiler.Node$Root.accept(Node.java:457)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2166)
org.apache.jasper.compiler.Validator.validate(Validator.java:1447)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:167)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:296)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:277)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:265)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:302)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)


在网页上测试jsp文件时总出现这个错误~高手帮忙~

...全文
1308 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2009-04-05
  • 打赏
  • 举报
回复
解决了,原来是Class.Forname出错,应该是forName

呵呵,谢谢大家了
「已注销」 2009-04-05
  • 打赏
  • 举报
回复
如果在jsp文件中没有

<%@page language = "java" package ="com.mysql.jdbc.Connection"%>这句语句的话

测试时就会出现错误:

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: Unable to compile class for JSP:

An error occurred at line: 28 in the jsp file: /testjdbc.jsp
The method Forname(String) is undefined for the type Class
25: //加载驱动程序,数据库在localhost本机上,数据库名称为Library,
26: //用户名和密码为“root”和“sys”,并创建连接数据库连接对象conn,
27: //本程序的两次insert语句和一次的select语句的执行都是用该连接对象
28: Class.Forname("com.mysql.jdbc.Driver").newInstance();
29: String url="jdbc:mysql://localhost/Library?user=admin&password=jin";
30: Connection conn = DriverManager.getConnection(url);
31:


Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:93)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:435)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:298)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:277)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:265)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:302)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)


note The full stack trace of the root cause is available in the Apache Tomcat/5.5.27 logs.

写了后就没有说forname(String)undefined了

也不知道是哪里除了问题~
wanghao1987 2009-04-05
  • 打赏
  • 举报
回复
import="com.mysql.jdbc.Connection,jasper"这句话有问题,jasper是什么?
zhj92lxs 2009-04-05
  • 打赏
  • 举报
回复
jasper这是哪的,要看错误提示
「已注销」 2009-04-05
  • 打赏
  • 举报
回复
但是我改成这个后

<%@page language = "java" import="com.mysql.jdbc.Connection,jasper"%>

就出现错误:

org.apache.jasper.JasperException: Unable to compile class for JSP:


An error occurred at line: 8 in the generated java file
Only a type can be imported. com.mysql.jdbc.Connection resolves to a package


An error occurred at line: 9 in the generated java file
The import jasper cannot be resolved

An error occurred at line: 29 in the jsp file: /testjdbc.jsp
The method Forname(String) is undefined for the type Class
26: //加载驱动程序,数据库在localhost本机上,数据库名称为Library,
27: //用户名和密码为“root”和“sys”,并创建连接数据库连接对象conn,
28: //本程序的两次insert语句和一次的select语句的执行都是用该连接对象
29: Class.Forname("com.mysql.jdbc.Driver").newInstance();
30: String url="jdbc:mysql://localhost/Library?user=admin&password=jin";
31: Connection conn = DriverManager.getConnection(url);
32:
zhj92lxs 2009-04-05
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 Mosesandme 的回复:]
因为要加入一个包

代码:

<%@page language = "java" package="com.mysql.jdbc.Connection,jasper"%>

[/Quote]
是import不是package
bruce_oy 2009-04-05
  • 打赏
  • 举报
回复
要引入包请使用 import 属性

<%@ page
[ language="java" ]
[ extends="package.class" ]
[ import="{package.class | package.*}, ..." ]
[ session="true | false" ]
[ buffer="none | 8kb | sizekb" ]
[ autoFlush="true | false" ]
[ isThreadSafe="true | false" ]
[ info="text" ]
[ errorPage="relativeURL" ]
[ contentType="mimeType [ ;charset=characterSet ]" | "text/html ; charset=ISO-8859-1" ]
[ isErrorPage="true | false" ]
%>


ps:错误信息中已经说明了package是一个无效的属性,这时你应该第一时间看看page指令有哪些属性。一句话:知道为什么比知道怎么做理解要更深刻。

「已注销」 2009-04-05
  • 打赏
  • 举报
回复
因为要加入一个包

代码:

<%@page language = "java" package="com.mysql.jdbc.Connection,jasper"%>
zhj92lxs 2009-04-05
  • 打赏
  • 举报
回复
看看你的page指令怎么有了个package属性

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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