to 长天一色:找你的方法试过了,还是老样子。 Error: 500 Location: /showstock.jsp Internal Servlet Error:org.apache.jasper.JasperException: Unable to compile Note: sun.tools.javac.Main has been deprecated. C:\jakarta-tomcat-3.3-b1\work\DEFAULT\showstock_1.java:59: Class classes.connect not found. classes.connect showstock = null; ^ C:\jakarta-tomcat-3.3-b1\work\DEFAULT\showstock_1.java:62: Class classes.connect not found. showstock= (classes.connect) ^ C:\jakarta-tomcat-3.3-b1\work\DEFAULT\showstock_1.java:67: Class classes.connect not found. showstock = (classes.connect) java.beans.Beans.instantiate(this.getClass().getClassLoader(), "classes.connect"); ^ 3 errors, 1 warning at org.apache.tomcat.facade.JasperLiaison.javac(JspInterceptor.java:770) at org.apache.tomcat.facade.JasperLiaison.processJspFile(JspInterceptor.java:623) at org.apache.tomcat.facade.JspInterceptor.requestMap(JspInterceptor.java:437) at org.apache.tomcat.core.ContextManager.processRequest(ContextManager.java:961) at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:866) at org.apache.tomcat.core.ContextManager.service(ContextManager.java:824) at org.apache.tomcat.modules.server.Http10Interceptor.processConnection(Http10Interceptor.java:152) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:438) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:505) at java.lang.Thread.run(Thread.java:536)
org.apache.jasper.JasperException: Unable to compile Note: sun.tools.javac.Main has been deprecated. deprecated.说明不在使用了,老大,为什么包名一定要叫clases 呢,换个名试试
to windgoogle,我后来也有把classes文件夹名换掉,但是还是一样的出错提示。不知道为什么,是不是我断点下载的jdk有问题? to changtianyise:环境变量应该没有问题的吧?我是有误删过(其实是替换掉)一点c:winnt的设置,但是classpath里其他的设置应该是对的啊。
package classes;//beanimport java.io.*;
import java.sql.*;public class connect
{
String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr="jdbc:odbc:ego";//datasource
String user="sa"; String password="";
Connection conn=null;
ResultSet rs=null; public connect() //连接数据库
{
try
{
Class.forName(sDBDriver);
}catch(java.lang.ClassNotFoundException e)
{
System.err.println("connect():"+e.getMessage());
}
} public ResultSet executeQuery(String sql)
{
rs=null;
try
{
if(conn!=null)
conn.close();
conn=DriverManager.getConnection(sConnStr,user,password);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}catch(SQLException ex)
{
System.err.println("connect().excuteQuery:"+ex.getMessage());
}
return rs;
} public void executeUpdate(String sql)
{
try {
conn = DriverManager.getConnection(sConnStr,user,password);
Statement stmt = conn.createStatement();
stmt.executeUpdate(sql);
}
catch(SQLException ex)
{
System.err.println("connect.executeUpdate: " + ex.getMessage());
System.err.println("connect.executeUpadatestrSQL: " + sql);
}
}
public ResultSet getStockInfo() //获取库存物品记录的结果集
{ try
{
conn = DriverManager.getConnection(sConnStr,user,password);
String sql = "SELECT * FROM TWarehousegoods"; //创建获取库存商品记录的SQL语句
Statement stmt= conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY); //创建Statement接口实例
rs = stmt.executeQuery(sql);
//将数据存入结果集中
}
catch(SQLException ex)
{ //捕捉异常
System.out.println("\nERROR:----- SQLException -----\n");
while (ex != null)
{
System.out.println("Message: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("ErrorCode: " + ex.getErrorCode()); ex = ex.getNextException();
}
}
catch(Exception ex )
{
ex.printStackTrace();
}
return rs;
} public String native2unicode(String s) //中文显示乱码问题,java不认中文
{
if(s==null||s.length()==0)
{
return null;
}
try
{
byte[] buffer=new byte[s.length()*2];
int j=0;
for(int i=0;i<s.length();i++)
{
if(s.charAt(i)>=0x100)
{
char c=s.charAt(i);
byte[] buf=(""+c).getBytes();
buffer[j++]=(byte)buf[0];
buffer[j++]=(byte)buf[1];
}
else
{
buffer[j++]=(byte)s.charAt(i);
}
}
return new String (buffer,0,j);
}catch(Exception erl)
{
byte[] b=s.getBytes();
try
{
return (new String(b,"gb2312"));
}catch(UnsupportedEncodingException err)
{
return null;
}
}
} public String ascii2native(char[] b)
{
return new String(b);
} public void finalize()
{
try {
if (conn != null) {
conn.close();
}
}
catch (SQLException ex) {
System.err.println("jsp.executeUpdate:" + ex.getMessage());
}
}
}
那你的*.java文件应该放在WEB-INF/classes/classes目录下哦!
Error: 500
Location: /showstock.jsp
Internal Servlet Error:org.apache.jasper.JasperException: Unable to compile Note: sun.tools.javac.Main has been deprecated.
C:\jakarta-tomcat-3.3-b1\work\DEFAULT\showstock_1.java:59: Class classes.connect not found.
classes.connect showstock = null;
^
C:\jakarta-tomcat-3.3-b1\work\DEFAULT\showstock_1.java:62: Class classes.connect not found.
showstock= (classes.connect)
^
C:\jakarta-tomcat-3.3-b1\work\DEFAULT\showstock_1.java:67: Class classes.connect not found.
showstock = (classes.connect) java.beans.Beans.instantiate(this.getClass().getClassLoader(), "classes.connect");
^
3 errors, 1 warning at org.apache.tomcat.facade.JasperLiaison.javac(JspInterceptor.java:770)
at org.apache.tomcat.facade.JasperLiaison.processJspFile(JspInterceptor.java:623)
at org.apache.tomcat.facade.JspInterceptor.requestMap(JspInterceptor.java:437)
at org.apache.tomcat.core.ContextManager.processRequest(ContextManager.java:961)
at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:866)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:824)
at org.apache.tomcat.modules.server.Http10Interceptor.processConnection(Http10Interceptor.java:152)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:438)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:505)
at java.lang.Thread.run(Thread.java:536)
我说你的bean文件编译成功啊!
对了, 把你的jsp文件贴出来啊!!
<html>
<%@ page import="java.sql.*"%>
<jsp:useBean id="showstock" scope="session" class="classes.connect"/> <%/*使用shopManageSystemBean的实例*/%>
<head>
<title>查看库存商品</title>
</head>
<body>
<h1 align="center">库存商品列表</h1>
<p>
<%
try
{
ResultSet rs = showstock.getStockInfo(); //获取库存商品信息
out.println("<table width=75% border=1 align=center><tr>"); //列出库存商品表格的表头
out.println("<td align=center>商品编号</td>");
out.println("<td align=center>仓位编号</td>");
// out.println("<td align=center>商品类别</td>");
// out.println("<td align=center>仓位编号</td>");
out.println("</tr>");
while (rs.next()) //列出库存商品信息
{
String CommodityNo = rs.getString("CommodityNo");
// String CommodityName = rs.getString("CommodityName");
// String CommodityType= rs.getString("CommodityType");
String LocationNo = rs.getString("LocationNo");
out.println("<tr>");
out.println("<td align=center>" + CommodityNo + "</td>");
// out.println("<td align=center>" + CommodityName + "</td>");
// out.println("<td align=center>" + CommodityType + "</td>");
out.println("<td align=center>" + LocationNo + "</td>");
out.println("</tr>");
}
out.println("</table>");
}
catch(Exception ex) //捕捉异常
{
ex.printStackTrace();
}
%>
</p>
</body>
</html>
我现在*.jsp文件能访问啊!!!
deprecated.说明不在使用了,老大,为什么包名一定要叫clases 呢,换个名试试
to changtianyise:环境变量应该没有问题的吧?我是有误删过(其实是替换掉)一点c:winnt的设置,但是classpath里其他的设置应该是对的啊。