java项目出现500错误是什么原因

HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: An exception occurred processing JSP page /deletexuan.jsp at line 56

53: <%
54: String s="select * from xuan";
55: ResultSet rs=Li.getRs(s);
56: while(rs.next()){
57: out.print("<form action='DelScoreServlet'>");
58: String ss=rs.getString("xname");
59: out.print("<tr><td>"+ss+"</td><td>");

Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

root cause
java.lang.NullPointerException
org.apache.jsp.deletexuan_jsp._jspService(deletexuan_jsp.java:121)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.16 logs.
Apache Tomcat/6.0.16

原因可能为:
1、运行的用户数过多,对服务器造成的压力过大,服务器无法响应,则报HTTP500错误。减小用户数或者场景持续时间,问题得到解决。
2、该做关联的地方没有去做关联,则报HTTP500错误。进行手工或者自动关联,问题得到解决。
3、录制时请求的页面、图片等,在回放的时候服务器找不到,则报HTTP500错误,若该页 面无关紧要,则可以在脚本中注释掉,问题将会得到解决。例如:有验证码的情况下,尽 管测试时已经屏蔽了,但是录制的时候提交了请求,但回放的时候不存在响应。
4、参数化时的取值有问题,则报HTTP500错误。可将参数化列表中的数值,拿到实际应用系统中进行测试,可排除问题。
5、更换了应用服务器(中间件的更换,如tomcat、websphere、jboss等),还是利用原先录制的脚本去运行,则很可能报HTTP500错误。因为各种应用服务器处理的机制不一样,所录制的脚本也不一样,解决办法只有重新录制脚本。
6、Windows xp2 与ISS组件不兼容,则有可能导致HTTP500错误。对ISS组件进行调整后问题解决。
7、系统开发程序写的有问题,则报HTTP500错误。例如有些指针问题没有处理好的,有空指针情况的存在。修改程序后问题解决。
8、如果测试中所进行的操作需要向数据库中插入数据,若大数据量的情况下导致数据库中表空间已满,或 缓冲池较小无法满足数据的存取等,都有可能导致HTTP500错误。调整数据库、修改连接池大小,问题解决。
500错误出现的原因太多了,对于我来说,出现500错误很都情况下都是代码里有些关联没有做,然后导致出错,当然还有一小部分是有时候不注意,服务器开的时间过长,导致服务器崩溃,总之,很多地方都需要注意
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-09-11
这个应该是javaWeb项目吧,访问页面出现500一般是代码出现异常,可以查看控制台的异常信息来确定具体出现错误的原因
第2个回答  推荐于2018-02-22
56: while(rs.next()){

这句话中的rs 没有取到东西。。。
引起空指针异常。。。
由于问题出在js里,所以会报出jasper异常!!!追问

那rs应该取什么东西啊?

追答

看代码,猜测是一个 结果集,从S 也就是 那个sql语句的查询结果

保存形式类似于 List

本回答被提问者和网友采纳
第3个回答  2013-12-02
java.lang.NullPointerException
org.apache.jsp.deletexuan_jsp._jspService(deletexuan_jsp.java:121)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

这里告诉你什么错误、哪个文件、哪一行的了

好好检查吧追问

String s="select * from xuan";
ResultSet rs=Li.getRs(s);
while(rs.next()){
out.print("");
String ss=rs.getString("xname");
out.print(""+ss+"");??

追答

ResultSet rs=Li.getRs(s);

一定返回ResultSet的非null对象吗。

追问

返回的要么是rs要么为空

追答

为空,就会出错了。

还可能Li是空对象。

使用前,检查一下

追问

Li是一个类,这个类主要管数据库的删除,修改,查询,添加,但是能出来的功能就只有添加和修改

第4个回答  2013-12-02
java.lang.NullPointerException
空指针异常
55: ResultSet rs=Li.getRs(s);
可能这句话返回的rs是空指针。你把rs打印出来看下吧追问

那个DBHander里面设的rs就是为空,改了是不是就好了?

追答

Li.getRs(s);这个方法的代码贴出来看看?

追问

public ResultSet getRs(String sql) throws SQLException{

jspInit();
try {
rs=stmt.executeQuery(sql);
return rs;
} catch (Exception e) {
System.out.print(e);
return null;
}

追答

System.out.print(e); 你看下这里有没有打印错误信息。
在这句下面加一句55: ResultSet rs=Li.getRs(s);
if(null!=rs){
while(rs.next()){
out.print("");
String ss=rs.getString("xname");
out.print(""+ss+"");
}
}

相似回答