William Brogden wrote:How does SOAP get involved with this application?
Generally speaking SOAP requests go to some SOAP specific servlet code. I would bet you have a SOAP specific web application installed elsewhere on the server which is why it does not use your error page.
Bill
This webapplication is intended to download a document using webservices and then put the byte array into the HttpServletResponse for the users to view it. I don't have other servlet for this webservice client.
This is the processRequest method in my servlet. Can you please tell me if there is a better way to implement this?
Whenever there is any exception in WebserviceClient class, it is propagated to this servlet. I see the following error in the log as well.
SEVERE: Exception Processing ErrorPage[exceptionType=java.lang.Throwable, location=/error.jsp]
java.lang.IllegalStateException
at org.apache.coyote.Response.reset(Response.java:297)
at org.apache.catalina.connector.Response.reset(Response.java:653)
at org.apache.catalina.connector.Response.reset(Response.java:920)
at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:357)
at org.apache.catalina.core.StandardHostValve.throwable(StandardHostValve.java:213)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
Thanks,
John