OutputStream is already being used for this response.
- 작성자 :
- 이*호
- 작성일 :
- 2024-03-07 14:27:54
- 조회수 :
- 188
- 구분 :
- 적용지원(기술지원)
- 진행상태 :
- 완료
Q
안녕하세요~
웹에디터에서 이미지파일을 업로드 후 바로 보여주는 기능을 구현하고 있습니다.
raonkhandler.jsp(raonkhandler.png 참조) 에서 이미지 업로드 이후 event.addAfterUploadEventListener를 통해 response를 filehandler.do 통해 보내주고 있습니다.
filehandler.do 에선 이미지를 OutputStream하여 write통해 이미지를 에디터에 보여주고 있습니다.
이미지는 정상적으로 잘 나옵니다. 그런데 was 컨솔에선 아래와 같은 에러메시지가 계속 나오고 있습니다.
OutputStream is already being used for this response 에러 관련하여 구글링하여 out.clear 등 웬만한건 다 적용해보았지만 해결이 안되고 있습니다.
구글에 있는 해결책의 대부분은 jsp상에서 OutputStream를 사용할 때의 해결책이고 저희는 jsp에선 OutputStream를 사용하지 않고 자바단으로 넘어와 OutputStream를 사용하고 있기때문에 다른 일반적인 해결책은 적용이 안되는 것 같습니다. 매핑된 filehandler.do에서 서블릿 변환하면서 문제가 생기는 것 같은데 해결을 계속 못하고 있습니다. 도움 부탁드립니다.
java.lang.IllegalStateException: 이 응답을 위해 getOutputStream()이 이미 호출되었습니다.
at org.apache.catalina.connector.Response.getWriter(Response.java:584)
at org.apache.catalina.connector.ResponseFacade.getWriter(ResponseFacade.java:227)
at javax.servlet.ServletResponseWrapper.getWriter(ServletResponseWrapper.java:114)
at org.apache.jasper.runtime.JspWriterImpl.initOut(JspWriterImpl.java:118)
at org.apache.jasper.runtime.JspWriterImpl.flushBuffer(JspWriterImpl.java:111)
at org.apache.jasper.runtime.PageContextImpl.release(PageContextImpl.java:167)
at org.apache.jasper.runtime.JspFactoryImpl.internalReleasePageContext(JspFactoryImpl.java:120)
at org.apache.jasper.runtime.JspFactoryImpl.releasePageContext(JspFactoryImpl.java:75)
at org.apache.jsp.WEB_002dINF.jsp.egovframework.cmmn.egovError_jsp._jspService(egovError_jsp.java:155)
......
웹에디터에서 이미지파일을 업로드 후 바로 보여주는 기능을 구현하고 있습니다.
raonkhandler.jsp(raonkhandler.png 참조) 에서 이미지 업로드 이후 event.addAfterUploadEventListener를 통해 response를 filehandler.do 통해 보내주고 있습니다.
filehandler.do 에선 이미지를 OutputStream하여 write통해 이미지를 에디터에 보여주고 있습니다.
이미지는 정상적으로 잘 나옵니다. 그런데 was 컨솔에선 아래와 같은 에러메시지가 계속 나오고 있습니다.
OutputStream is already being used for this response 에러 관련하여 구글링하여 out.clear 등 웬만한건 다 적용해보았지만 해결이 안되고 있습니다.
구글에 있는 해결책의 대부분은 jsp상에서 OutputStream를 사용할 때의 해결책이고 저희는 jsp에선 OutputStream를 사용하지 않고 자바단으로 넘어와 OutputStream를 사용하고 있기때문에 다른 일반적인 해결책은 적용이 안되는 것 같습니다. 매핑된 filehandler.do에서 서블릿 변환하면서 문제가 생기는 것 같은데 해결을 계속 못하고 있습니다. 도움 부탁드립니다.
java.lang.IllegalStateException: 이 응답을 위해 getOutputStream()이 이미 호출되었습니다.
at org.apache.catalina.connector.Response.getWriter(Response.java:584)
at org.apache.catalina.connector.ResponseFacade.getWriter(ResponseFacade.java:227)
at javax.servlet.ServletResponseWrapper.getWriter(ServletResponseWrapper.java:114)
at org.apache.jasper.runtime.JspWriterImpl.initOut(JspWriterImpl.java:118)
at org.apache.jasper.runtime.JspWriterImpl.flushBuffer(JspWriterImpl.java:111)
at org.apache.jasper.runtime.PageContextImpl.release(PageContextImpl.java:167)
at org.apache.jasper.runtime.JspFactoryImpl.internalReleasePageContext(JspFactoryImpl.java:120)
at org.apache.jasper.runtime.JspFactoryImpl.releasePageContext(JspFactoryImpl.java:75)
at org.apache.jsp.WEB_002dINF.jsp.egovframework.cmmn.egovError_jsp._jspService(egovError_jsp.java:155)
......
환경정보
-
- OS 정보 : 윈도우
- 표준프레임워크 버전 : 3.10
- JDK(JRE) 정보 : 1.8
- WAS 정보 : 톰캣9.0
- DB 정보 : 티베로
- 기타 환경 정보 :
A
안녕하세요.
표준프레임워크센터입니다.
커스텀 및 올려주신 에러내용만으로는 정확하게 파악하는데 어려움이 있습니다.
'java.lang.IllegalStateException: 이 응답을 위해 getOutputStream()이 이미 호출되었습니다.'를 보면
내부적으로 생긴 out 객체와 이후에 생성되는 out과 충돌이 나타나서 이미 호출되었다는 메시지가 나타나는 것으로 보입니다.
커스텀 환경은 다양한 결과가 있을수 있기 때문에
확인해드리기 어려우므로
Debug 레벨로 로그를 확인하여
직접 디버깅을 해보셔야 할것으로 보입니다.
감사합니다.
표준프레임워크센터입니다.
커스텀 및 올려주신 에러내용만으로는 정확하게 파악하는데 어려움이 있습니다.
'java.lang.IllegalStateException: 이 응답을 위해 getOutputStream()이 이미 호출되었습니다.'를 보면
내부적으로 생긴 out 객체와 이후에 생성되는 out과 충돌이 나타나서 이미 호출되었다는 메시지가 나타나는 것으로 보입니다.
커스텀 환경은 다양한 결과가 있을수 있기 때문에
확인해드리기 어려우므로
Debug 레벨로 로그를 확인하여
직접 디버깅을 해보셔야 할것으로 보입니다.
감사합니다.