본문 바로가기

자료창고/에러창고

에러> java.lang.IllegalStateException: 응답이 이미 커밋된 후에는 sendError()를 호출할 수 없습니다.

결론 

: 커스텀 서블릿을 만들어서 가지고 놀던 중에 발생한 오류

response를 이미 보냈는데 또 쓰려고 하면 생기는 오류

한 번만 써야 하니 super.doPost(req,resp)는 지우자.  

 


 

/output으로 요청이 들어오면 testServlet 실행

클라이언트가 Post로 요청하면 service( )에서 doPost 메서드 실행

doPost 메서드 앞 코드에서 이미 response를 커밋했다.

그런데 여기에 또 super.doPost(req,resp)를 요청했다.

두 번 response를 사용하려고 해서 illegal state exception 발생.

 

 

super.doPost를 앞 쪽에 쓰면 

페이지를 찾을 수 없다는 404 에러가 뜸

당연하게도 super에서는 쓴 게 없으니 안 되는게 당연..

 

 

 

 

java - Why do I have to delete the calls to "super.doGet(req, resp)" and "super.doPost(req, resp)"? - Stack Overflow

 

Why do I have to delete the calls to "super.doGet(req, resp)" and "super.doPost(req, resp)"?

I was trying to pass values from a servlet to my jsp page using the code below: package lecture_mvc.mvc.simple; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.se...

stackoverflow.com