You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2003/07/01 22:59:58 UTC
cvs commit: jakarta-tomcat/src/share/org/apache/tomcat/core ContextManager.java
marcsaeg 2003/07/01 13:59:58
Modified: src/share/org/apache/tomcat/core Tag: tomcat_32
ContextManager.java
Log:
Check for debug > 0 before printing debug messages.
Catch SocketException to avoid sending data down a closed connection.
Revision Changes Path
No revision
No revision
1.100.2.28 +17 -9 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.100.2.27
retrieving revision 1.100.2.28
diff -u -r1.100.2.27 -r1.100.2.28
--- ContextManager.java 5 Oct 2001 18:12:33 -0000 1.100.2.27
+++ ContextManager.java 1 Jul 2003 20:59:57 -0000 1.100.2.28
@@ -567,7 +567,8 @@
}
String vhost=ctx.getHost();
- logInt("Adding context " + ctx.toString());
+ if(debug>0)
+ logInt("Adding context " + ctx.toString());
// XXX temporary workaround for the old SimpleMapper -
// This code will be removed as soon as the new mapper is stable.
@@ -581,7 +582,8 @@
public void removeContext( Context context ) throws TomcatException {
if( context==null ) return;
- logInt( "Removing context " + context.toString());
+ if(debug>0)
+ logInt( "Removing context " + context.toString());
ContextInterceptor cI[]=getContextInterceptors();
for( int i=0; i< cI.length; i++ ) {
@@ -1038,8 +1040,8 @@
// XXX this log was intended to debug the status code generation.
// it can be removed for all cases.
if( code != 302 && code != 401 )
- ctx.log( code + " " + req + " " +
- req.getAttribute("javax.servlet.error.message"));
+ if(debug>0)
+ ctx.log( code + " " + req + " " + req.getAttribute("javax.servlet.error.message"));
errorPath = ctx.getErrorPage( code );
if( errorPath != null ) {
@@ -1098,7 +1100,14 @@
Note that it is _WRONG_ to send the trace back to
the client. AFAIK the trace is the _best_ debugger.
*/
- if (t instanceof UnavailableException) {
+ if( t instanceof SocketException ) {
+ /*
+ * There's nothing we can do in this case because the connection
+ * with the client is already gone. MAS 1/14/03
+ */
+ ctx.log("SocketException in: " + req + " " + t.getMessage());
+ return;
+ }else if (t instanceof UnavailableException) {
int unavailableTime = -1;
if ( !((UnavailableException)t).isPermanent() ) {
unavailableTime = ((UnavailableException)t).getUnavailableSeconds();
@@ -1115,16 +1124,15 @@
res.setStatus(HttpServletResponse.SC_SERVICE_UNAVAILABLE); // 503
handleStatus( req, res, HttpServletResponse.SC_SERVICE_UNAVAILABLE );
return;
- }
- else if( t instanceof IllegalStateException ) {
+ } else if( t instanceof IllegalStateException ) {
ctx.log("IllegalStateException in: " + req + " " +
t.getMessage() );
} else if( t instanceof org.apache.jasper.JasperException ) {
ctx.log("JasperException: " + req + " " + t.getMessage());
} else if( t instanceof IOException ) {
if ( "Broken pipe".equals(t.getMessage()))
- return;
- ctx.log("IOException in: " + req + " " + t.getMessage());
+ return;
+ ctx.log("IOException in: " + req + " " + t.getMessage());
} else {
ctx.log("Exception in: " + req , t );
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org