You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by jf...@apache.org on 2003/03/26 22:57:59 UTC
cvs commit: jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core StandardWrapperValve.java
jfarcand 2003/03/26 13:57:59
Modified: catalina/src/share/org/apache/catalina/core
StandardWrapperValve.java
Log:
Fix for bug 18199:
Regression in Tomcat 5: UnavailableException thrown in init() return Status 404 not 503
Based on the spec SRV.2.3.3.2 Exceptions During Request Handling:
- 404 will be returned if the servlet is permanently unavailable
- 503 will be returned if the servlet is unavailable for x time
Revision Changes Path
1.14 +13 -1 jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/StandardWrapperValve.java
Index: StandardWrapperValve.java
===================================================================
RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/StandardWrapperValve.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- StandardWrapperValve.java 20 Mar 2003 18:28:28 -0000 1.13
+++ StandardWrapperValve.java 26 Mar 2003 21:57:59 -0000 1.14
@@ -192,6 +192,18 @@
if (!unavailable) {
servlet = wrapper.allocate();
}
+ } catch (UnavailableException e) {
+ long available = wrapper.getAvailable();
+ if ((available > 0L) && (available < Long.MAX_VALUE)) {
+ hres.setDateHeader("Retry-After", available);
+ hres.sendError(HttpServletResponse.SC_SERVICE_UNAVAILABLE,
+ sm.getString("standardWrapper.isUnavailable",
+ wrapper.getName()));
+ } else if (available == Long.MAX_VALUE) {
+ hres.sendError(HttpServletResponse.SC_NOT_FOUND,
+ sm.getString("standardWrapper.notFound",
+ wrapper.getName()));
+ }
} catch (ServletException e) {
log.error(sm.getString("standardWrapper.allocateException",
wrapper.getName()), e);
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org