jsp常见错误

1 [Microsoft][ODBC ???????] ???????
-------------------------------------------------------------------------

type Exception report

message

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

exception
root cause

java.sql.SQLException: [Microsoft][ODBC ???????] ???????
sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6958)
sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7115)
sun.jdbc.odbc.JdbcOdbc.SQLGetDataString(JdbcOdbc.java:3908)
sun.jdbc.odbc.JdbcOdbcResultSet.getDataString(JdbcOdbcResultSet.java:5702)
sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:356)
sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:413)
org.apache.jsp.courseplaceaction_jsp._jspService(courseplaceaction_jsp.java:68)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
解决办法: while(rs.next()){
……
}
也就是错误原因是没有将rs游标定位到第一条记录。
--------------------------------------------------------------------------------
2.Result set type is TYPE_FORWARD_ONLY
java.sql.SQLException: Result set type is TYPE_FORWARD_ONLY
sun.jdbc.odbc.JdbcOdbcResultSet.last(JdbcOdbcResultSet.java:2293)
org.apache.jsp.queryresult_jsp._jspService(queryresult_jsp.java:133)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
解决办法:
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
通过这样设置,rs游标可以自由的移动,不一定就是只向前移动

3.package javax.servlet does not exist

问题在于没有将

Tomcat中的servelet.jar(在tomcat3.3.1libcommonservlet.jar 下 ),或者servlet-api.jar(在tomcat-5.0.24commonlib、servlet-api.jar )添加到了classpath中去。最好添加到用户环境变量里去。

4.找不到request.setCharacterEncoding("GB2312");

找不到request.setCharacterEncoding("GB2312");

对于出现该问题的原因是:我用的Tomcat版本太低,里面的servlet.jar还没有包括这个方法,好像在Tomcat4.x以后就出现了,Tomcat3.x里面没有,所以本人决定痛改前非,用Tomcat5取代Tomcat3.永别了,Tomcat3.x
5.解决中文显示中的乱码问题

需要在首行加入如下代码,有时要重新启动Tomcat

<%@ page contentType="text/html;chartset=gb2312" %>

6.result.next()注意的问题

假如你的表结构中各字段的顺序为:title,name,mail,content, add_time

那么你取数据的顺序也应该是:title,name,mail,content, add_time,任何颠倒就会出问题。

例如:下面语句执行会正确。

while(result.next())
{

String title=result.getString("title");
String name=result.getString("name");
String mail=result.getString("mail");
String content=result.getString("content");
Timestamp time=result.getTimestamp("add_time");
Date date_time=new Date(time.getTime());
Time time_time=new Time(time.getTime());

%>

但是下面语句执行就会出错:

while(result.next())
{

String content=result.getString("content");

String title=result.getString("title");
String name=result.getString("name");
String mail=result.getString("mail");

Timestamp time=result.getTimestamp("add_time");
Date date_time=new Date(time.getTime());
Time time_time=new Time(time.getTime());

%>

7.tomcat开机自启动

tomcat开机自启动设置方法:控制面板->任务计划->添加任务计划->选择你的tomcat目录下的binstartup.bat,在选择''开机自启动", 即可。

但是此方法有一缺点:这样tomcat只能开机自启动,不能手动启动。

8.Jsp调试

用于输出信息的
System.out.println("Hello!");
out.println("Hello!");
断点:
在servlet下return语句
jsp脚本下,用forward语句

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值