Hi,
Do you know of any issue involving error handling in tomcat (5.5.9) ?
Here's the deal. I defined in my web.xml the following entry
<error-page>
<error-code>404</error-code>
<location>/portal.do</location>
</error-page>
When I call, say portal1.do, a page that doesn't exists I get a forward to
the portal.do the thing with the forward is seems that it doesn't go thru
the application filters again. And why this is not a redirect ? The browser
address stays portal1.do instead of portal.do...
Here how the stack trace looks when the portal1.do is called ( this is
normal, check the second trace)
Thread [http-8585-Processor24] (Suspended)
CustomServlet.service(ServletRequest, ServletResponse) line: 104
ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse)
line: 252
ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line:
173
FilterSecurityInterceptor.invoke(FilterInvocation) line: 84
SecurityEnforcementFilter.doFilter(ServletRequest, ServletResponse,
FilterChain) line: 182
FilterToBeanProxy.doFilter(ServletRequest, ServletResponse, FilterChain)
line: 125
ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse)
line: 202
ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line:
173
CustomAuthenticationProcessingFilter(AbstractProcessingFilter).doFilter(ServletRequest,
ServletResponse, FilterChain) line: 305
FilterToBeanProxy.doFilter(ServletRequest, ServletResponse, FilterChain)
line: 125
ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse)
line: 202
ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line:
173
HttpSessionContextIntegrationFilter.doFilter(ServletRequest,
ServletResponse, FilterChain) line: 225
FilterToBeanProxy.doFilter(ServletRequest, ServletResponse, FilterChain)
line: 125
ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse)
line: 202
ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line:
173
ContentReaderFilter.doFilter(ServletRequest, ServletResponse, FilterChain)
line: 171
ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse)
line: 202
ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line:
173
RequestUtilsFilter.doFilter(ServletRequest, ServletResponse, FilterChain)
line: 114
ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse)
line: 202
ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line:
173
StandardWrapperValve.invoke(Request, Response) line: 213
StandardContextValve.invoke(Request, Response) line: 178
StandardHostValve.invoke(Request, Response) line: 126
ErrorReportValve.invoke(Request, Response) line: 105
StandardEngineValve.invoke(Request, Response) line: 107
CoyoteAdapter.service(Request, Response) line: 148
Http11Processor.process(InputStream, OutputStream) line: 856
Http11Protocol$Http11ConnectionHandler.processConnection(TcpConnection,
Object[]) line: 744
PoolTcpEndpoint.processSocket(Socket, TcpConnection, Object[]) line: 527
LeaderFollowerWorkerThread.runIt(Object[]) line: 80
ThreadPool$ControlRunnable.run() line: 684
ThreadWithAttributes(Thread).run() line: 595
Here how the stack trace looks on the forward to /portal.do after 404 was
intercepted
Thread [http-8585-Processor24] (Suspended (breakpoint at line 74 in
CustomServlet))
CustomServlet.service(ServletRequest, ServletResponse) line: 74
ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse)
line: 252
ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line:
173
ApplicationDispatcher.invoke(ServletRequest, ServletResponse) line: 672
ApplicationDispatcher.processRequest(ServletRequest, ServletResponse) line:
465
ApplicationDispatcher.doForward(ServletRequest, ServletResponse) line:
398
ApplicationDispatcher.forward(ServletRequest, ServletResponse) line: 301
StandardHostValve.custom(Request, Response, ErrorPage) line: 362
StandardHostValve.status(Request, Response) line: 283
StandardHostValve.invoke(Request, Response) line: 136
ErrorReportValve.invoke(Request, Response) line: 105
StandardEngineValve.invoke(Request, Response) line: 107
CoyoteAdapter.service(Request, Response) line: 148
Http11Processor.process(InputStream, OutputStream) line: 856
Http11Protocol$Http11ConnectionHandler.processConnection(TcpConnection,
Object[]) line: 744
PoolTcpEndpoint.processSocket(Socket, TcpConnection, Object[]) line: 527
LeaderFollowerWorkerThread.runIt(Object[]) line: 80
ThreadPool$ControlRunnable.run() line: 684
ThreadWithAttributes(Thread).run() line: 595
Any idea will be greatly appreciated.
MC
Ps.
On weblogic the error handling triggers a redirect and the above problem is
not present.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]