DO NOT REPLY [Bug 46221] Leak WebappClassLoader with commons-logging and log4j
https://issues.apache.org/bugzilla/show_bug.cgi?id=46221 Mauro Molinari changed: What|Removed |Added CC||mauro...@tiscali.it --- Comment #9 from Mauro Molinari 2009-01-12 03:41:14 PST --- Today I was trying to identify memory leaks in our webapp restart process and I encountered this problem (the logger instance of StandardContext keeps a reference to a logger that is loaded by the webapp class loader, so this can't be garbage collected). I gave a quick look to the attached patch and it seems to actually solve my problem. This is clearly a bug (not an enhancement!) because resources are not cleared correctly by org.apache.catalina.core.StandardContext.stop(). I hope this will be fixed soon... Mauro. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
How does tomcat handle IOExceptions thrown by the service method
Hi, I am writing a servlet by extending the HttpServlet class. I need to over ride the doPost method to do some custom operations as required by my web application. I had a doubt regarding how Tomcat handles the IOException. Does it set the HTTP response code based upon the type of IOException that occurs while reading the request from the client ? eg, if the exception that occurs while reading the request message from the client / sending the response to the client is java.net.SocketTimeoutException, will tomcat set the status code to "408 Request Timeout", or do I have to do that explicitly ? Thanks in advance, Vijay
DO NOT REPLY [Bug 46221] Leak WebappClassLoader with commons-logging and log4j
https://issues.apache.org/bugzilla/show_bug.cgi?id=46221 --- Comment #10 from Mauro Molinari 2009-01-12 03:49:00 PST --- After giving a quick look at Tomcat6 sources, this problem seems to affect that version of Tomcat6 too. Mauro. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- You are receiving this mail because: --- You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r733748 - in /tomcat/trunk: java/org/apache/catalina/ java/org/apache/catalina/connector/ java/org/apache/catalina/core/ java/org/apache/catalina/ha/session/ java/org/apache/catalina/sessi
Author: markt Date: Mon Jan 12 05:39:35 2009 New Revision: 733748 URL: http://svn.apache.org/viewvc?rev=733748&view=rev Log: Support for setting SessionTrackingMode Most of this commit is to support invalidating the SSL session by the session manager. I'm not sure yet that support for SSL session tracking is a good idea. There are quite a few limitations (see the ssl howto doc) and the changes to do it are fairly invasive. The option remains to remove this at a later date and not support SSL session tracking in Tomcat 7. Added: tomcat/trunk/java/org/apache/tomcat/util/net/SSLSessionManager.java (with props) Modified: tomcat/trunk/java/org/apache/catalina/Globals.java tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java tomcat/trunk/java/org/apache/catalina/connector/Request.java tomcat/trunk/java/org/apache/catalina/connector/Response.java tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java tomcat/trunk/java/org/apache/catalina/core/ApplicationContextFacade.java tomcat/trunk/java/org/apache/catalina/core/LocalStrings.properties tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java tomcat/trunk/java/org/apache/catalina/session/Constants.java tomcat/trunk/java/org/apache/catalina/session/ManagerBase.java tomcat/trunk/java/org/apache/coyote/ActionCode.java tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java tomcat/trunk/java/org/apache/tomcat/util/net/SSLSupport.java tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESupport.java tomcat/trunk/webapps/docs/ssl-howto.xml Modified: tomcat/trunk/java/org/apache/catalina/Globals.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/Globals.java?rev=733748&r1=733747&r2=733748&view=diff == --- tomcat/trunk/java/org/apache/catalina/Globals.java (original) +++ tomcat/trunk/java/org/apache/catalina/Globals.java Mon Jan 12 05:39:35 2009 @@ -145,6 +145,14 @@ /** + * The request attribute key for the session manager. + * This one is a Tomcat extension to the Servlet spec. + */ +public static final String SSL_SESSION_MGR_ATTR = +"javax.servlet.request.ssl_session_mgr"; + + +/** * The servlet context attribute under which the managed bean Registry * will be stored for privileged contexts (if enabled). */ 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=733748&r1=733747&r2=733748&view=diff == --- tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java Mon Jan 12 05:39:35 2009 @@ -19,6 +19,9 @@ package org.apache.catalina.connector; import java.io.IOException; +import java.util.EnumSet; + +import javax.servlet.SessionTrackingMode; import org.apache.catalina.CometEvent; import org.apache.catalina.Context; @@ -36,6 +39,7 @@ import org.apache.tomcat.util.buf.MessageBytes; import org.apache.tomcat.util.http.Cookies; import org.apache.tomcat.util.http.ServerCookie; +import org.apache.tomcat.util.net.SSLSupport; import org.apache.tomcat.util.net.SocketStatus; @@ -55,6 +59,8 @@ // -- Constants +private static final EnumSet SSL_ONLY = +EnumSet.of(SessionTrackingMode.SSL); public static final int ADAPTER_NOTES = 1; @@ -505,12 +511,32 @@ // Parse session Id parseSessionCookiesId(req, request); - +parseSessionSslId(request); return true; } /** + * Look for SSL sesison ID if required. Only look for SSL Session ID if it + * is the only tracking method enabled. + */ +protected void parseSessionSslId(Request request) { +if (request.getRequestedSessionId() == null && +SSL_ONLY.equals(request.getServletContext() +.getEffectiveSessionTrackingModes()) && +Boolean.TRUE.equals( +request.getConnector().getAttribute("SSLEnabled"))) { +// TODO Is there a better way to map SSL sessions to our sesison ID? +// TODO The request.getAttribute() will cause a number of other SSL +// attribute to be populated. Is this a performance concern? +request.setRequestedSessionId( + request.getAttribute(SSLSupport.SESSION_ID_KEY).toString()); +request.setRequestedSessionSSL(true); +
svn commit: r733768 - in /tomcat/trunk/java/javax/servlet: ./ http/ jsp/el/ jsp/tagext/
Author: markt Date: Mon Jan 12 06:16:19 2009 New Revision: 733768 URL: http://svn.apache.org/viewvc?rev=733768&view=rev Log: Apply generics to javax.servlet.* on the basis that the EG is in the process of accepting a patch to do this. Modified: tomcat/trunk/java/javax/servlet/FilterConfig.java tomcat/trunk/java/javax/servlet/GenericServlet.java tomcat/trunk/java/javax/servlet/ServletConfig.java tomcat/trunk/java/javax/servlet/ServletContext.java tomcat/trunk/java/javax/servlet/ServletRequest.java tomcat/trunk/java/javax/servlet/ServletRequestWrapper.java tomcat/trunk/java/javax/servlet/http/HttpServletRequest.java tomcat/trunk/java/javax/servlet/http/HttpServletRequestWrapper.java tomcat/trunk/java/javax/servlet/http/HttpSession.java tomcat/trunk/java/javax/servlet/http/HttpSessionContext.java tomcat/trunk/java/javax/servlet/http/HttpUtils.java tomcat/trunk/java/javax/servlet/jsp/el/ExpressionEvaluator.java tomcat/trunk/java/javax/servlet/jsp/el/ImplicitObjectELResolver.java tomcat/trunk/java/javax/servlet/jsp/el/ScopedAttributeELResolver.java tomcat/trunk/java/javax/servlet/jsp/tagext/TagSupport.java Modified: tomcat/trunk/java/javax/servlet/FilterConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/FilterConfig.java?rev=733768&r1=733767&r2=733768&view=diff == --- tomcat/trunk/java/javax/servlet/FilterConfig.java (original) +++ tomcat/trunk/java/javax/servlet/FilterConfig.java Mon Jan 12 06:16:19 2009 @@ -84,7 +84,7 @@ * */ -public Enumeration getInitParameterNames(); +public Enumeration getInitParameterNames(); Modified: tomcat/trunk/java/javax/servlet/GenericServlet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/GenericServlet.java?rev=733768&r1=733767&r2=733768&view=diff == --- tomcat/trunk/java/javax/servlet/GenericServlet.java (original) +++ tomcat/trunk/java/javax/servlet/GenericServlet.java Mon Jan 12 06:16:19 2009 @@ -119,7 +119,7 @@ * */ -public Enumeration getInitParameterNames() { +public Enumeration getInitParameterNames() { return getServletConfig().getInitParameterNames(); } Modified: tomcat/trunk/java/javax/servlet/ServletConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/ServletConfig.java?rev=733768&r1=733767&r2=733768&view=diff == --- tomcat/trunk/java/javax/servlet/ServletConfig.java (original) +++ tomcat/trunk/java/javax/servlet/ServletConfig.java Mon Jan 12 06:16:19 2009 @@ -89,7 +89,7 @@ * */ -public Enumeration getInitParameterNames(); +public Enumeration getInitParameterNames(); } Modified: tomcat/trunk/java/javax/servlet/ServletContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/ServletContext.java?rev=733768&r1=733767&r2=733768&view=diff == --- tomcat/trunk/java/javax/servlet/ServletContext.java (original) +++ tomcat/trunk/java/javax/servlet/ServletContext.java Mon Jan 12 06:16:19 2009 @@ -162,7 +162,7 @@ * @since Servlet 2.3 */ -public Set getResourcePaths(String path); +public Set getResourcePaths(String path); @@ -352,7 +352,7 @@ * */ -public Enumeration getServlets(); +public Enumeration getServlets(); @@ -371,7 +371,7 @@ * */ -public Enumeration getServletNames(); +public Enumeration getServletNames(); @@ -524,7 +524,7 @@ * @see ServletConfig#getInitParameter */ -public Enumeration getInitParameterNames(); +public Enumeration getInitParameterNames(); @@ -577,7 +577,7 @@ * */ -public Enumeration getAttributeNames(); +public Enumeration getAttributeNames(); Modified: tomcat/trunk/java/javax/servlet/ServletRequest.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/ServletRequest.java?rev=733768&r1=733767&r2=733768&view=diff == --- tomcat/trunk/java/javax/servlet/ServletRequest.java (original) +++ tomcat/trunk/java/javax/servlet/ServletRequest.java Mon Jan 12 06:16:19 2009 @@ -91,7 +91,7 @@ * */ -public Enumeration getAttributeNames(); +public Enumeration getAttributeNames(); @@ -229,7 +229,7 @@ * */ -public Enumeration getParameterNames(); +public Enumeration getParameterNames(); @@ -266,7 +266,7 @@ * */ -public Map getParameterMap(); +public Map getParameterMap(); @@ -480,7 +480,7 @@ * */ -
svn commit: r733769 - /tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java
Author: markt Date: Mon Jan 12 06:16:39 2009 New Revision: 733769 URL: http://svn.apache.org/viewvc?rev=733769&view=rev Log: Correct error in generics Modified: tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java Modified: tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java?rev=733769&r1=733768&r2=733769&view=diff == --- tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java (original) +++ tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java Mon Jan 12 06:16:39 2009 @@ -369,9 +369,9 @@ * * @deprecated This method has been deprecated with no replacement */ -public Enumeration getServlets() { +public Enumeration getServlets() { -return (new Vector().elements()); +return (new Vector().elements()); } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r733771 - in /tomcat/trunk/java/javax/servlet: ServletRequestWrapper.java http/HttpServletRequestWrapper.java http/HttpServletResponseWrapper.java
Author: markt Date: Mon Jan 12 06:20:54 2009 New Revision: 733771 URL: http://svn.apache.org/viewvc?rev=733771&view=rev Log: Deprecate wrapper methods that wrap deprecated methods. The assumption is that the EG will accept the patch to do this too. If not, it should be reverted. Modified: tomcat/trunk/java/javax/servlet/ServletRequestWrapper.java tomcat/trunk/java/javax/servlet/http/HttpServletRequestWrapper.java tomcat/trunk/java/javax/servlet/http/HttpServletResponseWrapper.java Modified: tomcat/trunk/java/javax/servlet/ServletRequestWrapper.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/ServletRequestWrapper.java?rev=733771&r1=733770&r2=733771&view=diff == --- tomcat/trunk/java/javax/servlet/ServletRequestWrapper.java (original) +++ tomcat/trunk/java/javax/servlet/ServletRequestWrapper.java Mon Jan 12 06:20:54 2009 @@ -349,6 +349,7 @@ /** * The default behavior of this method is to return getRealPath(String path) * on the wrapped request object. + * @deprecated As of Version 3.0 of the Java Servlet API */ public String getRealPath(String path) { Modified: tomcat/trunk/java/javax/servlet/http/HttpServletRequestWrapper.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/http/HttpServletRequestWrapper.java?rev=733771&r1=733770&r2=733771&view=diff == --- tomcat/trunk/java/javax/servlet/http/HttpServletRequestWrapper.java (original) +++ tomcat/trunk/java/javax/servlet/http/HttpServletRequestWrapper.java Mon Jan 12 06:20:54 2009 @@ -253,6 +253,7 @@ /** * The default behavior of this method is to return isRequestedSessionIdFromUrl() * on the wrapped request object. + * @deprecated As of Version 3.0 of the Java Servlet API */ public boolean isRequestedSessionIdFromUrl() { return this._getHttpServletRequest().isRequestedSessionIdFromUrl(); Modified: tomcat/trunk/java/javax/servlet/http/HttpServletResponseWrapper.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/http/HttpServletResponseWrapper.java?rev=733771&r1=733770&r2=733771&view=diff == --- tomcat/trunk/java/javax/servlet/http/HttpServletResponseWrapper.java (original) +++ tomcat/trunk/java/javax/servlet/http/HttpServletResponseWrapper.java Mon Jan 12 06:20:54 2009 @@ -87,6 +87,7 @@ /** * The default behavior of this method is to call encodeUrl(String url) * on the wrapped response object. + * @deprecated As of Version 3.0 of the Java Servlet API */ public String encodeUrl(String url) { return this._getHttpServletResponse().encodeUrl(url); @@ -95,6 +96,7 @@ /** * The default behavior of this method is to return encodeRedirectUrl(String url) * on the wrapped response object. + * @deprecated As of Version 3.0 of the Java Servlet API */ public String encodeRedirectUrl(String url) { return this._getHttpServletResponse().encodeRedirectUrl(url); @@ -187,6 +189,7 @@ /** * The default behavior of this method is to call setStatus(int sc, String sm) * on the wrapped response object. + * @deprecated As of Version 3.0 of the Java Servlet API */ public void setStatus(int sc, String sm) { this._getHttpServletResponse().setStatus(sc, sm); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r733775 - in /tomcat/trunk/java/org/apache/catalina: ant/jmx/ connector/ core/ ha/jmx/ ha/session/ session/
Author: markt Date: Mon Jan 12 07:02:23 2009 New Revision: 733775 URL: http://svn.apache.org/viewvc?rev=733775&view=rev Log: Generics changes after updating the spec api and also those enabled by the min 1.6 JDK requirement. Add deprecation to the internal Tomcta methods that implement deprecated methods. Modified: tomcat/trunk/java/org/apache/catalina/ant/jmx/JMXAccessorTask.java tomcat/trunk/java/org/apache/catalina/connector/Request.java tomcat/trunk/java/org/apache/catalina/connector/RequestFacade.java tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java tomcat/trunk/java/org/apache/catalina/core/ApplicationContextFacade.java tomcat/trunk/java/org/apache/catalina/core/ApplicationFilterConfig.java tomcat/trunk/java/org/apache/catalina/core/ApplicationHttpRequest.java tomcat/trunk/java/org/apache/catalina/core/ApplicationHttpResponse.java tomcat/trunk/java/org/apache/catalina/core/DummyRequest.java tomcat/trunk/java/org/apache/catalina/core/DummyResponse.java tomcat/trunk/java/org/apache/catalina/core/StandardWrapperFacade.java tomcat/trunk/java/org/apache/catalina/ha/jmx/ClusterJmxHelper.java tomcat/trunk/java/org/apache/catalina/ha/session/DeltaSession.java tomcat/trunk/java/org/apache/catalina/session/StandardSession.java tomcat/trunk/java/org/apache/catalina/session/StandardSessionFacade.java Modified: tomcat/trunk/java/org/apache/catalina/ant/jmx/JMXAccessorTask.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ant/jmx/JMXAccessorTask.java?rev=733775&r1=733774&r2=733775&view=diff == --- tomcat/trunk/java/org/apache/catalina/ant/jmx/JMXAccessorTask.java (original) +++ tomcat/trunk/java/org/apache/catalina/ant/jmx/JMXAccessorTask.java Mon Jan 12 07:02:23 2009 @@ -621,7 +621,7 @@ for (Iterator iter = keys.iterator(); iter.hasNext();) { String key = iter.next(); Object value = data.get(key); -OpenType type = compositeType.getType(key); +OpenType type = compositeType.getType(key); if (type instanceof SimpleType) { setProperty(propertyPrefix + "." + key, value); } else { @@ -636,7 +636,7 @@ Object key1 = iter1.next(); CompositeData valuedata = data.get(new Object[] { key1 }); Object value = valuedata.get("value"); -OpenType type = valuedata.getCompositeType().getType( +OpenType type = valuedata.getCompositeType().getType( "value"); if (type instanceof SimpleType) { setProperty(propertyPrefix + "." + key1, value); Modified: tomcat/trunk/java/org/apache/catalina/connector/Request.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/Request.java?rev=733775&r1=733774&r2=733775&view=diff == --- tomcat/trunk/java/org/apache/catalina/connector/Request.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/Request.java Mon Jan 12 07:02:23 2009 @@ -1090,7 +1090,7 @@ /** * Return the names of all defined request parameters for this request. */ -public Enumeration getParameterNames() { +public Enumeration getParameterNames() { if (!parametersParsed) parseParameters(); @@ -1932,7 +1932,7 @@ * * @param name Name of the requested header */ -public Enumeration getHeaders(String name) { +public Enumeration getHeaders(String name) { return coyoteRequest.getMimeHeaders().values(name); } @@ -1940,7 +1940,7 @@ /** * Return the names of all headers received with this request. */ -public Enumeration getHeaderNames() { +public Enumeration getHeaderNames() { return coyoteRequest.getMimeHeaders().names(); } Modified: tomcat/trunk/java/org/apache/catalina/connector/RequestFacade.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/RequestFacade.java?rev=733775&r1=733774&r2=733775&view=diff == --- tomcat/trunk/java/org/apache/catalina/connector/RequestFacade.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/RequestFacade.java Mon Jan 12 07:02:23 2009 @@ -269,7 +269,7 @@ } -public Enumeration getAttributeNames() { +public Enumeration getAttributeNames() { if (request == null) { throw new IllegalStateException( @@ -362,7 +362,7 @@ } -public Enumeration getParameterNames() { +public Enumeration getParameterNames() { if (request == null) { throw new IllegalStateException( @@ -405,7 +40
svn commit: r733779 - in /tomcat/trunk/java/org/apache/tomcat: Apr.java util/net/NioEndpoint.java
Author: markt Date: Mon Jan 12 07:17:00 2009 New Revision: 733779 URL: http://svn.apache.org/viewvc?rev=733779&view=rev Log: Misc code clean up to keepo the Eclipse error count trending downwards. Modified: tomcat/trunk/java/org/apache/tomcat/Apr.java tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java Modified: tomcat/trunk/java/org/apache/tomcat/Apr.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/Apr.java?rev=733779&r1=733778&r2=733779&view=diff == --- tomcat/trunk/java/org/apache/tomcat/Apr.java (original) +++ tomcat/trunk/java/org/apache/tomcat/Apr.java Mon Jan 12 07:17:00 2009 @@ -38,7 +38,7 @@ aprInfo = props.getProperty("tcn.info"); } catch (Throwable t) { -; // Nothing +// Do nothing } } } Modified: tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java?rev=733779&r1=733778&r2=733779&view=diff == --- tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java Mon Jan 12 07:17:00 2009 @@ -32,16 +32,13 @@ import java.nio.channels.SocketChannel; import java.nio.channels.WritableByteChannel; import java.security.KeyStore; -import java.util.Collection; import java.util.Iterator; import java.util.Set; import java.util.StringTokenizer; import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.CountDownLatch; import java.util.concurrent.Executor; -import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.RejectedExecutionException; -import java.util.concurrent.ThreadFactory; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; @@ -1576,7 +1573,7 @@ } sc = attachment.getChannel(); sc.setSendFile(true); -WritableByteChannel wc =(WritableByteChannel) ((sc instanceof SecureNioChannel)?sc:sc.getIOChannel()); +WritableByteChannel wc = ((sc instanceof SecureNioChannel)?sc:sc.getIOChannel()); if (sc.getOutboundRemaining()>0) { if (sc.flushOutbound()) { @@ -1784,7 +1781,7 @@ public void awaitReadLatch(long timeout, TimeUnit unit) throws InterruptedException { awaitLatch(readLatch,timeout,unit);} public void awaitWriteLatch(long timeout, TimeUnit unit) throws InterruptedException { awaitLatch(writeLatch,timeout,unit);} -public long getLastRegistered() { return lastRegistered; }; +public long getLastRegistered() { return lastRegistered; } public void setLastRegistered(long reg) { lastRegistered = reg; } public void setSendfileData(SendfileData sf) { this.sendfileData = sf;} - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r733748 - in /tomcat/trunk: java/org/apache/catalina/ java/org/apache/catalina/connector/ java/org/apache/catalina/core/ java/org/apache/catalina/ha/session/ java/org/apache/catalina/s
this implementation may ask for more than is warranted. I would -1 based on for example "javax.servlet.request.ssl_session_mgr"; shouldn't extensions be named differently, and not within the javax.servlet namespace? SSLSessionManager.invalidateSession > not sure why the SSL sessions should invalidated when a HttpSession is invalidated. I should be able to continue my SSL session even after I invalidate my HttpSession also, there are so many changes for this, when in fact the request you already have the SSL session ID in the request attribute SSL session id -> javax.servlet.request.ssl_session_id of type java.lang.String why tracking sessions using SSL is part of the servlet spec, there are probably many different ways of implementing it, and I think it could be simpler than this, so maybe its a good idea to discuss such changes on the dev list first. Filip ma...@apache.org wrote: Author: markt Date: Mon Jan 12 05:39:35 2009 New Revision: 733748 URL: http://svn.apache.org/viewvc?rev=733748&view=rev Log: Support for setting SessionTrackingMode Most of this commit is to support invalidating the SSL session by the session manager. I'm not sure yet that support for SSL session tracking is a good idea. There are quite a few limitations (see the ssl howto doc) and the changes to do it are fairly invasive. The option remains to remove this at a later date and not support SSL session tracking in Tomcat 7. Added: tomcat/trunk/java/org/apache/tomcat/util/net/SSLSessionManager.java (with props) Modified: tomcat/trunk/java/org/apache/catalina/Globals.java tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java tomcat/trunk/java/org/apache/catalina/connector/Request.java tomcat/trunk/java/org/apache/catalina/connector/Response.java tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java tomcat/trunk/java/org/apache/catalina/core/ApplicationContextFacade.java tomcat/trunk/java/org/apache/catalina/core/LocalStrings.properties tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java tomcat/trunk/java/org/apache/catalina/session/Constants.java tomcat/trunk/java/org/apache/catalina/session/ManagerBase.java tomcat/trunk/java/org/apache/coyote/ActionCode.java tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java tomcat/trunk/java/org/apache/tomcat/util/net/SSLSupport.java tomcat/trunk/java/org/apache/tomcat/util/net/jsse/JSSESupport.java tomcat/trunk/webapps/docs/ssl-howto.xml Modified: tomcat/trunk/java/org/apache/catalina/Globals.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/Globals.java?rev=733748&r1=733747&r2=733748&view=diff == --- tomcat/trunk/java/org/apache/catalina/Globals.java (original) +++ tomcat/trunk/java/org/apache/catalina/Globals.java Mon Jan 12 05:39:35 2009 @@ -145,6 +145,14 @@ /** + * The request attribute key for the session manager. + * This one is a Tomcat extension to the Servlet spec. + */ +public static final String SSL_SESSION_MGR_ATTR = +"javax.servlet.request.ssl_session_mgr"; + + +/** * The servlet context attribute under which the managed bean Registry * will be stored for privileged contexts (if enabled). */ 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=733748&r1=733747&r2=733748&view=diff == --- tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java Mon Jan 12 05:39:35 2009 @@ -19,6 +19,9 @@ package org.apache.catalina.connector; import java.io.IOException; +import java.util.EnumSet; + +import javax.servlet.SessionTrackingMode; import org.apache.catalina.CometEvent; import org.apache.catalina.Context; @@ -36,6 +39,7 @@ import org.apache.tomcat.util.buf.MessageBytes; import org.apache.tomcat.util.http.Cookies; import org.apache.tomcat.util.http.ServerCookie; +import org.apache.tomcat.util.net.SSLSupport; import org.apache.tomcat.util.net.SocketStatus; @@ -55,6 +59,8 @@ // -- Constants +private static final EnumSet SSL_ONLY = +EnumSet.of(SessionTrackingMode.SSL); public static final int ADAPTER_NOTES = 1; @@ -505,12 +511,32 @@ // Parse session Id parseSessionCookiesId(req, request); - +parseSessionSslId(request); return true; }
svn commit: r733823 - in /tomcat/connectors/trunk/jk: build.xml jkstatus/build.xml native/common/jk_status.c native/iis/jk_isapi_plugin.c xdocs/style.xsl
Author: rjung Date: Mon Jan 12 07:59:32 2009 New Revision: 733823 URL: http://svn.apache.org/viewvc?rev=733823&view=rev Log: Update copyright year for JK. Modified: tomcat/connectors/trunk/jk/build.xml tomcat/connectors/trunk/jk/jkstatus/build.xml tomcat/connectors/trunk/jk/native/common/jk_status.c tomcat/connectors/trunk/jk/native/iis/jk_isapi_plugin.c tomcat/connectors/trunk/jk/xdocs/style.xsl Modified: tomcat/connectors/trunk/jk/build.xml URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/build.xml?rev=733823&r1=733822&r2=733823&view=diff == --- tomcat/connectors/trunk/jk/build.xml (original) +++ tomcat/connectors/trunk/jk/build.xml Mon Jan 12 07:59:32 2009 @@ -439,7 +439,7 @@ version="true" windowtitle="Jk Connector Documentation" doctitle="Jk Connector" - bottom="Copyright © 2001-2008 Apache Software Foundation. All Rights Reserved." + bottom="Copyright © 2001-2009 Apache Software Foundation. All Rights Reserved." /> Modified: tomcat/connectors/trunk/jk/jkstatus/build.xml URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/jkstatus/build.xml?rev=733823&r1=733822&r2=733823&view=diff == --- tomcat/connectors/trunk/jk/jkstatus/build.xml (original) +++ tomcat/connectors/trunk/jk/jkstatus/build.xml Mon Jan 12 07:59:32 2009 @@ -122,7 +122,7 @@ version="true" windowtitle="Jk Status Internal API Documentation" doctitle="Jk Status API" - bottom="Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved." + bottom="Copyright © 2000-2009 Apache Software Foundation. All Rights Reserved." /> Modified: tomcat/connectors/trunk/jk/native/common/jk_status.c URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_status.c?rev=733823&r1=733822&r2=733823&view=diff == --- tomcat/connectors/trunk/jk/native/common/jk_status.c (original) +++ tomcat/connectors/trunk/jk/native/common/jk_status.c Mon Jan 12 07:59:32 2009 @@ -201,7 +201,7 @@ "http://www.w3.org/1999/xhtml\"; xml:lang=\"en\" lang=\"en\">" \ "JK Status Manager" -#define JK_STATUS_COPYRIGHT"Copyright © 1999-2008, The Apache Software Foundation" \ +#define JK_STATUS_COPYRIGHT"Copyright © 1999-2009, The Apache Software Foundation" \ "Licensed under the http://www.apache.org/licenses/LICENSE-2.0\";>" \ "Apache License, Version 2.0." Modified: tomcat/connectors/trunk/jk/native/iis/jk_isapi_plugin.c URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/iis/jk_isapi_plugin.c?rev=733823&r1=733822&r2=733823&view=diff == --- tomcat/connectors/trunk/jk/native/iis/jk_isapi_plugin.c (original) +++ tomcat/connectors/trunk/jk/native/iis/jk_isapi_plugin.c Mon Jan 12 07:59:32 2009 @@ -209,7 +209,7 @@ " \n" "\n" "\n" -"Copyright © 1999-2008 Apache Software Foundation\n" +"Copyright © 1999-2009 Apache Software Foundation\n" "All Rights Reserved\n" "\n\n\n"; Modified: tomcat/connectors/trunk/jk/xdocs/style.xsl URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/style.xsl?rev=733823&r1=733822&r2=733823&view=diff == --- tomcat/connectors/trunk/jk/xdocs/style.xsl (original) +++ tomcat/connectors/trunk/jk/xdocs/style.xsl Mon Jan 12 07:59:32 2009 @@ -178,7 +178,7 @@ PAGE FOOTER -Copyright © 1999-2008, Apache Software Foundation +Copyright © 1999-2009, Apache Software Foundation - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r733829 - in /tomcat/connectors/trunk/jni: build.xml xdocs/style.xsl
Author: rjung Date: Mon Jan 12 08:07:51 2009 New Revision: 733829 URL: http://svn.apache.org/viewvc?rev=733829&view=rev Log: Update copyright year for tc native. Modified: tomcat/connectors/trunk/jni/build.xml tomcat/connectors/trunk/jni/xdocs/style.xsl Modified: tomcat/connectors/trunk/jni/build.xml URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jni/build.xml?rev=733829&r1=733828&r2=733829&view=diff == --- tomcat/connectors/trunk/jni/build.xml (original) +++ tomcat/connectors/trunk/jni/build.xml Mon Jan 12 08:07:51 2009 @@ -118,7 +118,7 @@ packagenames="org.apache.tomcat.*" windowtitle="${title} (Version ${version})" doctitle="${title} (Version ${version})
" -bottom="Copyright 2002-2004 The Apache Software Foundation.