costin 01/03/06 23:56:21
Modified: src/share/org/apache/tomcat/core ContextManager.java
Log:
Other places where getContext() needs to be checked.
Revision Changes Path
1.173 +22 -7
jakarta-tomcat/src/share/org/apache/tomcat/core/ContextManager.java
Index: ContextManager.java
===================================================================
RCS file:
/home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/core/ContextManager.java,v
retrieving revision 1.172
retrieving revision 1.173
diff -u -r1.172 -r1.173
--- ContextManager.java 2001/03/07 07:13:26 1.172
+++ ContextManager.java 2001/03/07 07:56:20 1.173
@@ -708,8 +708,12 @@
handleError( req, res, ex );
}
finally {
- BaseInterceptor reqI[]= req.getContext().getContainer().
- getInterceptors(Container.H_postRequest);
+ BaseInterceptor reqI[];
+ if( req.getContext()==null )
+ reqI=getContainer().getInterceptors( Container.H_handleError );
+ else
+ reqI= req.getContext().getContainer().
+ getInterceptors(Container.H_postRequest);
for( int i=0; i< reqI.length; i++ ) {
reqI[i].postRequest( req, res );
@@ -756,8 +760,13 @@
String roles[]=req.getRequiredRoles();
if(roles != null ) {
status=0;
- BaseInterceptor reqI[]= req.getContext().getContainer().
- getInterceptors(Container.H_authorize);
+ BaseInterceptor reqI[];
+ if( req.getContext()==null )
+ reqI=getContainer().
+ getInterceptors( Container.H_handleError );
+ else
+ reqI = req.getContext().getContainer().
+ getInterceptors(Container.H_authorize);
// Call all authorization callbacks.
for( int i=0; i< reqI.length; i++ ) {
@@ -808,7 +817,10 @@
// the context is not fully initialized.
req.setAttribute("javax.servlet.error.message",
"Application not available");
- handleStatus( req, req.getResponse(), 503 ); // service unavailable
+ // return error code - the caller will handle it
+ // handleStatus( req, req.getResponse(), 503 );
+ // service unavailable
+ return 503;
}
ri=req.getContext().getContainer().
@@ -918,8 +930,11 @@
BaseInterceptor ri[];
int status;
- ri=req.getContext().getContainer().
- getInterceptors( Container.H_handleError );
+ if( req.getContext()==null )
+ ri=getContainer().getInterceptors( Container.H_handleError );
+ else
+ ri=req.getContext().getContainer().
+ getInterceptors( Container.H_handleError );
for( int i=0; i< ri.length; i++ ) {
status=ri[i].handleError( req, res, null );
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]