svn commit: r1436222 - in /tomcat/tc6.0.x/trunk: ./ webapps/docs/setup.xml
Author: kkolinko Date: Mon Jan 21 08:22:58 2013 New Revision: 1436222 URL: http://svn.apache.org/viewvc?rev=1436222view=rev Log: CTR: docs Merged revision 1435636 from tomcat/trunk: Add link to RUNNING.txt and refer to it as the main documentation on this topic. Modified: tomcat/tc6.0.x/trunk/ (props changed) tomcat/tc6.0.x/trunk/webapps/docs/setup.xml Propchange: tomcat/tc6.0.x/trunk/ -- Merged /tomcat/trunk:r1435636 Modified: tomcat/tc6.0.x/trunk/webapps/docs/setup.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/setup.xml?rev=1436222r1=1436221r2=1436222view=diff == --- tomcat/tc6.0.x/trunk/webapps/docs/setup.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/setup.xml Mon Jan 21 08:22:58 2013 @@ -35,12 +35,10 @@ section name=Introduction p - This document introduces several ways to set up Tomcat for running - on different platforms. Please note that some advanced setup issues - are not covered here: the full distribution (ZIP file or tarball) - includes a file called - RUNNING.txt which discusses these issues. We encourage you to refer - to it if the information below does not answer some of your questions. + There are several ways to set up Tomcat for running on different + platforms. The main documentation for this is a file called + a href=RUNNING.txtRUNNING.txt/a. We encourage you to refer to that + file if the information below does not answer some of your questions. /p /section - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1436224 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kkolinko Date: Mon Jan 21 08:38:19 2013 New Revision: 1436224 URL: http://svn.apache.org/viewvc?rev=1436224view=rev Log: Add Javadoc fix to schultz's proposal Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1436224r1=1436223r2=1436224view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Mon Jan 21 08:38:19 2013 @@ -107,7 +107,8 @@ PATCHES PROPOSED TO BACKPORT: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54324 Allow APR connector to disable TLS compression when OpenSSL supports it. http://svn.apache.org/viewvc?view=revisionrevision=1434887 - (r1434882 in trunk) + http://svn.apache.org/viewvc?view=revisionrevision=1435769 - Javadoc fix + (r1434882 r1435767 in trunk) +1: schultz -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
TC looping on CPU due to Critical poller failure when using APR (7.0.35, on reproducible)
I did another run for ant test for 7.0.35 and when using APR I got the following error the first time (never saw that before): [junit] Running org.apache.jasper.compiler.TestParser ... [junit] Jan 18, 2013 4:37:56 PM org.apache.catalina.core.AprLifecycleListener init [junit] INFO: Loaded APR based Apache Tomcat Native library 1.1.24 using APR version 1.4.6. [junit] Jan 18, 2013 4:37:56 PM org.apache.catalina.core.AprLifecycleListener init [junit] INFO: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true]. [junit] Jan 18, 2013 4:37:57 PM org.apache.catalina.core.AprLifecycleListener initializeSSL [junit] INFO: OpenSSL successfully initialized (OpenSSL 1.0.1c 10 May 2012) [junit] Jan 18, 2013 4:37:57 PM org.apache.coyote.AbstractProtocol init [junit] INFO: Initializing ProtocolHandler [http-apr-127.0.0.1-auto-2] [junit] Jan 18, 2013 4:37:57 PM org.apache.catalina.core.StandardService startInternal [junit] INFO: Starting service Tomcat [junit] Jan 18, 2013 4:37:57 PM org.apache.catalina.core.StandardEngine startInternal [junit] INFO: Starting Servlet Engine: Apache Tomcat/7.0.35 [junit] Jan 18, 2013 4:37:57 PM org.apache.catalina.startup.ContextConfig getDefaultWebXmlFragment [junit] INFO: No global web.xml found [junit] Jan 18, 2013 4:37:57 PM org.apache.coyote.AbstractProtocol start [junit] INFO: Starting ProtocolHandler [http-apr-127.0.0.1-auto-2-42652] [junit] Jan 18, 2013 4:37:59 PM org.apache.coyote.AbstractProtocol pause [junit] INFO: Pausing ProtocolHandler [http-apr-127.0.0.1-auto-2-42652] [junit] Jan 18, 2013 4:37:59 PM org.apache.catalina.core.StandardService stopInternal [junit] INFO: Stopping service Tomcat [junit] Jan 18, 2013 4:37:59 PM org.apache.coyote.AbstractProtocol stop [junit] INFO: Stopping ProtocolHandler [http-apr-127.0.0.1-auto-2-42652] [junit] Jan 18, 2013 4:37:59 PM org.apache.tomcat.util.net.AprEndpoint$Poller doPoll [junit] SEVERE: Critical poller failure (restarting poller): [9] Bad file number ^^^ OS is Solaris 10, using Java 1.6.0_37. The ant and Tomcat processes are still there to investigate, Tomcat is looping on CPU in Thread 26. Stack is: - lwp# 26 / thread# 26 fe024ccc apr_pool_destroy (8a6da0, b667f830, 0, 0, 16ed48, 13040d8) + 184 fc00d700 * org/apache/tomcat/jni/Pool.destroy(J)V+1478 fc00d6ac * org/apache/tomcat/jni/Pool.destroy(J)V+0 fc005ab0 * org/apache/tomcat/util/net/AprEndpoint$Poller.destroy()V+68 (line 2347) fc005ab0 * org/apache/tomcat/util/net/AprEndpoint$Poller.doPoll(J)Z+292 (line 2688) fc005868 * org/apache/tomcat/util/net/AprEndpoint$Poller.run()V+345 (line 2629) In the java world it is: http-apr-127.0.0.1-auto-2-Poller-0 daemon prio=3 tid=0x00645400 nid=0x1a runnable [0xb667f000] java.lang.Thread.State: RUNNABLE at org.apache.tomcat.jni.Pool.destroy(Native Method) at org.apache.tomcat.util.net.AprEndpoint$Poller.destroy(AprEndpoint.java:1177) at org.apache.tomcat.util.net.AprEndpoint$Poller.doPoll(AprEndpoint.java:1362) - locked 0xe662d6a0 (a org.apache.tomcat.util.net.AprEndpoint$Poller) at org.apache.tomcat.util.net.AprEndpoint$Poller.run(AprEndpoint.java:1310) main thread is at: main prio=3 tid=0x00031400 nid=0x2 waiting for monitor entry [0xfe37e000] java.lang.Thread.State: BLOCKED (on object monitor) at java.lang.Object.wait(Native Method) - waiting on 0xe662d6a0 (a org.apache.tomcat.util.net.AprEndpoint$Poller) at java.lang.Thread.join(Thread.java:1194) - locked 0xe662d6a0 (a org.apache.tomcat.util.net.AprEndpoint$Poller) at org.apache.tomcat.util.net.AprEndpoint$Poller.destroy(AprEndpoint.java:1183) at org.apache.tomcat.util.net.AprEndpoint.stopInternal(AprEndpoint.java:685) at org.apache.tomcat.util.net.AbstractEndpoint.stop(AbstractEndpoint.java:664) at org.apache.coyote.AbstractProtocol.stop(AbstractProtocol.java:488) at org.apache.catalina.connector.Connector.stopInternal(Connector.java:1037) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232) The code is looping in allocator_free, because it tries to traverse a pointer chain that is cyclic: (gdb) print *node $5 = {next = 0x13040d8, ref = 0x678748, index = 1, free_index = 1, first_avail = 0x8a6e50 , endp = 0x8a8d88 } (gdb) print *node-next $6 = {next = 0x8a6d88, ref = 0x13040d8, index = 1, free_index = 109, first_avail = 0x1304418 \001\060D , endp = 0x13060d8 } (gdb) print *node-next-next $7 = {next = 0x13040d8, ref = 0x678748, index = 1, free_index = 1, first_avail = 0x8a6e50 , endp = 0x8a8d88 } So node-next-next == node. This is an indication for a synchronization problem in the code using the pool. The allocator is: (gdb) print *allocator $8 = {max_index = 1, max_free_index = 0,
Re: SSL compression / bug 54324
2012/12/22 Rainer Jung rainer.j...@kippdata.de: On 21.12.2012 16:37, Christopher Schultz wrote: All, https://issues.apache.org/bugzilla/show_bug.cgi?id=54324 The enhancement request (marked MAJOR) is to allow the APR connector to configure SSL_OP_NO_COMPRESSION in OpenSSL, disabling SSL compression even when it is supported by the client. This prevents CRIME attacks. My question is whether we want to disable compression by default or leave compression enabled when supported (which is the current default). Since this is security-related, my preference is to disable SSL compression /by default/ and allow users to specifically enable it if necessary. But, this represents a change in default so I figured I'd ask. Any comments? The web server in the current branch had SSL compression set to on by default until the latest release (2.4.3), if OpenSSL supported it. The next release 2.4.4 will have it disabled by default for the same reasons. Considering the current state of affairs I'm comfortable switching the defaults here. Reviewing the commit for this issue, http://svn.apache.org/viewvc?view=revisionrevision=1434887 First, my preference here would be to disable compression by default, for security reasons. Second, with the current implementation there is no way to enable compression if the default in OpenSSL for it is disabled. It is actually due to a lack of API in Tomcat-Native. In OpenSSL there are methods to set and to clear a flag [1]: (1) SSL_CTX_set_options(...) (2) SSL_CTX_clear_options(..) [1] http://www.openssl.org/docs/ssl/SSL_CTX_set_options.html In Tomcat-Native only the set method is exposed by SSLContext, but there is no API for the clear method. To disable compression we call SSLContext.setOptions(sslContext, SSL.SSL_OP_NO_COMPRESSION); Well, this matters only if OpenSSL uses no compression as the default. I see that it was considered in October 2012 [2], but I do not know what the current state is -- there were no releases since May 2012 and no such change is mentioned in the current changelog [3]. [2] Thread OpenSSL and CRIME at openssl-dev from October 2012, http://openssl.6102.n7.nabble.com/OpenSSL-and-CRIME-td36961.html [3] http://openssl.org/news/changelog.html Third, Christopher's question on the current state of JSSE support is still unanswered http://tomcat.markmail.org/thread/qzd7czphbpz3ox2c Best regards, Konstantin Kolinko - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: TC looping on CPU due to Critical poller failure when using APR (7.0.35, on reproducible)
2013/1/21 Rainer Jung rainer.j...@kippdata.de: I did another run for ant test for 7.0.35 and when using APR I got the following error the first time (never saw that before): (...) [junit] INFO: Stopping ProtocolHandler [http-apr-127.0.0.1-auto-2-42652] [junit] Jan 18, 2013 4:37:59 PM org.apache.tomcat.util.net.AprEndpoint$Poller doPoll [junit] SEVERE: Critical poller failure (restarting poller): [9] Bad file number ^^^ OS is Solaris 10, using Java 1.6.0_37. The ant and Tomcat processes are still there to investigate, Tomcat is looping on CPU in Thread 26. Stack is: (...) Well, it happens only during shutdown, so it might be that it is not so important... What is the downside here -- Tomcat hangs due to an infinite loop? If so then it is not good. I wonder why that log message says restarting poller. Does it try to start the poller when everything else shuts down? This is an indication for a synchronization problem in the code using the pool. I wonder whether some test case has higher chance of triggering this. The test case where it happened is org.apache.jasper.compiler.TestParser ? Best regards, Konstantin Kolinko - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1436239 - in /tomcat/trunk: java/org/apache/tomcat/websocket/ java/org/apache/tomcat/websocket/server/ test/org/apache/tomcat/websocket/
Author: markt Date: Mon Jan 21 09:46:18 2013 New Revision: 1436239 URL: http://svn.apache.org/viewvc?rev=1436239view=rev Log: Remove remaining reference to Servlet classes to server web socket package Added: tomcat/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java - copied, changed from r1436225, tomcat/trunk/java/org/apache/tomcat/websocket/WsFrame.java tomcat/trunk/java/org/apache/tomcat/websocket/server/WsFrameServer.java (with props) Removed: tomcat/trunk/java/org/apache/tomcat/websocket/WsFrame.java Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsProtocolHandler.java tomcat/trunk/test/org/apache/tomcat/websocket/TestWsFrame.java Copied: tomcat/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java (from r1436225, tomcat/trunk/java/org/apache/tomcat/websocket/WsFrame.java) URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java?p2=tomcat/trunk/java/org/apache/tomcat/websocket/WsFrameBase.javap1=tomcat/trunk/java/org/apache/tomcat/websocket/WsFrame.javar1=1436225r2=1436239rev=1436239view=diff == --- tomcat/trunk/java/org/apache/tomcat/websocket/WsFrame.java (original) +++ tomcat/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java Mon Jan 21 09:46:18 2013 @@ -24,7 +24,6 @@ import java.nio.charset.CharsetDecoder; import java.nio.charset.CoderResult; import java.nio.charset.CodingErrorAction; -import javax.servlet.ServletInputStream; import javax.websocket.CloseReason; import javax.websocket.CloseReason.CloseCodes; import javax.websocket.MessageHandler; @@ -37,13 +36,13 @@ import org.apache.tomcat.util.res.String * extracts the messages. WebSocket Pings received will be responded to * automatically without any action required by the application. */ -public class WsFrame { +public abstract class WsFrameBase { private static final StringManager sm = StringManager.getManager(Constants.PACKAGE_NAME); // Connection level attributes -private final ServletInputStream sis; +private final Object connectionReadLock = new Object(); private final WsSession wsSession; private final byte[] inputBuffer; @@ -79,8 +78,7 @@ public class WsFrame { private int readPos = 0; private int writePos = 0; -public WsFrame(ServletInputStream sis, WsSession wsSession) { -this.sis = sis; +public WsFrameBase(WsSession wsSession) { this.wsSession = wsSession; // TODO This needs to work for client and server side code @@ -101,11 +99,10 @@ public class WsFrame { * Called when there is data in the ServletInputStream to process. */ public void onDataAvailable() throws IOException { -synchronized (sis) { -while (sis.isReady()) { +synchronized (connectionReadLock) { +while (isDataAvailable()) { // Fill up the input buffer with as much data as we can -int read = sis.read(inputBuffer, writePos, -inputBuffer.length - writePos); +int read = fillInputBuffer(inputBuffer, writePos); if (read == 0) { return; } @@ -136,6 +133,27 @@ public class WsFrame { /** + * Allows sub-classes to control whether the read loop in + * {@link #onDataAvailable()} should continue or terminate. + * + * @return codetrue/code if the data source is ready to be read + */ +protected abstract boolean isDataAvailable(); + + +/** + * Fill as much of the input buffer as possible (i.e. to the end of the + * supplied buffer). + * + * @param inputBuffer The input buffer + * @param start The start point + * @return The number of bytes (possibly zero) added to the buffer + */ +protected abstract int fillInputBuffer(byte[] inputBuffer, int start) +throws IOException; + + +/** * @return codetrue/code if sufficient data was present to process all * of the initial header */ Added: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsFrameServer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/server/WsFrameServer.java?rev=1436239view=auto == --- tomcat/trunk/java/org/apache/tomcat/websocket/server/WsFrameServer.java (added) +++ tomcat/trunk/java/org/apache/tomcat/websocket/server/WsFrameServer.java Mon Jan 21 09:46:18 2013 @@ -0,0 +1,46 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the License); you may not use this file except
svn commit: r1436243 - /tomcat/trunk/res/META-INF/tomcat-websocket.jar/web-fragment.xml
Author: kfujino Date: Mon Jan 21 09:55:16 2013 New Revision: 1436243 URL: http://svn.apache.org/viewvc?rev=1436243view=rev Log: Add distributable/ to web-fragment.xml in tomcat-websocket.jar. Servlet Spec says: The web.xml resulting from the merge is considered distributable only if all its web fragments are marked as distributable as well. Therefore, in order to user deploy distributable web application, tomcat-websocket's web-fragment.xml should contain the distributable/. Otherwise, users are forced to set metadata-complete=false in their web.xml or add distributable/ to web-fragment.xml inside the tomcat-websocket.jar. Modified: tomcat/trunk/res/META-INF/tomcat-websocket.jar/web-fragment.xml Modified: tomcat/trunk/res/META-INF/tomcat-websocket.jar/web-fragment.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/res/META-INF/tomcat-websocket.jar/web-fragment.xml?rev=1436243r1=1436242r2=1436243view=diff == --- tomcat/trunk/res/META-INF/tomcat-websocket.jar/web-fragment.xml (original) +++ tomcat/trunk/res/META-INF/tomcat-websocket.jar/web-fragment.xml Mon Jan 21 09:55:16 2013 @@ -22,4 +22,5 @@ version=3.0 metadata-complete=true nameorg.apache.tomcat.websocket/name + distributable/ /web-fragment \ No newline at end of file - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1436249 - /tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java
Author: kfujino Date: Mon Jan 21 10:02:06 2013 New Revision: 1436249 URL: http://svn.apache.org/viewvc?rev=1436249view=rev Log: Fix incorrect increment of counterSend_EVT_SESSION_EXPIRED and counterSend_EVT_CHANGE_SESSION_ID. These values are not incremented if no members active in cluster group. Modified: tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Modified: tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java?rev=1436249r1=1436248r2=1436249view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Mon Jan 21 10:02:06 2013 @@ -527,7 +527,7 @@ public class DeltaManager extends Cluste // original sessionID String orgSessionID = session.getId(); super.changeSessionId(session); -if (notify) { +if (notify cluster.getMembers().length 0) { // changed sessionID String newSessionID = session.getId(); try { @@ -1163,11 +1163,14 @@ public class DeltaManager extends Cluste *session id */ protected void sessionExpired(String id) { -counterSend_EVT_SESSION_EXPIRED++ ; -SessionMessage msg = new SessionMessageImpl(getName(),SessionMessage.EVT_SESSION_EXPIRED, null, id, id+ -EXPIRED-MSG); -msg.setTimestamp(System.currentTimeMillis()); -if (log.isDebugEnabled()) log.debug(sm.getString(deltaManager.createMessage.expire,getName(), id)); -send(msg); +if(cluster.getMembers().length 0 ) { +counterSend_EVT_SESSION_EXPIRED++ ; +SessionMessage msg = new SessionMessageImpl(getName(), +SessionMessage.EVT_SESSION_EXPIRED, null, id, id+ -EXPIRED-MSG); +msg.setTimestamp(System.currentTimeMillis()); +if (log.isDebugEnabled()) log.debug(sm.getString(deltaManager.createMessage.expire,getName(), id)); +send(msg); +} } /** - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1436252 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/ha/session/DeltaManager.java webapps/docs/changelog.xml
Author: kfujino Date: Mon Jan 21 10:06:33 2013 New Revision: 1436252 URL: http://svn.apache.org/viewvc?rev=1436252view=rev Log: Fix incorrect increment of counterSend_EVT_SESSION_EXPIRED and counterSend_EVT_CHANGE_SESSION_ID. These values are not incremented if no members active in cluster group. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java?rev=1436252r1=1436251r2=1436252view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Mon Jan 21 10:06:33 2013 @@ -542,7 +542,7 @@ public class DeltaManager extends Cluste // original sessionID String orgSessionID = session.getId(); super.changeSessionId(session); -if (notify) { +if (notify cluster.getMembers().length 0) { // changed sessionID String newSessionID = session.getId(); try { @@ -1176,11 +1176,14 @@ public class DeltaManager extends Cluste *session id */ protected void sessionExpired(String id) { -counterSend_EVT_SESSION_EXPIRED++ ; -SessionMessage msg = new SessionMessageImpl(getName(),SessionMessage.EVT_SESSION_EXPIRED, null, id, id+ -EXPIRED-MSG); -msg.setTimestamp(System.currentTimeMillis()); -if (log.isDebugEnabled()) log.debug(sm.getString(deltaManager.createMessage.expire,getName(), id)); -send(msg); +if(cluster.getMembers().length 0 ) { +counterSend_EVT_SESSION_EXPIRED++ ; +SessionMessage msg = new SessionMessageImpl(getName(), +SessionMessage.EVT_SESSION_EXPIRED, null, id, id+ -EXPIRED-MSG); +msg.setTimestamp(System.currentTimeMillis()); +if (log.isDebugEnabled()) log.debug(sm.getString(deltaManager.createMessage.expire,getName(), id)); +send(msg); +} } /** Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1436252r1=1436251r2=1436252view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Mon Jan 21 10:06:33 2013 @@ -85,6 +85,15 @@ /fix /changelog /subsection + subsection name=Cluster +changelog + fix +Fix incorrect increment of codecounterSend_EVT_SESSION_EXPIRED/code +and codecounterSend_EVT_CHANGE_SESSION_ID/code. These values are not +incremented if no members active in cluster group. (kfujino) + /fix +/changelog + /subsection /section section name=Tomcat 7.0.35 (markt) rtext=2013-01-16 subsection name=Catalina - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1436288 - /tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointServer.java
Author: markt Date: Mon Jan 21 11:34:33 2013 New Revision: 1436288 URL: http://svn.apache.org/viewvc?rev=1436288view=rev Log: Fix Eclipse warning Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointServer.java Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointServer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointServer.java?rev=1436288r1=1436287r2=1436288view=diff == --- tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointServer.java (original) +++ tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointServer.java Mon Jan 21 11:34:33 2013 @@ -28,9 +28,9 @@ import org.apache.tomcat.websocket.WsRem import org.apache.tomcat.websocket.WsSession; /** - * This is the server side {@link RemoteEndpoint} implementation - i.e. what the - * server uses to send data to the client. Communication is over a - * {@link ServletOutputStream}. + * This is the server side {@link javax.websocket.RemoteEndpoint} implementation + * - i.e. what the server uses to send data to the client. Communication is over + * a {@link ServletOutputStream}. */ public class WsRemoteEndpointServer extends WsRemoteEndpointBase { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: TC looping on CPU due to Critical poller failure when using APR (7.0.35, on reproducible)
On 21.01.2013 10:41, Konstantin Kolinko wrote: 2013/1/21 Rainer Jung rainer.j...@kippdata.de: I did another run for ant test for 7.0.35 and when using APR I got the following error the first time (never saw that before): (...) [junit] INFO: Stopping ProtocolHandler [http-apr-127.0.0.1-auto-2-42652] [junit] Jan 18, 2013 4:37:59 PM org.apache.tomcat.util.net.AprEndpoint$Poller doPoll [junit] SEVERE: Critical poller failure (restarting poller): [9] Bad file number ^^^ OS is Solaris 10, using Java 1.6.0_37. The ant and Tomcat processes are still there to investigate, Tomcat is looping on CPU in Thread 26. Stack is: (...) Well, it happens only during shutdown, so it might be that it is not so important... It looks like the shutdown is part of the reason. See below. What is the downside here -- Tomcat hangs due to an infinite loop? If so then it is not good. Yes, it hangs in an infinite loop. I wonder why that log message says restarting poller. Does it try to start the poller when everything else shuts down? The code following the failure first calls destroy(), then init(). This is an indication for a synchronization problem in the code using the pool. I'd speculate: - the shutdown code somehow triggered the error message. - then the shutdown code and the code running after the error both enter destroy for the Poller (can be seen from the stack dump). It seems method Poller.destroy() is not thread safe, because it calls destroy for the pool without locking. Only the call coming from the error path has a synchronized, not the call coming from the shutdown path. That could corrupt the allocator in the pool and lead to the infinite looping. I wonder whether some test case has higher chance of triggering this. The test case where it happened is org.apache.jasper.compiler.TestParser ? Yes that was the test where it happened. Regards, Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1436296 - /tomcat/trunk/res/findbugs/filter-false-positives.xml
Author: markt Date: Mon Jan 21 12:10:37 2013 New Revision: 1436296 URL: http://svn.apache.org/viewvc?rev=1436296view=rev Log: Turn on some more tests, disable the resulting false positives Modified: tomcat/trunk/res/findbugs/filter-false-positives.xml Modified: tomcat/trunk/res/findbugs/filter-false-positives.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/res/findbugs/filter-false-positives.xml?rev=1436296r1=1436295r2=1436296view=diff == --- tomcat/trunk/res/findbugs/filter-false-positives.xml (original) +++ tomcat/trunk/res/findbugs/filter-false-positives.xml Mon Jan 21 12:10:37 2013 @@ -101,6 +101,16 @@ Bug code=IS / /Match Match +!-- Non-constant strings are configuration settings rather than client + supplied -- +Class name=org.apache.catalina.session.JDBCStore / +Or + Method name=load / + Method name=save / +/Or +Bug code=SQL / + /Match + Match !-- We can live with the threading issue. See code comment for details. -- Class name=org.apache.catalina.session.ManagerBase / Method name=generateSessionId / @@ -174,6 +184,13 @@ Bug code=UG / /Match Match +!-- Non-constant strings are configuration settings rather than client + supplied -- +Class name=org.apache.catalina.valves.JDBCAccessLogValve / +Method name=open / +Bug code=SQL / + /Match + Match !-- Locks are always released. Non-standard pattern is required because -- !-- of lock upgrade that is used. -- Class name=org.apache.coyote.http11.upgrade.AprServletInputStream / @@ -349,6 +366,15 @@ Bug code=MF / /Match Match +!-- JSSE vs APR attribute names. More confusing to change one of them -- +Class name=org.apache.tomcat.util.net.AprEndpoint/ +Or + Method name=getSSLProtocol/ + Method name=setSSLProtocol/ +/Or +Bug code=Nm/ + /Match + Match !-- See wait() call in destroy() -- Class name=org.apache.tomcat.util.net.AprEndpoint$Poller/ Method name=run/ @@ -406,7 +432,16 @@ Bug code=Nm / /Match - !-- Generated code -- + !-- Example code -- + Match +!-- FindBugs assumes the container uses the values as is. Tomcat validates + them and escapes them as necessary to ensure they are safe. -- +Class name=CookieExample / +Method name=doGet / +Bug code=HRS / + /Match + + !-- Generated code -- Match Class name=org.apache.el.parser.ELParserTokenManager / /Match @@ -526,6 +561,12 @@ Bug code=DE / /Match Match +!-- Use of static is unavoidable -- +Class name=org.apache.tomcat.jdbc.test.TestStatementCache / +Method name=tearDown / +Bug code=ST / + /Match + Match !-- Use of statics is unavoidable in all cases -- !-- Better to use it consistently rather than only where necessary -- Class name=org.apache.tomcat.jdbc.pool.interceptor.TestInterceptor / - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[jira] [Created] (MTOMCAT-202) Cannot enable SSO for multiple contexts in embedded tomcat
AJ created MTOMCAT-202: -- Summary: Cannot enable SSO for multiple contexts in embedded tomcat Key: MTOMCAT-202 URL: https://issues.apache.org/jira/browse/MTOMCAT-202 Project: Apache Tomcat Maven Plugin Issue Type: Bug Components: tomcat7 Affects Versions: 2.0 Reporter: AJ Assignee: Olivier Lamy (*$^¨%`£) I am trying to enable SSO between two webapps being deployed in an embedded tomcat instance created using the tomcat7-maven-plugin. ### Github Repo/Zip and instructions to reproduce the problem Please take a look at the [pom.xml|https://github.com/ajorpheus/sso-embedded-tomcat/blob/master/pom.xml] and the [server.xml|https://github.com/ajorpheus/sso-embedded-tomcat/blob/master/src/main/tomcatconf/server.xml]. If you wish, you could also [clone|https://github.com/ajorpheus/sso-embedded-tomcat] the github repo or download the [zip|https://github.com/ajorpheus/sso-embedded-tomcat/archive/master.zip] (718kb). If you do so the instructions to reproduce the problem are in the [Readme|https://github.com/ajorpheus/sso-embedded-tomcat/blob/master/README.md]. ### The problem The embedded tomcat runs fine and the two webapps are deployed to the appropriate contexts as expected. However, SSO is never enabled even though the server.xml has the correct configuration. Well, I assume it is correct since the exact same server.xml works fine in a standalone Tomcat 7 instance. My tinkering has indicated that the problem is related to how the server.xml ends up in the embedded tomcat instance. Initially, I was under the wrong impression that simply having the server.xml in src/main/tomcatconf was enough since it did get copied over the embedded tomcat ( in target/tomcat/conf). But it seems, unless you refer to the server.xml in the plugin configuration like so : {code}serverXmlsrc/main/tomcatconf/server.xml/serverXml{code}, it does not get honored and the config contained does not have any affect. However, as soon as I uncomment that above, the webapps portion of the configuration is completely ignored and the webapps are never deployed. There seem to no existing [bugs|https://issues.apache.org/jira/issues/?jql=%28text%20~%20sso%20OR%20text%20~%20%22single%20sign%20on%22%20OR%20text%20~%20%22server.xml%22%20OR%20text%20~%20serverXml%29%20AND%20project%20=%20MTOMCAT%20ORDER%20BY%20resolution%20ASC] and I am out of ideas. It would be great if you could share your experience and point me to what I might be missing. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1436356 - in /tomcat/trunk/java/org/apache/tomcat/websocket: LocalStrings.properties server/LocalStrings.properties
Author: markt Date: Mon Jan 21 14:06:40 2013 New Revision: 1436356 URL: http://svn.apache.org/viewvc?rev=1436356view=rev Log: Update after package moves Modified: tomcat/trunk/java/org/apache/tomcat/websocket/LocalStrings.properties tomcat/trunk/java/org/apache/tomcat/websocket/server/LocalStrings.properties Modified: tomcat/trunk/java/org/apache/tomcat/websocket/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/LocalStrings.properties?rev=1436356r1=1436355r2=1436356view=diff == --- tomcat/trunk/java/org/apache/tomcat/websocket/LocalStrings.properties (original) +++ tomcat/trunk/java/org/apache/tomcat/websocket/LocalStrings.properties Mon Jan 21 14:06:40 2013 @@ -12,13 +12,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. -sci.newInstance.fail=Failed to create an Endpoint instance of type [{0}] -serverContainer.endpointDeploy=Endpoint class [{0}] deploying to path [{1}] in ServletContext [{2}] -serverContainer.missingEndpoint=An Endpoint instance has been request for path [{0}] but no matching Endpoint class was found -serverContainer.pojoDeploy=POJO class [{0}] deploying to path [{1}] in ServletContext [{2}] -serverContainer.servletContextMismatch=Attempted to register a POJO annotated for WebSocket at path [{0}] in the ServletContext with context path [{1}] when the WebSocket ServerContainer is allocated to the ServletContext with context path [{2}] -serverContainer.servletContextMissing=No ServletContext was specified -uriTemplate.noMatch=The input template [{0}] generated the pattern [{1}] which did not match the supplied pathInfo [{2}] + # Note the wsFrame.* messages are used as close reasons in WebSocket control # frames and therefore must be 123 bytes (not characters) or less in length. # Messages are encoded using UTF-8 where a single character may be encoded in Modified: tomcat/trunk/java/org/apache/tomcat/websocket/server/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/server/LocalStrings.properties?rev=1436356r1=1436355r2=1436356view=diff == --- tomcat/trunk/java/org/apache/tomcat/websocket/server/LocalStrings.properties (original) +++ tomcat/trunk/java/org/apache/tomcat/websocket/server/LocalStrings.properties Mon Jan 21 14:06:40 2013 @@ -18,20 +18,3 @@ serverContainer.missingEndpoint=An Endpo serverContainer.pojoDeploy=POJO class [{0}] deploying to path [{1}] in ServletContext [{2}] serverContainer.servletContextMismatch=Attempted to register a POJO annotated for WebSocket at path [{0}] in the ServletContext with context path [{1}] when the WebSocket ServerContainer is allocated to the ServletContext with context path [{2}] serverContainer.servletContextMissing=No ServletContext was specified -uriTemplate.noMatch=The input template [{0}] generated the pattern [{1}] which did not match the supplied pathInfo [{2}] -# Note the wsFrame.* messages are used as close reasons in WebSocket control -# frames and therefore must be 123 bytes (not characters) or less in length. -# Messages are encoded using UTF-8 where a single character may be encoded in -# as many as 4 bytes. -wsFrame.byteToLongFail=Too many bytes ([{0}]) were provided to be converted into a long -wsFrame.controlFragmented=A fragmented control frame was received but control frames may not be fragmented -wsFrame.controlPayloadTooBig=A control frame was sent with a payload of size [{0}] which is larger than the maximum permitted of 125 bytes -wsFrame.controlNoFin=A control frame was sent that did not have the fin bit set. Control frames are not permitted to use continuation frames. -wsFrame.invalidOpCode= A WebSocket frame was sent with an unrecognised opCode of [{0}] -wsFrame.invalidUtf8=A WebSocket text frame was received that could not be decoded to UTF-8 because it contained invalid byte sequences -wsFrame.invalidUtf8Close=A WebSocket close frame was received with a close reason that contained invalid UTF-8 byte sequences -wsFrame.noContinuation=A new message was started when a continuation frame was expected -wsFrame.notMasked=The client frame was not masked but all client frames must be masked -wsFrame.oneByteCloseCode=The client sent a close frame with a single byte payload which is not valid -wsFrame.textMessageTooBig=The decoded text message was too big for the output buffer and the endpoint does not support partial messages -wsFrame.wrongRsv=The client frame set the reserved bits to [{0}] which was not supported by this endpoint \ No newline at end of file - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For
svn commit: r1436365 - /tomcat/trunk/webapps/docs/rewrite.xml
Author: remm Date: Mon Jan 21 14:24:37 2013 New Revision: 1436365 URL: http://svn.apache.org/viewvc?rev=1436365view=rev Log: Text type Modified: tomcat/trunk/webapps/docs/rewrite.xml (props changed) Propchange: tomcat/trunk/webapps/docs/rewrite.xml -- --- svn:mime-type (original) +++ svn:mime-type Mon Jan 21 14:24:37 2013 @@ -1 +1 @@ -application/xml +text/xml - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Rewrite functionality for 8
mod_rewrite is definitvly HTTPd Swiss Knife and having it in Tomcat is definitivly a good news. This valve is for Tomcat 8 and higher or could it be used with Tomcat 7 ? Cheers 2013/1/9 Remy Maucherat r...@apache.org Hi, I ported a valve providing mod_rewrite functionality (most of it) for Tomcat 8, and committed it in the sandbox. This could be easily placed in the main repository, where it would provide an additional item in the new features department for this major release. I have a documentation page for it that could be included. The basics is that it uses a rewrite.properties that has the same contents as the configuration for mod_rewrite. The rewrite.properties is placed in the host config folder if the valve is declared in a Host, or in WEB-INF in the webapp if declared in a Context. The main differences with mod_rewrite are: - (the big one) no proxy flag - no SSL attributes - less file related flags available - allows virtual host rewriting using a host flag (it replaces the host header instead of the URL and maps again) Point 2 and 3 are probably relatively easy to fix, while obviously a proxy is a more involving endeavor. There are rewrite solutions out there already, but this one does not use complex tricks (because it can simply start over request processing instead of doing more complex request dispatching, which also impacts the Servlet state), and is mod_rewrite compatible. Comments ? Is it nice or useless ? Rémy - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Rewrite functionality for 8
On Mon, 2013-01-21 at 15:52 +0100, Henri Gomez wrote: mod_rewrite is definitvly HTTPd Swiss Knife and having it in Tomcat is definitivly a good news. This valve is for Tomcat 8 and higher or could it be used with Tomcat 7 ? It will probably not build as is but as with almost everything, it can be backported. Rémy - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 54456] New: ChunkedInputFilter returning EOF when client closes connection without sending end chunk
https://issues.apache.org/bugzilla/show_bug.cgi?id=54456 Bug ID: 54456 Summary: ChunkedInputFilter returning EOF when client closes connection without sending end chunk Product: Tomcat 7 Version: trunk Hardware: PC Status: NEW Severity: normal Priority: P2 Component: Catalina Assignee: dev@tomcat.apache.org Reporter: sudhan.mo...@gmail.com Classification: Unclassified Created attachment 29874 -- https://issues.apache.org/bugzilla/attachment.cgi?id=29874action=edit Patch to fix the bug In my case client is processing user's InputStream and then sending data in chunks to server. At server end I read till EOF. Client can be simple Java program or a web application. I am facing issue when client gets error on user's InputStream and closes connection with server. In that case ChunkedInputFilter is returning -1. I have added logs and confirmed that endChunk is false. Issue was fixed after I added following just before return result; if (result == -1 !endChunk) throw new EOFException(Unexpected end of stream while reading chunk body); I think ChunkedInputFilter should return -1 only when it gets endChunk. Also, from client end I am always sending complete chunk. So, in ChunkedInputFilter I should get EOF from socket stream while reading next chunk header (which is handled properly in ChunkedInputFilter) but that is not happening. I have attached patch. Patch was generated against tomcat/tc7.0.x/trunk -- 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
[GUMP@vmgump]: Project tomcat-trunk-validate (in module tomcat-trunk) failed
To whom it may engage... This is an automated request, but not an unsolicited one. For more information please visit http://gump.apache.org/nagged.html, and/or contact the folk at gene...@gump.apache.org. Project tomcat-trunk-validate has an issue affecting its community integration. This issue affects 1 projects. The current state of this project is 'Failed', with reason 'Build Failed'. For reference only, the following projects are affected by this: - tomcat-trunk-validate : Tomcat 8.x, a web server implementing Java Servlet 3.1, ... Full details are available at: http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate/index.html That said, some information snippets are provided here. The following annotations (debug/informational/warning/error messages) were provided: -DEBUG- Dependency on checkstyle exists, no need to add for property checkstyle.jar. -INFO- Failed with reason build failed The following work was performed: http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate/gump_work/build_tomcat-trunk_tomcat-trunk-validate.html Work Name: build_tomcat-trunk_tomcat-trunk-validate (Type: Build) Work ended in a state of : Failed Elapsed: 41 secs Command Line: /usr/lib/jvm/java-7-oracle/bin/java -Djava.awt.headless=true -Dbuild.sysclasspath=only org.apache.tools.ant.Main -Dgump.merge=/srv/gump/public/gump/work/merge.xml -Dcheckstyle.jar=/srv/gump/public/workspace/checkstyle/target/checkstyle-5.7-SNAPSHOT.jar -Dexecute.validate=true validate [Working Directory: /srv/gump/public/workspace/tomcat-trunk] CLASSPATH: /usr/lib/jvm/java-7-oracle/lib/tools.jar:/srv/gump/public/workspace/ant/dist/lib/ant.jar:/srv/gump/public/workspace/ant/dist/lib/ant-launcher.jar:/srv/gump/public/workspace/ant/dist/lib/ant-jmf.jar:/srv/gump/public/workspace/ant/dist/lib/ant-junit.jar:/srv/gump/public/workspace/ant/dist/lib/ant-swing.jar:/srv/gump/public/workspace/ant/dist/lib/ant-apache-resolver.jar:/srv/gump/public/workspace/ant/dist/lib/ant-apache-xalan2.jar:/srv/gump/public/workspace/xml-commons/java/build/resolver.jar:/srv/gump/public/workspace/checkstyle/target/checkstyle-5.7-SNAPSHOT.jar:/srv/gump/public/workspace/apache-commons/beanutils/dist/commons-beanutils-21012013.jar:/srv/gump/public/workspace/apache-commons/cli/target/commons-cli-1.3-SNAPSHOT.jar:/srv/gump/public/workspace/apache-commons/exec/target/commons-exec-1.1.1-SNAPSHOT.jar:/srv/gump/public/workspace/apache-commons/validator/dist/commons-validator-21012013.jar:/srv/gump/public/workspace/junit/dist/junit-21012013.jar:/srv/gump/ public/workspace/junit/dist/junit-dep-21012013.jar:/srv/gump/public/workspace/google-guava/guava/target/guava-14.0-SNAPSHOT.jar:/srv/gump/public/workspace/apache-commons/logging/target/commons-logging-21012013.jar:/srv/gump/public/workspace/apache-commons/logging/target/commons-logging-api-21012013.jar:/srv/gump/public/workspace/commons-collections-3.x/target/commons-collections-3.3-SNAPSHOT.jar:/srv/gump/packages/antlr/antlr-3.1.3.jar:/srv/gump/public/workspace/jdom/build/jdom.jar:/srv/gump/public/workspace/velocity-engine/bin/velocity-21012013.jar:/srv/gump/public/workspace/velocity-engine/bin/velocity-21012013-dep.jar:/srv/gump/packages/javamail-1.4/mail.jar:/srv/gump/packages/javamail-1.4/lib/mailapi.jar:/srv/gump/packages/jaf-1.1ea/activation.jar - [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:53: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:55: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:56: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:57: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:59: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:69: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:70:1: File contains tab characters (this is the first instance). [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:89: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:93: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:127: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:266: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:269: Line matches the illegal pattern '\s+$'. [checkstyle]
[Bug 54457] New: HTTP status codes for errors getting overwritten with status code 500
https://issues.apache.org/bugzilla/show_bug.cgi?id=54457 Bug ID: 54457 Summary: HTTP status codes for errors getting overwritten with status code 500 Product: Tomcat 7 Version: trunk Hardware: All OS: All Status: NEW Severity: normal Priority: P2 Component: Catalina Assignee: dev@tomcat.apache.org Reporter: jsch...@amazon.com Classification: Unclassified In the AbstractHttp11Processor class, errors that occur during the parsing of headers don't result in the correct HTTP status code. The status codes are always being overwritten with a status of 500. For example when errors occurs during the processing of HTTP headers, it is caught in the following block of code. This code sets the HTTP status to 400 and sets the 'error' boolean to true. 963 } catch (Throwable t) { 964 ExceptionUtils.handleThrowable(t); 965 if (getLog().isDebugEnabled()) { 966 getLog().debug( 967 sm.getString(http11processor.header.parse), t); 968 } 969 // 400 - Bad Request 970 response.setStatus(400); 971 adapter.log(request, response, 0); 972 error = true; 973 } Later on in the same method, if error is true it sets the HTTP status to 500 which clobbers the HTTP status of 400 from above. 1053 // If there was an error, make sure the request is counted as 1054 // and error, and update the statistics counter 1055 if (error) { 1056 response.setStatus(500); 1057 } The same problem occurs for HTTP status codes set on the following lines: 937 response.setStatus(503); 970 response.setStatus(400); 987 response.setStatus(400); The following patch seems to fix the problem. Basically if an error has occurred but the HTTP status code is still 'OK', then set the status to 500. --- java/org/apache/coyote/http11/AbstractHttp11Processor.java 2012-07-30 00:00:00.0 +++ java/org/apache/coyote/http11/AbstractHttp11Processor.java 2012-07-30 00:00:00.0 @@ -1050,7 +1058,9 @@ // If there was an error, make sure the request is counted as // and error, and update the statistics counter -if (error) { +// Don't update change the response status for an error +// if one has already been set +if (error response.getStatus() == 200) { response.setStatus(500); } request.updateCounters(); -- 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: r1436593 - in /tomcat/trunk/java/org/apache/catalina/valves/rewrite: Resolver.java ResolverImpl.java RewriteCond.java RewriteMap.java RewriteRule.java RewriteValve.java Substitution.java m
Author: markt Date: Mon Jan 21 20:28:28 2013 New Revision: 1436593 URL: http://svn.apache.org/viewvc?rev=1436593view=rev Log: Fix some immediate Eclipse/Checkstyle issues - add missing license header - remove stray author tag - remove trailing whitespace - add @Override - Java 7 operator Still a few to investigate including the deprecation as I removed the class level suppression to look at the individual issues more closely Modified: tomcat/trunk/java/org/apache/catalina/valves/rewrite/Resolver.java tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteCond.java tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteMap.java tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteRule.java tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteValve.java tomcat/trunk/java/org/apache/catalina/valves/rewrite/Substitution.java tomcat/trunk/java/org/apache/catalina/valves/rewrite/mbeans-descriptors.xml Modified: tomcat/trunk/java/org/apache/catalina/valves/rewrite/Resolver.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/rewrite/Resolver.java?rev=1436593r1=1436592r2=1436593view=diff == --- tomcat/trunk/java/org/apache/catalina/valves/rewrite/Resolver.java (original) +++ tomcat/trunk/java/org/apache/catalina/valves/rewrite/Resolver.java Mon Jan 21 20:28:28 2013 @@ -5,9 +5,9 @@ * The ASF licenses this file to You under the Apache License, Version 2.0 * (the License); you may not use this file except in compliance with * the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an AS IS BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -18,21 +18,19 @@ package org.apache.catalina.valves.rewrite; /** - * Resolver abstract class. - * @author Remy Maucherat + * Resolver abstract class. */ public abstract class Resolver { public abstract String resolve(String key); - + public String resolveEnv(String key) { return System.getProperty(key); } - + public abstract String resolveSsl(String key); - + public abstract String resolveHttp(String key); public abstract boolean resolveResource(int type, String name); - } Modified: tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java?rev=1436593r1=1436592r2=1436593view=diff == --- tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java (original) +++ tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java Mon Jan 21 20:28:28 2013 @@ -5,16 +5,15 @@ * The ASF licenses this file to You under the Apache License, Version 2.0 * (the License); you may not use this file except in compliance with * the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an AS IS BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ - package org.apache.catalina.valves.rewrite; import java.util.Calendar; @@ -25,21 +24,21 @@ import org.apache.catalina.connector.Req import org.apache.tomcat.util.http.FastHttpDateFormat; -@SuppressWarnings(deprecation) public class ResolverImpl extends Resolver { protected Request request = null; - + public ResolverImpl(Request request) { this.request = request; } - + /** * The following are not implemented: * - SERVER_ADMIN * - API_VERSION * - IS_SUBREQ */ +@Override public String resolve(String key) { if (key.equals(HTTP_USER_AGENT)) { return request.getHeader(user-agent); @@ -98,7 +97,7 @@ public class ResolverImpl extends Resolv } else if (key.equals(SERVER_SOFTWARE)) { return tomcat; } else if (key.equals(THE_REQUEST)) { -return request.getMethod() + + request.getRequestURI() +return request.getMethod() + + request.getRequestURI() + + request.getProtocol(); } else if (key.equals(REQUEST_URI)) { return request.getRequestURI(); @@ -126,20 +125,24 @@ public class ResolverImpl extends Resolv return null; } +@Override public String resolveEnv(String key) {
svn commit: r1436595 - /tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java
Author: markt Date: Mon Jan 21 20:30:13 2013 New Revision: 1436595 URL: http://svn.apache.org/viewvc?rev=1436595view=rev Log: Avoid deprecation warnings Modified: tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java Modified: tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java?rev=1436595r1=1436594r2=1436595view=diff == --- tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java (original) +++ tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java Mon Jan 21 20:30:13 2013 @@ -71,7 +71,7 @@ public class ResolverImpl extends Resolv } else if (key.equals(REQUEST_METHOD)) { return request.getMethod(); } else if (key.equals(SCRIPT_FILENAME)) { -return request.getRealPath(request.getServletPath()); +return request.getServletContext().getRealPath(request.getServletPath()); } else if (key.equals(REQUEST_PATH)) { return request.getRequestPathMB().toString(); } else if (key.equals(CONTEXT_PATH)) { @@ -85,7 +85,7 @@ public class ResolverImpl extends Resolv } else if (key.equals(AUTH_TYPE)) { return request.getAuthType(); } else if (key.equals(DOCUMENT_ROOT)) { -return request.getRealPath(/); +return request.getServletContext().getRealPath(/); } else if (key.equals(SERVER_NAME)) { return request.getLocalName(); } else if (key.equals(SERVER_ADDR)) { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1436597 - /tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java
Author: markt Date: Mon Jan 21 20:32:53 2013 New Revision: 1436597 URL: http://svn.apache.org/viewvc?rev=1436597view=rev Log: Refactor to avoid potential null warning Modified: tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java Modified: tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java?rev=1436597r1=1436596r2=1436597view=diff == --- tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java (original) +++ tomcat/trunk/java/org/apache/catalina/valves/rewrite/ResolverImpl.java Mon Jan 21 20:32:53 2013 @@ -50,9 +50,12 @@ public class ResolverImpl extends Resolv return request.getHeader(forwarded); } else if (key.equals(HTTP_HOST)) { String host = request.getHeader(host); -int index = (host != null) ? host.indexOf(':') : -1; -if (index != -1) -host = host.substring(0, index); +if (host != null) { +int index = host.indexOf(':'); +if (index != -1) { +host = host.substring(0, index); +} +} return host; } else if (key.equals(HTTP_PROXY_CONNECTION)) { return request.getHeader(proxy-connection); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1436598 - /tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteValve.java
Author: markt Date: Mon Jan 21 20:33:44 2013 New Revision: 1436598 URL: http://svn.apache.org/viewvc?rev=1436598view=rev Log: is can't be null here due to check a few lines above Modified: tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteValve.java Modified: tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteValve.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteValve.java?rev=1436598r1=1436597r2=1436598view=diff == --- tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteValve.java (original) +++ tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteValve.java Mon Jan 21 20:33:44 2013 @@ -180,9 +180,7 @@ public class RewriteValve extends ValveB container.getLogger().error(Error closing configuration, e); } try { -if (is != null) { -is.close(); -} +is.close(); } catch (IOException e) { container.getLogger().error(Error closing configuration, e); } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 54458] New: DataSourceRealm should provide more info on SQLException
https://issues.apache.org/bugzilla/show_bug.cgi?id=54458 Bug ID: 54458 Summary: DataSourceRealm should provide more info on SQLException Product: Tomcat 7 Version: 7.0.34 Hardware: PC OS: Mac OS X 10.4 Status: NEW Severity: normal Priority: P2 Component: Catalina Assignee: dev@tomcat.apache.org Reporter: mkb...@gmail.com Classification: Unclassified The getPassword() method of the DataSourceRealm does not log enough information when it encounters an SQL error. The catch block is: } catch(SQLException e) { containerLog.error( sm.getString(dataSourceRealm.getPassword.exception, username)); } finally { it would be really helpful to have some details of what the SQLException is. I am getting this intermittently, and have resorted to subclassing getPassword() in an attempt to figure out what is going wrong. -- 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
[jira] [Commented] (MTOMCAT-190) Client Certificate settings for connector
[ https://issues.apache.org/jira/browse/MTOMCAT-190?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13559228#comment-13559228 ] Marcel Silberhorn commented on MTOMCAT-190: --- Dear [~gmazza] It's not production where this option is needed. For sure, mvn-tomcat is for development and integration-tests only! But please think about those who are writing security / authentication / authorization related things like filter. While jetty doesn't like filter chains (it's not possible to determine the right chain ordering for jetty) nor tomcat7:run will ask for x509 based authentication I have to manually deploy the webapp to a single tomcat instance which I have to setup (each developer has to know how too) or (more practically) have to use Eclipse WTP Tomcat Plugin instead of mvn-tomcat but have to download and install eclipse and did have this WTP thing many developers are getting into trouble with ;/ . So nevertheless it's used seldom: where is the problem, for me it's just one parameter in the servers connector settings. I currently doesn't understand the barriers. The certificates for the container are typically used from the users local keychain ~/.keystore Please let me know if I can do anything ... P.S: found this site: http://tomcat.apache.org/maven-plugin-2.0/executable-war-jar.html with the option list at the end: {noformat} -clientAuthenable client authentication for https {noformat} will this fix my problem? Client Certificate settings for connector - Key: MTOMCAT-190 URL: https://issues.apache.org/jira/browse/MTOMCAT-190 Project: Apache Tomcat Maven Plugin Issue Type: Improvement Components: tomcat7 Affects Versions: 2.0 Reporter: Marcel Silberhorn Assignee: Olivier Lamy (*$^¨%`£) Labels: connector Fix For: 2.1 currently there seems to be no way to configure SSL connector settings like clientAuth what make it useless for certain certificate login tests and I always need a second, manually installed instance of Tomcat for this but I'm not able to just run {{tomcat7:run}} So it would be great so see some clientCert options in an upcoming version! -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn propchange: r1436243 - svn:log
Author: kfujino Revision: 1436243 Modified property: svn:log Modified: svn:log at Tue Jan 22 01:39:54 2013 -- --- svn:log (original) +++ svn:log Tue Jan 22 01:39:54 2013 @@ -5,4 +5,4 @@ The web.xml resulting from the merge is only if all its web fragments are marked as distributable as well. Therefore, in order to user deploy distributable web application, tomcat-websocket's web-fragment.xml should contain the distributable/. -Otherwise, users are forced to set metadata-complete=false in their web.xml or add distributable/ to web-fragment.xml inside the tomcat-websocket.jar. +Otherwise, users are forced to set metadata-complete=true in their web.xml or add distributable/ to web-fragment.xml inside the tomcat-websocket.jar. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 54461] New: JSP compiler init parameter documented as compiler, actually compilerClassName
https://issues.apache.org/bugzilla/show_bug.cgi?id=54461 Bug ID: 54461 Summary: JSP compiler init parameter documented as compiler, actually compilerClassName Product: Tomcat 7 Version: 7.0.35 Hardware: All OS: All Status: NEW Severity: major Priority: P2 Component: Documentation Assignee: dev@tomcat.apache.org Reporter: nicho...@nicholaswilliams.net Classification: Unclassified This bug exists in Tomcat 6, Tomcat 7 and (presumably) Tomcat 8 (trunk). See the documentation for JSP compilation: http://tomcat.apache.org/tomcat-6.0-doc/jasper-howto.html http://tomcat.apache.org/tomcat-7.0-doc/jasper-howto.html There's a configuration option listed in this documentation: compiler - Which compiler Ant should use to compile JSP pages. See the Ant documentation for more information. If the value is not set, then the default Eclipse JDT Java compiler will be used instead of using Ant. No default value. This does not exist. Creating an init-param with this value has no effect. The correct init-param is compilerClassName, not compiler. Related, this option is very poorly documented. There is no indication about what this value should be. Tried com.sun.tools.javac.Main and added tools.jar to the classpath, but got a class cast exception. It would be nice if this explained what the proper alternative values are. -- 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
[jira] [Created] (MTOMCAT-203) org.apache.jasper.JasperException tags not found in classes/META-INF/*.tld
yuanhuiwu created MTOMCAT-203: - Summary: org.apache.jasper.JasperException tags not found in classes/META-INF/*.tld Key: MTOMCAT-203 URL: https://issues.apache.org/jira/browse/MTOMCAT-203 Project: Apache Tomcat Maven Plugin Issue Type: Bug Components: tomcat6 Affects Versions: 2.0-beta-1 Reporter: yuanhuiwu Assignee: Olivier Lamy (*$^¨%`£) I write a jsp tag,defined in src\main\resources\META-INF\ssi-tag.tld,when I run tomcat6:run,jsp show this error: org.apache.jasper.JasperException: /login.jsp(2,40) File /ssi-tags not found %@ taglib uri=/ssi-tags prefix=ssi % but it works well when I run the war at Tomcat Server -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[jira] [Updated] (MTOMCAT-203) org.apache.jasper.JasperException tags not found in classes/META-INF/*.tld
[ https://issues.apache.org/jira/browse/MTOMCAT-203?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] yuanhuiwu updated MTOMCAT-203: -- Affects Version/s: 2.0 org.apache.jasper.JasperException tags not found in classes/META-INF/*.tld --- Key: MTOMCAT-203 URL: https://issues.apache.org/jira/browse/MTOMCAT-203 Project: Apache Tomcat Maven Plugin Issue Type: Bug Components: tomcat6 Affects Versions: 2.0-beta-1, 2.0 Reporter: yuanhuiwu Assignee: Olivier Lamy (*$^¨%`£) I write a jsp tag,defined in src\main\resources\META-INF\ssi-tag.tld,when I run tomcat6:run,jsp show this error: org.apache.jasper.JasperException: /login.jsp(2,40) File /ssi-tags not found %@ taglib uri=/ssi-tags prefix=ssi % but it works well when I run the war at Tomcat Server -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[jira] [Updated] (MTOMCAT-203) org.apache.jasper.JasperException tags not found in classes/META-INF/*.tld
[ https://issues.apache.org/jira/browse/MTOMCAT-203?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] yuanhuiwu updated MTOMCAT-203: -- Affects Version/s: (was: 2.0-beta-1) org.apache.jasper.JasperException tags not found in classes/META-INF/*.tld --- Key: MTOMCAT-203 URL: https://issues.apache.org/jira/browse/MTOMCAT-203 Project: Apache Tomcat Maven Plugin Issue Type: Bug Components: tomcat6 Affects Versions: 2.0 Reporter: yuanhuiwu Assignee: Olivier Lamy (*$^¨%`£) I write a jsp tag,defined in src\main\resources\META-INF\ssi-tag.tld,when I run tomcat6:run,jsp show this error: org.apache.jasper.JasperException: /login.jsp(2,40) File /ssi-tags not found %@ taglib uri=/ssi-tags prefix=ssi % but it works well when I run the war at Tomcat Server -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Compiling JSPs with JDK 1.8 in Tomcat 8
I'm running an experimental environment with JDK 1.8 and Tomcat 8.0 (trunk). I understand, of course, that there are some inherent instabilities associated with doing this, but something just doesn't seem quite right. I want JSPs to compile with Java 8, not Java 7. I understand that the Eclipse compiler obviously doesn't support that yet (and, if history is any indication, it won't until sometime in late 2014), so I wanted to configure JSPs to compile with something other than the JDT compiler. Using the documentation at http://tomcat.apache.org/tomcat-7.0-doc/jasper-howto.html, I added the following init parameters to the JSP servlet in conf\web.xml: init-param param-namecompiler/param-name param-valuejavac/param-name /init-param init-param param-namecompilerSourceVM/param-name param-value1.8/param-name /init-param init-param param-namecompilerTargetVM/param-name param-value1.8/param-name /init-param However, I was getting JDT warnings about unrecognized source value 1.8, meaning the JDT compiler was still being used. After lots of Googling, I discovered that the documentation was wrong about the compiler init parameter. The correct parameter name is compilerClassName, not compiler. (Subsequently, I filed https://issues.apache.org/bugzilla/show_bug.cgi?id=54461 about this documentation bug.) So I changed it to compilerClassName and then started getting errors about not being able to find a compiler (at least I knew I had the parameter name right now, because it stopped using the Eclipse compiler). I changed the value to com.sun.tools.javac.Main (another thing I found while Googling) and still got the no-compiler error. I added tools.jar to the classpath (even though JAVA_HOME was set to a JDK home, not a JRE home, which I thought would take care of that), and then I got the following error: org.apache.jasper.JasperException: java.lang.ClassCastException: com.sun.tools.javac.Main cannot be cast to org.apache.jasper.compiler.Compiler. I felt like I was now making progress, so I went to the javadocs and found the two classes that implement org.apache.jasper.compiler.Compiler: org.apache.jasper.compiler.AntCompiler and org.apache.jasper.compiler.JDTCompiler. I set the value of compilerClassName to org.apache.jasper.compiler.AntCompiler and added the Ant JARs to the classpath, and now I'm getting a new error: org.apache.jasper.JasperException: Unable to compile class for JSP Caused by java.lang.ClassNotFoundException: javac1.8 I'm at a loss here. Am I completely missing something? Or is it not possible to set Tomcat 8.0 to compile JSPs with Java 8? Thanks, Nick This e-mail may contain privileged or confidential information. If you are not the intended recipient: (1) you may not disclose, use, distribute, copy or rely upon this message or attachment(s); and (2) please notify the sender by reply e-mail, and then delete this message and its attachment(s). Underwriters Laboratories Inc. and its affiliates disclaim all liability for any errors, omissions, corruption or virus in this message or any attachments.
RE: Tomcat 8 question
Thanks, Mark. Also, thanks Violeta for pointing out Mark's slides where he mentions JSP 2.3. Nick On 20/01/2013 07:14, Violeta Georgieva wrote: Hi, 2013/1/20 Williams, Nick So, will Tomcat 8 be targeted for EE 7, or will it wait until JSP-next comes out, even if that takes a good deal longer than EE 7? Also, I know that a lot depends on the timeline of EE 7, but now that that date is approaching, do we have a GENERAL timeframe for Tomcat 8? Are we talking late 2013? Or could it take until 2014? Check Mark's presentation [1] There will be a maintenance release of the JSP specification. The only potential change I am aware of is limiting the HTTP methods that JSPs respond to to HEAD, GET and POST. How long the first Tomcat 8 release (that fully implements the specs) takes depends on how much time folks spend on implementing them. I'll have an update on Tomcat 8 progress at ApacheCon NA next month and the slides will be available from the usual place once I have written them. As always, help is appreciated. Mark This e-mail may contain privileged or confidential information. If you are not the intended recipient: (1) you may not disclose, use, distribute, copy or rely upon this message or attachment(s); and (2) please notify the sender by reply e-mail, and then delete this message and its attachment(s). Underwriters Laboratories Inc. and its affiliates disclaim all liability for any errors, omissions, corruption or virus in this message or any attachments. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[GUMP@vmgump]: Project tomcat-trunk-validate (in module tomcat-trunk) failed
To whom it may engage... This is an automated request, but not an unsolicited one. For more information please visit http://gump.apache.org/nagged.html, and/or contact the folk at gene...@gump.apache.org. Project tomcat-trunk-validate has an issue affecting its community integration. This issue affects 1 projects, and has been outstanding for 2 runs. The current state of this project is 'Failed', with reason 'Build Failed'. For reference only, the following projects are affected by this: - tomcat-trunk-validate : Tomcat 8.x, a web server implementing Java Servlet 3.1, ... Full details are available at: http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate/index.html That said, some information snippets are provided here. The following annotations (debug/informational/warning/error messages) were provided: -DEBUG- Dependency on checkstyle exists, no need to add for property checkstyle.jar. -INFO- Failed with reason build failed The following work was performed: http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate/gump_work/build_tomcat-trunk_tomcat-trunk-validate.html Work Name: build_tomcat-trunk_tomcat-trunk-validate (Type: Build) Work ended in a state of : Failed Elapsed: 44 secs Command Line: /usr/lib/jvm/java-7-oracle/bin/java -Djava.awt.headless=true -Dbuild.sysclasspath=only org.apache.tools.ant.Main -Dgump.merge=/srv/gump/public/gump/work/merge.xml -Dcheckstyle.jar=/srv/gump/public/workspace/checkstyle/target/checkstyle-5.7-SNAPSHOT.jar -Dexecute.validate=true validate [Working Directory: /srv/gump/public/workspace/tomcat-trunk] CLASSPATH: /usr/lib/jvm/java-7-oracle/lib/tools.jar:/srv/gump/public/workspace/ant/dist/lib/ant.jar:/srv/gump/public/workspace/ant/dist/lib/ant-launcher.jar:/srv/gump/public/workspace/ant/dist/lib/ant-jmf.jar:/srv/gump/public/workspace/ant/dist/lib/ant-junit.jar:/srv/gump/public/workspace/ant/dist/lib/ant-swing.jar:/srv/gump/public/workspace/ant/dist/lib/ant-apache-resolver.jar:/srv/gump/public/workspace/ant/dist/lib/ant-apache-xalan2.jar:/srv/gump/public/workspace/xml-commons/java/build/resolver.jar:/srv/gump/public/workspace/checkstyle/target/checkstyle-5.7-SNAPSHOT.jar:/srv/gump/public/workspace/apache-commons/beanutils/dist/commons-beanutils-22012013.jar:/srv/gump/public/workspace/apache-commons/cli/target/commons-cli-1.3-SNAPSHOT.jar:/srv/gump/public/workspace/apache-commons/exec/target/commons-exec-1.1.1-SNAPSHOT.jar:/srv/gump/public/workspace/apache-commons/validator/dist/commons-validator-22012013.jar:/srv/gump/public/workspace/junit/dist/junit-22012013.jar:/srv/gump/ public/workspace/junit/dist/junit-dep-22012013.jar:/srv/gump/public/workspace/google-guava/guava/target/guava-14.0-SNAPSHOT.jar:/srv/gump/public/workspace/apache-commons/logging/target/commons-logging-22012013.jar:/srv/gump/public/workspace/apache-commons/logging/target/commons-logging-api-22012013.jar:/srv/gump/public/workspace/commons-collections-3.x/target/commons-collections-3.3-SNAPSHOT.jar:/srv/gump/packages/antlr/antlr-3.1.3.jar:/srv/gump/public/workspace/jdom/build/jdom.jar:/srv/gump/public/workspace/velocity-engine/bin/velocity-22012013.jar:/srv/gump/public/workspace/velocity-engine/bin/velocity-22012013-dep.jar:/srv/gump/packages/javamail-1.4/mail.jar:/srv/gump/packages/javamail-1.4/lib/mailapi.jar:/srv/gump/packages/jaf-1.1ea/activation.jar - [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:53: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:55: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:56: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:57: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:59: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:69: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:70:1: File contains tab characters (this is the first instance). [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:89: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:93: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:127: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:266: Line matches the illegal pattern '\s+$'. [checkstyle] /srv/gump/public/workspace/tomcat-trunk/webapps/docs/rewrite.xml:269: Line matches the illegal pattern '\s+$'. [checkstyle]