为什么会出现这样的错误?

javawen 2004-08-11 05:54:24
org.apache.jasper.JasperException: Unable to compile class for JSP

No Java compiler was found to compile the generated source for the JSP.
This can usually be solved by copying manually $JAVA_HOME/lib/tools.jar from the JDK
to the common/lib directory of the Tomcat server, followed by a Tomcat restart.
If using an alternate Java compiler, please check its installation and access path

代码如下:
<%@ page contentType="text/html;charset=8859_1"%>
<%
java.sql.Connection sqlCon;
java.sql.Statement sqlStmt;
java.sql.ResultSet sqlRst;
java.lang.String strCon;
java.lang.String strSQL;

int intPageSize;
int intRowCount;
int intPageCount;
int intPage;
java.lang.String strPage;

int i;

intPageSize=2;

strPage=request.getParameter("page");
if(strPage==null)
{
intPage=1;
}

else{
intPage=java.lang.Integer.parseInt(strPage);
if(intPage<1)intPage=1;
}
java.sql.DriverManager.registerDriver(new sun.jdbc.odbc.JdbcOdbcDriver());
strCon="jdbc:odbc:gg";

String user="sa";
String password="";

sqlCon=java.sql.DriverManager.getConnection(strCon,user,password);

sqlStmt=
sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);

strSQL="select * from TABLE2";

sqlRst=sqlStmt.executeQuery(strSQL);

sqlRst.last();
intRowCount=sqlRst.getRow();

intPageCount=(intRowCount+intPageSize-1)/intPageSize;

if(intPage>intPageCount)intPage=intPageCount;
%>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<title>JSP数据库操作例程-数据分页显示-JDBC 2.0-Oracle</title>
</head>

<body>
<table border="1" cellspacing="0" cellpadding="0">
<tr>
<th>forumID</th>
<th>Name</th>
<th>Description</th>
</tr>

<%
if(intPageCount>0){
sqlRst.absolute((intPage-1)*intPageSize+1);

i=0;
while(i<intPageSize&&!sqlRst.isAfterLast()){
%>
<tr>
<td><%=sqlRst.getString(1)%></td>
<td><%=sqlRst.getString(2)%></td>
<td><%=sqlRst.getString(3)%></td>
</tr>
<%
sqlRst.next();
i++;
}
}
%>

</table>

第<%=intPage%>页 共<%=intPageCount%>页 <%if(intPage<intPageCount){%><a
href="page.jsp?page=<%=intPage+1%>">下一页</a><%}%> <%if(intPage>i){%><a
href="page.jsp?page=<%=intPage-1%>">上一页</a>%>

</body>
</html>
<%
sqlRst.close();

sqlStmt.close();

sqlCon.close();
%>
Tomcat与SQLSERVER的连接是没有问题的(用其它代码测试连接成功)。
...全文
96 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
nighthawk 2004-08-13
  • 打赏
  • 举报
回复
打开你的dos窗口敲javac,java看看行不行。
javawen 2004-08-13
  • 打赏
  • 举报
回复
不是这样的原因!
leeleec 2004-08-13
  • 打赏
  • 举报
回复
主要是CLASSPATH的问题,JSP ENGINE 找不到对应的JAR文件,你可以试试把TOOLS.JAR拷贝到%tomcathome/common/lib下面再试试!
javawen 2004-08-13
  • 打赏
  • 举报
回复
to:nighthawk
当然行了,环境没问题的
EdifierX 2004-08-12
  • 打赏
  • 举报
回复
找不到JAVA 的编译器, 设置一下classpath, java_home
btc215 2004-08-12
  • 打赏
  • 举报
回复
我也遇到过,不知道是怎么回事,还望高手指教!!
javawen 2004-08-11
  • 打赏
  • 举报
回复
已经拷贝过了也没用啊
sagittarius1979 2004-08-11
  • 打赏
  • 举报
回复
This can usually be solved by copying manually $JAVA_HOME/lib/tools.jar from the JDK

81,090

社区成员

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

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