Erro no tomcat

1 resposta
S

Galera terminei o desenvolvimento de um sistema, ele está funcionando perfeitamente no netbeans, mas quando fui passa-lo para o servidor que ficará online o seguinte erro ocorre.

HTTP Status 500 - 

--------------------------------------------------------------------------------

type Exception report

message 

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

exception 

java.lang.IllegalStateException: Cannot forward after response has been committed
	ServLet.Controle.controle(Controle.java:852)
	ServLet.Controle.processRequest(Controle.java:51)
	ServLet.Controle.doGet(Controle.java:988)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
	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.14 logs.


--------------------------------------------------------------------------------

Apache Tomcat/6.0.14

Este erro ocorre quando na pagina "Principal.jsp" clico em cima de um link que aponta para o servlet, que logo após efetuar algumas operações ele volta para a pagina "Principal.jsp" segue abaixo o exemplo

Na "Principal.jsp" tenho o seguinte link
<a href="Controle?cmd=listaratividades" title="Principal">Principal</a>
No servelet possuo os seguintes códigos
String cmd=request.getParameter("cmd");
if (cmd.equalsIgnoreCase("listaratividades")) {
                try {
                    session.removeAttribute("metodo");
                    session.setAttribute("lista", listarAtividades(request, response, false, null));
                    session.setAttribute("total", Htot);
                    rd = request.getRequestDispatcher("Principal.jsp");
                    rd.forward(request, response);
                } catch (ServletException ex) {
                    Logger.getLogger(Controle.class.getName()).log(Level.SEVERE, null, ex);
                } catch (IOException ex) {
                    Logger.getLogger(Controle.class.getName()).log(Level.SEVERE, null, ex);
                }
            }

Alguem pode me dar uma dica do pq deste problema? Obrigado!

1 Resposta

rsakurai

Oi Shakall,

coloca seu RequestDispatch no final do seu método doGet ou doPost do seu Servlet:

rd = request.getRequestDispatcher("Principal.jsp"); rd.forward(request, response);

Criado 14 de maio de 2008
Ultima resposta 14 de mai. de 2008
Respostas 1
Participantes 2