我写了一个jsp文件,在公司好用,但不知为什么在家里不好用,(注:家里运行环境:eclipse+Tomcat(插件),数据库用的是oracle)错误提示如下:严重: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Unable to compile class for JSP:
Stacktrace:
at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:85)
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:415)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:308)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:308)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
at java.lang.Thread.run(Thread.java:595)
org.apache.jasper.JasperException: Unable to compile class for JSP:
Stacktrace:
at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:85)
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:415)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:308)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:308)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
at java.lang.Thread.run(Thread.java:595)
<html>
<head></head>
<body>
<%
if(request.getAttribute("biaozhi")!=null&&"not ok".equals(request.getAttribute("biaozhi")+"")){
%><h1><font color="red">密码或用户名错误!</font></h1><%
}%>
<form action="denglu.jsp" method="post">
用户名:
<input type="text" name="name"><br>
密码:  
<input type="text" name="pass"><br>
       
<input type="submit" value="确认">
   
<input type="reset" value="重填">
</form>
<%
String name=request.getParameter("name");
String pass=request.getParameter("pass");
if(name!=null && pass!=null ){
if(mybean.yanzheng(name,pass)){
session.setAttribute("biaozhi","ok");
response.sendRedirect("biaoku.jsp");
}else{
session.setAttribute("biaozhi","not ok");
response.sendRedirect("denglu.jsp");
}
}%>
</body>
</html>表二:biaoku.jsp<%@page contentType="text/html;charset=GBK"%>
<jsp:useBean id="mybean" class="oraclejd.Ojdbc2" scope="page" /><%@page import="java.sql.ResultSet"%>
<%@page import="oraclejd.Login;"%>
<%@page import="java.util.List"%>
<html>
<head>
<script type="text/javascript" >
function fenye(yeshu){
document.forms[1].yeshu.value=yeshu;
document.forms[1].submit();
}function del(id){
document.forms[2].id.value=id;
document.forms[2].submit();}</script>
</head>
<table width="80%" border="1">
<%
String yeshu=request.getParameter("yeshu");//要显示的页数String id=request.getParameter("id");
if(id!=null){
mybean.del(id);
}
List<Login> arr=mybean.xinxi2();//获取所有的信息
int conut=arr.size();//总记录数
if(conut!=0){
int kaishi=1;//当前从1记录开始
int meiyesize=5; //每页要显示的记录数
int dangqianp=1; //将要显示的页数转化成数字型(初始值赋1)
int zongp=(conut-1)/meiyesize+1; //总页数
if(yeshu!=null){
try{
dangqianp=Integer.parseInt(yeshu);
}catch(Exception e){
dangqianp=1;
}
if(dangqianp>zongp){
dangqianp=zongp;
}
if(dangqianp<=0){
dangqianp=1;
}
kaishi=(dangqianp-1)*meiyesize+1;
}
Login l=null;
for(int i=kaishi;i<kaishi+meiyesize;i++){
l=new Login();
l=arr.get(i);
%>
<tr>
<td><%=l.getId()%></td>
<td><%=l.getName()%></td>
<td><%=l.getPass()%></td>
<td><%=l.getFlag()%></td>
<td><input type="button" value="删除" onclick="del(<%=l.getId() %>)"/></td>
<tr>
<%
}
%></table><body>
<form action="biaoku.jsp" method="post">
第<input type="text" name="yeshu">页<input type="submit" value="提交">
</form><form action="biaoku.jsp" method="post">
<input type="hidden" name="yeshu" value="<%=yeshu %>">
</form><form action="biaoku.jsp" method="post">
<input type="hidden" name="id" value="<%=id %>">
</form>   
<P><a href="biaoku.jsp?yeshu=1">首页</a>
<a href="#" onclick="fenye(<%=dangqianp-1%>);">上一页</a>
<a href="#" onclick="fenye(<%=dangqianp+1%>);">下一页</a>
<a href="biaoku.jsp?yeshu=<%=zongp%>">尾页</a></P><%
for(int i=1;i<=zongp;i++){
%>
<a href="#" onclick="fenye(<%=i %>);"><%=i %></a><%
}
}
%>
</body></html>
就是在窗口-首选项-tomcat-JVM settings中jre设置成你机器上的jdk(有时jre也不能通过),如果没有的话,在java-已安装的jre中添加.如果解决了问题,说明一下解决方法.我们也学习下.