Java.lang.IllegalStateException

Ae galera!

Vê se alguém pode me ajudar, estou com o seguinte problema:

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: java.lang.IllegalStateException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:522)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:410)
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.IllegalStateException
org.apache.catalina.connector.ResponseFacade.sendRedirect(ResponseFacade.java:435)
org.apache.jsp.cadastrocargo_jsp._jspService(cadastrocargo_jsp.java:297)
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

O código que dá o erro é a seguinte:

<%
try {
Connection con = DriverManager.getConnection(request.getSession().getAttribute(“database”).toString(),
request.getSession().getAttribute(“user”).toString(),request.getSession().getAttribute(“password”).toString());
try {
PreparedStatement sql = (PreparedStatement) con.prepareStatement(“select codigo, descricao from tb_cargos order by descricao”);
ResultSet result = sql.executeQuery();
while (result.next()) {
out.println("

");
out.println(""
  • result.getString(“codigo”)+ “
”);
out.println(""+ result.getString(“descricao”) + “”);
out.println("");
}
} finally {
con.close();
}
} catch (NullPointerException e) {
response.sendRedirect(“sessaoperdida.jsp”);//O erro dá aqui
}
%>

Se alguém souber posta aí.

Esta exceção ocorre quando você tenta chamar um método em um estado ilegal ou inapropriado. Provavelmente você não pode chamar response.sendRedirect() numa cláusula catch. Não use scriptlets, mova este seu código para uma Servlet para que você seja capaz de depurar.