Author: markt Date: Sat Nov 13 12:46:30 2010 New Revision: 1034748 URL: http://svn.apache.org/viewvc?rev=1034748&view=rev Log: Revert r1031709 Parallel deployment implementation is changing as a result of discussion on the dev list and this re-ordering was specific to the previous implementation.
Modified: tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java Modified: tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java?rev=1034748&r1=1034747&r2=1034748&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java Sat Nov 13 12:46:30 2010 @@ -575,6 +575,33 @@ public class CoyoteAdapter implements Ad request.setContext((Context) request.getMappingData().context); request.setWrapper((Wrapper) request.getMappingData().wrapper); + // Filter trace method + if (!connector.getAllowTrace() + && req.method().equalsIgnoreCase("TRACE")) { + Wrapper wrapper = request.getWrapper(); + String header = null; + if (wrapper != null) { + String[] methods = wrapper.getServletMethods(); + if (methods != null) { + for (int i=0; i<methods.length; i++) { + if ("TRACE".equals(methods[i])) { + continue; + } + if (header == null) { + header = methods[i]; + } else { + header += ", " + methods[i]; + } + } + } + } + res.setStatus(405); + res.addHeader("Allow", header); + res.setMessage("TRACE method is not allowed"); + request.getContext().logAccess(request, response, 0, true); + return false; + } + // If there is no context at this point, it is likely no ROOT context // has been deployed if (request.getContext() == null) { @@ -601,10 +628,6 @@ public class CoyoteAdapter implements Ad } } - // Look for session ID in cookies and SSL session - parseSessionCookiesId(req, request); - parseSessionSslId(request); - // Possible redirect MessageBytes redirectPathMB = request.getMappingData().redirectPath; if (!redirectPathMB.isNull()) { @@ -628,33 +651,9 @@ public class CoyoteAdapter implements Ad return false; } - // Filter trace method - if (!connector.getAllowTrace() - && req.method().equalsIgnoreCase("TRACE")) { - Wrapper wrapper = request.getWrapper(); - String header = null; - if (wrapper != null) { - String[] methods = wrapper.getServletMethods(); - if (methods != null) { - for (int i=0; i<methods.length; i++) { - if ("TRACE".equals(methods[i])) { - continue; - } - if (header == null) { - header = methods[i]; - } else { - header += ", " + methods[i]; - } - } - } - } - res.setStatus(405); - res.addHeader("Allow", header); - res.setMessage("TRACE method is not allowed"); - request.getContext().logAccess(request, response, 0, true); - return false; - } - + // Finally look for session ID in cookies and SSL session + parseSessionCookiesId(req, request); + parseSessionSslId(request); return true; } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org