java.lang.NullPointerException错误,请教高手

来源:百度知道 编辑:UC知道 时间:2024/06/16 00:56:45
出现如下错误:

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

exception

org.apache.jasper.JasperException: java.lang.NullPointerException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:522)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)

代码:

index.jsp:

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<jsp:useBean id="voteBean" scope="page" class="com.Conn&

楼上在说啥涅?这个不是简单网页的问题咧。。写java估计都是用MyEclipse的吧。呵呵,问题在代码上有一句遗漏了。

首先说一下,这个是空指针异常,估计你不会不知道的,呵呵。

具体问题在你的 rs = stmt.executeQuery(sql)这一行吧。
因为你的sql没有定义语句,所以rs就为NULL,得不到值,你打印的时候就NullPointerException了呗。

而且一般都不建议这样写程序,一般都把增删查改的函数分开来写,写在另外一个专用的工具类里面。语句也是写在函数中,不是在外面写。这样也免了你拼字符串的辛苦。如果有什么问题可以“知道”我,我基本在线的。

回答完毕,给分吧。

鱼:简单从代码看,很可能表中遇到空值。name列有空值?
渔:jsp的编译器应该有控制选项,是否保留生成的servlet的java代码。
打开这个选项,你的NPE就非常明确。
没有?这个jsp的编译器太烂。换个jsp的编译器。

2楼说的对,1楼不知所云。。。

Conn类把Statement stmt = con.createStatement();
改成stmt = con.createStatement();这个,试行可不可以