JSP代码中常见错误实例及其分析改正:
1、首先是如果你遇到:javax.servlet.ServletException: java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver这个错误,
修改:
那么估计你应该把Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
应改成Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
2、当错误为javax.servlet.ServletException: java.sql.SQLException: No suitable driver found for jdbc:microsoft:sqlserver://localhost:1034;DatabaseName=test2 时,
jsp定义 应该把String url="jdbc:microsoft:sqlserver://localhost:1034;DatabaseName=test2";
改成String url="jdbc:sqlserver://localhost:1034;DatabaseName=test2";
3、错误为javax.servlet.ServletException: com.microsoft.sqlserver.jdbc.SQLServerException: 无法打开登录所请求的数据库 "test2"。登录失败。
修改方法:注意检查 TCP/IP协议、端口、以及相应的服务是否启动
到配置管理器中,检查网络配置中TCP/IP的IPALL的动态端口,检查应为 1433,
另外sql server里的用户权限还是要注意下的,不然容易出问题
4、代码:查询记录集--错误:
javax.servlet.ServletException: com.microsoft.sqlserver.jdbc.SQLServerException: 不支持此游标类型/并发组合。
ateStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);导致了冲突。参考 SQL Server 2005 的联机丛书INSENSITIVE定义一个游标,以创建将由该游标使用的数据的临时复本。对游标的所有请求都从 tempdb 中的这一临时表中得到应答;因此,在对该游标进行提取操作时返回的数据中不反映对基表所做的修改,并且该游标不允许修改。使用 SQL-92 语法时,如果省略 INSENSITIVE,则已提交的(任何用户)对基础表的删除和更新都反映在后面的提取中。也就是你那个 ResultSet.TYPE_SCROLL_INSENSITIVE 要求是 只读的。但是后面的ResultS
et.CONCUR_UPDATABLE 又要求 可更新。所以导致这个 冲突的问题。
修改(将第2个参数修改):
ResultSet.CONCUR_UPDATABLE 修改为 ResultSet.CONCUR_READ_ONLY
5、JSP常见错误:语法错误发生,不合法的字符 (多为中文标点)
Syntax error on token "Invalid Character", : expected
org.apache.jasperpiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
6、JSP常见错误:空指针错误(不同网页传参,未接受到参数值)
Java.lang.NullPointException
错误原因:1)传参的参数名称错误; 2)请求页面未发送参数,而目的网页接受参数
修改错误后,如页面没有变化:
1)刷新 浏览器页面, 点击 刷新 按钮
2)重新打开浏览器,在地址栏 重新输入 网页地址
3)重启Tomcat
4)删除Tomcat文件夹 work文件夹中相应的程序文件夹,IE浏览器中重新打开文件
5)重新开机
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论