http://www.okjsp.net/seq/253775
기존 잘 돌아가던 소스에 if문을 추가시켰는데 에러가 났습니다.
부장님께 여쭤보니
수정한 파일이 implements CommandAction 이렇게 되어있고
CommandAction 의 모양?을 그대로 따라야
하는데 아니라서
에러가 난다고 하시더라고요.
모양을 그대로 따른다는게 어떤 의미인가요
에러는 이렇게 납니다.
2014. 6. 20 오후 1:25:14 org.apache.catalina.core.StandardWrapperValve
invoke
심각: Servlet.service() for servlet [ControllerAction] in context with
path [/sb04] threw exception
java.lang.IllegalStateException: Cannot forward
after response has been committed
at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:348)
at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:338)
at
sb.common.controller.ControllerAction.requestPro(ControllerAction.java:106)
at
sb.common.controller.ControllerAction.doPost(ControllerAction.java:67)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at
java.lang.Thread.run(Unknown Source)
----------------------------------------------------------------------------------------------------
자바 인터페이스에 대해 공부해보세요.
인터페이스를 implements(구현)할 경우 그 인터페이스에 명시되있는 메서드는 반드시
존재해야 합니다. 인터페이스는 일종의 약속이라고 보시면 됩니다.
응답이 끝난후에 포워딩 할수없다 뭐 그런얘기같네요
response 에 대한 응답스트림을 2번처리하셔서 그런거 같네요
예를들어 getWriter() 와
getOutputStream() 를 동시에 호출하셨거나
또는 getRequestDispatcher 를 forward 하신후에 처리를
하셨거나
'나의질문답' 카테고리의 다른 글
contenttype 에러 질문있습니다 (0) | 2014.07.29 |
---|---|
팝업창 질문있습니다.~ (0) | 2014.07.29 |
자바에서 alert (0) | 2014.07.29 |
option:selected할때 질문있습니다. (0) | 2014.07.29 |
팝업창 닫기버튼 질문있습니다. (0) | 2014.07.29 |