svn commit: r1415081 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/valves/ webapps/docs/ webapps/docs/config/

2012-11-29 Thread rjung
Author: rjung
Date: Thu Nov 29 08:33:47 2012
New Revision: 1415081

URL: http://svn.apache.org/viewvc?rev=1415081&view=rev
Log:
Add new ALV attribute "renameOnRotate" (Default:false).

If set to "true", the "fileDateFormat" will not be part
of the current log file. Only at the time of log rotation
the file is renamed to the final name including the
"fileDateFormat".

This mimics the behavior e.g. of Log4J and similar frameworks,
where the active file does not have the timestamp in the file
name.

Pro: current file has stable name, all files with
 timestamp in name are old.
Con: Slightly more complex impl.

Backport of r1414889 from trunk.

Modified:
tomcat/tc7.0.x/trunk/   (props changed)
tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java
tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/LocalStrings.properties
tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/mbeans-descriptors.xml
tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
tomcat/tc7.0.x/trunk/webapps/docs/config/valve.xml

Propchange: tomcat/tc7.0.x/trunk/
--
  Merged /tomcat/trunk:r1414889

Modified: 
tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java?rev=1415081&r1=1415080&r2=1415081&view=diff
==
--- tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java 
(original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java 
Thu Nov 29 08:33:47 2012
@@ -213,6 +213,12 @@ public class AccessLogValve extends Valv
  */
 protected boolean rotatable = true;
 
+/**
+ * Should we defer inclusion of the date stamp in the file
+ * name until rotate time? Default is false.
+ */
+protected boolean renameOnRotate = false;
+
 
 /**
  * Buffered logging.
@@ -725,6 +731,26 @@ public class AccessLogValve extends Valv
 
 
 /**
+ * Should we defer inclusion of the date stamp in the file
+ * name until rotate time
+ */
+public boolean isRenameOnRotate() {
+return renameOnRotate;
+}
+
+
+/**
+ * Set the value if we should defer inclusion of the date
+ * stamp in the file name until rotate time
+ *
+ * @param renameOnRotate true if defer inclusion of date stamp
+ */
+public void setRenameOnRotate(boolean renameOnRotate) {
+this.renameOnRotate = renameOnRotate;
+}
+
+
+/**
  * Is the logging buffered
  */
 public boolean isBuffered() {
@@ -974,7 +1000,7 @@ public class AccessLogValve extends Valv
 
 if (currentLogFile != null) {
 File holder = currentLogFile;
-close();
+close(false);
 try {
 holder.renameTo(new File(newFileName));
 } catch (Throwable e) {
@@ -1000,12 +1026,76 @@ public class AccessLogValve extends Valv
 /**
  * Close the currently open log file (if any)
  */
-private synchronized void close() {
+private File getLogFile(boolean useDateStamp) {
+
+// Create the directory if necessary
+File dir = new File(directory);
+if (!dir.isAbsolute()) {
+dir = new File(System.getProperty(Globals.CATALINA_BASE_PROP), 
directory);
+}
+if (!dir.mkdirs() && !dir.isDirectory()) {
+log.error(sm.getString("accessLogValve.openDirFail", dir));
+}
+
+// Calculate the current log file name
+File pathname;
+if (useDateStamp) {
+pathname = new File(dir.getAbsoluteFile(), prefix + dateStamp
++ suffix);
+} else {
+pathname = new File(dir.getAbsoluteFile(), prefix + suffix);
+}
+File parent = pathname.getParentFile();
+if (!parent.mkdirs() && !parent.isDirectory()) {
+log.error(sm.getString("accessLogValve.openDirFail", parent));
+}
+return pathname;
+}
+
+/**
+ * Move a current but rotated log file back to the unrotated
+ * one. Needed if date stamp inclusion is deferred to rotation
+ * time.
+ */
+private void restore() {
+File newLogFile = getLogFile(false);
+File rotatedLogFile = getLogFile(true);
+if (rotatedLogFile.exists() && !newLogFile.exists() &&
+!rotatedLogFile.equals(newLogFile)) {
+try {
+if (!rotatedLogFile.renameTo(newLogFile)) {
+log.error(sm.getString("accessLogValve.renameFail", 
rotatedLogFile, newLogFile));
+}
+} catch (Throwable e) {
+ExceptionUtils.handleThrowable(e);
+log.error(sm.getString("accessLogValve.renameFail", 
rotatedLogFile, newLogFile), e);
+}
+}
+}
+
+
+/**
+

[Bug 54224] New: HTTP Status of 500 returned when async request timeout is hit.

2012-11-29 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=54224

Bug ID: 54224
   Summary: HTTP Status of 500 returned when async request timeout
is hit.
   Product: Tomcat 7
   Version: 7.0.33
  Hardware: PC
OS: Windows XP
Status: NEW
  Severity: major
  Priority: P2
 Component: Catalina
  Assignee: dev@tomcat.apache.org
  Reporter: daz...@gmail.com
Classification: Unclassified

I have noted that this issue was "fixed" in 7.0.2 but appears to have be
reintroduced in 7.0.33.

Note, on the same system (and verified on a separate dev environment) running
the same code but on 7.0.29 this works fine.

I have not tested the versions in between 7.0.29 and 7.0.33.

Regards,
Darren

-- 
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



[Bug 54224] HTTP Status of 500 returned when async request timeout is hit.

2012-11-29 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=54224

Mark Thomas  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |INVALID

--- Comment #1 from Mark Thomas  ---
The 500 response is a specification requirement.

See bug 54123.

-- 
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



[Bug 54224] HTTP Status of 500 returned when async request timeout is hit.

2012-11-29 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=54224

--- Comment #2 from daz...@gmail.com ---
(In reply to comment #1)
> The 500 response is a specification requirement.
> 
> See bug 54123.

Ah, thanks for correcting my ignorance so quickly. Handling the onTimeout
correctly indeed works.

-- 
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: r1415160 - in /tomcat/trunk: java/org/apache/tomcat/websocket/WsEndpointPojo.java webapps/examples/WEB-INF/classes/websocket/echo/EchoAnnotation.java webapps/examples/websocket/echo.html

2012-11-29 Thread markt
Author: markt
Date: Thu Nov 29 13:54:24 2012
New Revision: 1415160

URL: http://svn.apache.org/viewvc?rev=1415160&view=rev
Log:
WebSocket 1.0 implementation part4 of many
Start to think about POJO handling. This is roughly what needs to be done but 
is certainly incomplete and probably in the wrong place.

Modified:
tomcat/trunk/java/org/apache/tomcat/websocket/WsEndpointPojo.java

tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/echo/EchoAnnotation.java
tomcat/trunk/webapps/examples/websocket/echo.html

Modified: tomcat/trunk/java/org/apache/tomcat/websocket/WsEndpointPojo.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/WsEndpointPojo.java?rev=1415160&r1=1415159&r2=1415160&view=diff
==
--- tomcat/trunk/java/org/apache/tomcat/websocket/WsEndpointPojo.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/websocket/WsEndpointPojo.java Thu Nov 
29 13:54:24 2012
@@ -24,6 +24,9 @@ import javax.websocket.DefaultServerConf
 import javax.websocket.Endpoint;
 import javax.websocket.EndpointConfiguration;
 import javax.websocket.Session;
+import javax.websocket.WebSocketClose;
+import javax.websocket.WebSocketError;
+import javax.websocket.WebSocketOpen;
 
 public class WsEndpointPojo extends Endpoint {
 
@@ -36,12 +39,35 @@ public class WsEndpointPojo extends Endp
 public WsEndpointPojo(Class clazzPojo, String path)
 throws InstantiationException, IllegalAccessException {
 this.pojo = clazzPojo.newInstance();
-this.config = new DefaultServerConfiguration(path);
+this.config = new DefaultServerConfiguration(path) {
 
-// TODO - Find these
-this.onOpen = null;
-this.onClose = null;
-this.onError = null;
+@Override
+public boolean checkOrigin(String originHeaderValue) {
+return true;
+}
+
+};
+
+// TODO - Don't want to have to do this on every connection
+Method open = null;
+Method close = null;
+Method error = null;
+Method[] methods = clazzPojo.getMethods();
+for (int i = 0; i < methods.length; i++) {
+if (open == null &&
+methods[i].getAnnotation(WebSocketOpen.class) != null) {
+open = methods[i];
+} else if (close == null &&
+methods[i].getAnnotation(WebSocketClose.class) != null) {
+close = methods[i];
+} else if (error == null &&
+methods[i].getAnnotation(WebSocketError.class) != null) {
+error = methods[i];
+}
+}
+this.onOpen = open;
+this.onClose = close;
+this.onError = error;
 }
 
 @Override
@@ -52,6 +78,7 @@ public class WsEndpointPojo extends Endp
 @Override
 public void onOpen(Session session) {
 if (onOpen != null) {
+
 try {
 onOpen.invoke(pojo, session);
 } catch (IllegalAccessException | IllegalArgumentException

Modified: 
tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/echo/EchoAnnotation.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/echo/EchoAnnotation.java?rev=1415160&r1=1415159&r2=1415160&view=diff
==
--- 
tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/echo/EchoAnnotation.java
 (original)
+++ 
tomcat/trunk/webapps/examples/WEB-INF/classes/websocket/echo/EchoAnnotation.java
 Thu Nov 29 13:54:24 2012
@@ -17,8 +17,13 @@
 package websocket.echo;
 
 import javax.websocket.WebSocketEndpoint;
+import javax.websocket.WebSocketOpen;
 
 @WebSocketEndpoint("/websocket/echoAnnotation")
 public class EchoAnnotation {
 
+@WebSocketOpen
+public void printOpen() {
+System.out.println("EchoAnnotation.printOpen()");
+}
 }

Modified: tomcat/trunk/webapps/examples/websocket/echo.html
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/examples/websocket/echo.html?rev=1415160&r1=1415159&r2=1415160&view=diff
==
--- tomcat/trunk/webapps/examples/websocket/echo.html (original)
+++ tomcat/trunk/webapps/examples/websocket/echo.html Thu Nov 29 13:54:24 2012
@@ -137,9 +137,12 @@
 
  messages
-
+
  new programmatic
+
+ new annotation
 
 
 



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1415177 - /tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java

2012-11-29 Thread markt
Author: markt
Date: Thu Nov 29 14:21:45 2012
New Revision: 1415177

URL: http://svn.apache.org/viewvc?rev=1415177&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54190
Improve unit tests.
Patch by Brian Burch.

Modified:

tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java

Modified: 
tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java?rev=1415177&r1=1415176&r2=1415177&view=diff
==
--- 
tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
 (original)
+++ 
tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
 Thu Nov 29 14:21:45 2012
@@ -21,6 +21,8 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import javax.servlet.http.HttpServletResponse;
+
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
@@ -48,9 +50,13 @@ import org.apache.tomcat.util.buf.ByteCh
  */
 public class TestNonLoginAndBasicAuthenticator extends TomcatBaseTest {
 
+protected static final Boolean USE_COOKIES = true;
+protected static final Boolean NO_COOKIES = !USE_COOKIES;
+
 private static final String USER = "user";
 private static final String PWD = "pwd";
 private static final String ROLE = "role";
+private static final String NICE_METHOD = "Basic";
 
 private static final String HTTP_PREFIX = "http://localhost:";;
 private static final String CONTEXT_PATH_NOLOGIN = "/nologin";
@@ -58,12 +64,39 @@ public class TestNonLoginAndBasicAuthent
 private static final String URI_PROTECTED = "/protected";
 private static final String URI_PUBLIC = "/anyoneCanAccess";
 
-private static final int SHORT_TIMEOUT_SECS = 4;
-private static final int LONG_TIMEOUT_SECS = 10;
-private static final long LONG_TIMEOUT_DELAY_MSECS =
-((LONG_TIMEOUT_SECS + 2) * 1000);
-
-private static String CLIENT_AUTH_HEADER = "authorization";
+private static final int SHORT_TIMEOUT_MINS = 1;
+private static final int LONG_TIMEOUT_MINS = 2;
+private static final int MANAGER_SCAN_DELAY_SECS = 60;
+private static final int EXTRA_DELAY_SECS = 5;
+private static final long TIMEOUT_DELAY_MSECS =
+(((SHORT_TIMEOUT_MINS * 60)
++ MANAGER_SCAN_DELAY_SECS + EXTRA_DELAY_SECS) * 1000);
+
+private static final String CLIENT_AUTH_HEADER = "authorization";
+private static final String SERVER_AUTH_HEADER = "WWW-Authenticate";
+private static final String SERVER_COOKIE_HEADER = "Set-Cookie";
+private static final String CLIENT_COOKIE_HEADER = "Cookie";
+
+private static final BasicCredentials NO_CREDENTIALS = null;
+private static final BasicCredentials GOOD_CREDENTIALS =
+new BasicCredentials(NICE_METHOD, USER, PWD);
+private static final BasicCredentials STRANGE_CREDENTIALS =
+new BasicCredentials("bAsIc", USER, PWD);
+private static final BasicCredentials BAD_CREDENTIALS =
+new BasicCredentials(NICE_METHOD, USER, "wrong");
+private static final BasicCredentials BAD_METHOD =
+new BasicCredentials("BadMethod", USER, PWD);
+private static final BasicCredentials SPACED_BASE64 =
+new BasicCredentials(NICE_METHOD + " ", USER, PWD);
+private static final BasicCredentials SPACED_USERNAME =
+new BasicCredentials(NICE_METHOD, " " + USER + " ", PWD);
+private static final BasicCredentials SPACED_PASSWORD =
+new BasicCredentials(NICE_METHOD, USER, " " + PWD + " ");
+
+private Tomcat tomcat;
+private AuthenticatorBase basicAuthenticator;
+private AuthenticatorBase nonloginAuthenticator;
+private List cookies;
 
 /*
  * Try to access an unprotected resource in a webapp that
@@ -72,7 +105,8 @@ public class TestNonLoginAndBasicAuthent
  */
 @Test
 public void testAcceptPublicNonLogin() throws Exception {
-doTestNonLogin(CONTEXT_PATH_NOLOGIN + URI_PUBLIC, false, 200);
+doTestNonLogin(CONTEXT_PATH_NOLOGIN + URI_PUBLIC,
+NO_COOKIES, HttpServletResponse.SC_OK);
 }
 
 /*
@@ -82,7 +116,8 @@ public class TestNonLoginAndBasicAuthent
  */
 @Test
 public void testRejectProtectedNonLogin() throws Exception {
-doTestNonLogin(CONTEXT_PATH_NOLOGIN + URI_PROTECTED, true, 403);
+doTestNonLogin(CONTEXT_PATH_NOLOGIN + URI_PROTECTED,
+NO_COOKIES, HttpServletResponse.SC_FORBIDDEN);
 }
 
 /*
@@ -93,164 +128,378 @@ public class TestNonLoginAndBasicAuthent
 @Test
 public void testAcceptPublicBasic() throws Exception {
 doTestBasic(USER, PWD, C

svn commit: r1415178 - /tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java

2012-11-29 Thread markt
Author: markt
Date: Thu Nov 29 14:22:18 2012
New Revision: 1415178

URL: http://svn.apache.org/viewvc?rev=1415178&view=rev
Log:
Fix ~40 Eclipse warnings

Modified:

tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java

Modified: 
tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java?rev=1415178&r1=1415177&r2=1415178&view=diff
==
--- 
tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
 (original)
+++ 
tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
 Thu Nov 29 14:22:18 2012
@@ -50,8 +50,8 @@ import org.apache.tomcat.util.buf.ByteCh
  */
 public class TestNonLoginAndBasicAuthenticator extends TomcatBaseTest {
 
-protected static final Boolean USE_COOKIES = true;
-protected static final Boolean NO_COOKIES = !USE_COOKIES;
+protected static final boolean USE_COOKIES = true;
+protected static final boolean NO_COOKIES = !USE_COOKIES;
 
 private static final String USER = "user";
 private static final String PWD = "pwd";



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1415179 - /tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java

2012-11-29 Thread markt
Author: markt
Date: Thu Nov 29 14:28:53 2012
New Revision: 1415179

URL: http://svn.apache.org/viewvc?rev=1415179&view=rev
Log:
Removed unused code

Modified:

tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java

Modified: 
tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java?rev=1415179&r1=1415178&r2=1415179&view=diff
==
--- 
tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
 (original)
+++ 
tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
 Thu Nov 29 14:28:53 2012
@@ -105,8 +105,8 @@ public class TestNonLoginAndBasicAuthent
  */
 @Test
 public void testAcceptPublicNonLogin() throws Exception {
-doTestNonLogin(CONTEXT_PATH_NOLOGIN + URI_PUBLIC,
-NO_COOKIES, HttpServletResponse.SC_OK);
+doTestNonLogin(CONTEXT_PATH_NOLOGIN + URI_PUBLIC, NO_COOKIES,
+HttpServletResponse.SC_OK);
 }
 
 /*
@@ -116,8 +116,8 @@ public class TestNonLoginAndBasicAuthent
  */
 @Test
 public void testRejectProtectedNonLogin() throws Exception {
-doTestNonLogin(CONTEXT_PATH_NOLOGIN + URI_PROTECTED,
-NO_COOKIES, HttpServletResponse.SC_FORBIDDEN);
+doTestNonLogin(CONTEXT_PATH_NOLOGIN + URI_PROTECTED, NO_COOKIES,
+HttpServletResponse.SC_FORBIDDEN);
 }
 
 /*
@@ -127,8 +127,8 @@ public class TestNonLoginAndBasicAuthent
  */
 @Test
 public void testAcceptPublicBasic() throws Exception {
-doTestBasic(USER, PWD, CONTEXT_PATH_LOGIN + URI_PUBLIC,
-NO_CREDENTIALS, NO_COOKIES, HttpServletResponse.SC_OK);
+doTestBasic(CONTEXT_PATH_LOGIN + URI_PUBLIC, NO_CREDENTIALS,
+NO_COOKIES, HttpServletResponse.SC_OK);
 }
 
 /*
@@ -139,10 +139,10 @@ public class TestNonLoginAndBasicAuthent
  */
 @Test
 public void testAcceptProtectedBasic() throws Exception {
-doTestBasic(USER, PWD, CONTEXT_PATH_LOGIN + URI_PROTECTED,
-NO_CREDENTIALS, NO_COOKIES, 
HttpServletResponse.SC_UNAUTHORIZED);
-doTestBasic(USER, PWD, CONTEXT_PATH_LOGIN + URI_PROTECTED,
-GOOD_CREDENTIALS, NO_COOKIES, HttpServletResponse.SC_OK);
+doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, NO_CREDENTIALS,
+NO_COOKIES, HttpServletResponse.SC_UNAUTHORIZED);
+doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, GOOD_CREDENTIALS,
+NO_COOKIES, HttpServletResponse.SC_OK);
 }
 
 /*
@@ -151,10 +151,10 @@ public class TestNonLoginAndBasicAuthent
  */
 @Test
 public void testAuthMethodBadCredentials() throws Exception {
-doTestBasic(USER, PWD, CONTEXT_PATH_LOGIN + URI_PROTECTED,
-NO_CREDENTIALS, NO_COOKIES, 
HttpServletResponse.SC_UNAUTHORIZED);
-doTestBasic(USER, PWD, CONTEXT_PATH_LOGIN + URI_PROTECTED,
-BAD_CREDENTIALS, NO_COOKIES, 
HttpServletResponse.SC_UNAUTHORIZED);
+doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, NO_CREDENTIALS,
+NO_COOKIES, HttpServletResponse.SC_UNAUTHORIZED);
+doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, BAD_CREDENTIALS,
+NO_COOKIES, HttpServletResponse.SC_UNAUTHORIZED);
 }
 
 /*
@@ -164,10 +164,10 @@ public class TestNonLoginAndBasicAuthent
  */
 @Test
 public void testAuthMethodCaseBasic() throws Exception {
-doTestBasic(USER, PWD, CONTEXT_PATH_LOGIN + URI_PROTECTED,
-NO_CREDENTIALS, NO_COOKIES, 
HttpServletResponse.SC_UNAUTHORIZED);
-doTestBasic(USER, PWD, CONTEXT_PATH_LOGIN + URI_PROTECTED,
-STRANGE_CREDENTIALS, NO_COOKIES, HttpServletResponse.SC_OK);
+doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, NO_CREDENTIALS,
+NO_COOKIES, HttpServletResponse.SC_UNAUTHORIZED);
+doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, STRANGE_CREDENTIALS,
+NO_COOKIES, HttpServletResponse.SC_OK);
 }
 
 /*
@@ -184,10 +184,10 @@ public class TestNonLoginAndBasicAuthent
  */
 @Test
 public void testAuthMethodBadMethod() throws Exception {
-doTestBasic(USER, PWD, CONTEXT_PATH_LOGIN + URI_PROTECTED,
-NO_CREDENTIALS, NO_COOKIES, 
HttpServletResponse.SC_UNAUTHORIZED);
-doTestBasic(USER, PWD, CONTEXT_PATH_LOGIN + URI_PROTECTED,
-BAD_METHOD, NO_COOKIES, HttpServletResponse.SC_UNAUTHORIZED);
+doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, NO_CREDENTIALS,
+NO_COOKIES, HttpServletResponse.SC_UNAUTHORIZED);
+doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, BAD_METHOD,
+NO_COOKIES, HttpServletResponse.SC_UNAUTHO

svn commit: r1415184 - in /tomcat/tc7.0.x/trunk: ./ test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java webapps/docs/changelog.xml

2012-11-29 Thread markt
Author: markt
Date: Thu Nov 29 14:35:02 2012
New Revision: 1415184

URL: http://svn.apache.org/viewvc?rev=1415184&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54190
Improve unit tests.
Patch by Brian Burch.

Modified:
tomcat/tc7.0.x/trunk/   (props changed)

tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml

Propchange: tomcat/tc7.0.x/trunk/
--
  Merged /tomcat/trunk:r1415177-1415179

Modified: 
tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java?rev=1415184&r1=1415183&r2=1415184&view=diff
==
--- 
tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
 (original)
+++ 
tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java
 Thu Nov 29 14:35:02 2012
@@ -21,6 +21,8 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import javax.servlet.http.HttpServletResponse;
+
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
@@ -48,9 +50,13 @@ import org.apache.tomcat.util.buf.ByteCh
  */
 public class TestNonLoginAndBasicAuthenticator extends TomcatBaseTest {
 
+protected static final boolean USE_COOKIES = true;
+protected static final boolean NO_COOKIES = !USE_COOKIES;
+
 private static final String USER = "user";
 private static final String PWD = "pwd";
 private static final String ROLE = "role";
+private static final String NICE_METHOD = "Basic";
 
 private static final String HTTP_PREFIX = "http://localhost:";;
 private static final String CONTEXT_PATH_NOLOGIN = "/nologin";
@@ -58,12 +64,39 @@ public class TestNonLoginAndBasicAuthent
 private static final String URI_PROTECTED = "/protected";
 private static final String URI_PUBLIC = "/anyoneCanAccess";
 
-private static final int SHORT_TIMEOUT_SECS = 4;
-private static final int LONG_TIMEOUT_SECS = 10;
-private static final long LONG_TIMEOUT_DELAY_MSECS =
-((LONG_TIMEOUT_SECS + 2) * 1000);
-
-private static String CLIENT_AUTH_HEADER = "authorization";
+private static final int SHORT_TIMEOUT_MINS = 1;
+private static final int LONG_TIMEOUT_MINS = 2;
+private static final int MANAGER_SCAN_DELAY_SECS = 60;
+private static final int EXTRA_DELAY_SECS = 5;
+private static final long TIMEOUT_DELAY_MSECS =
+(((SHORT_TIMEOUT_MINS * 60)
++ MANAGER_SCAN_DELAY_SECS + EXTRA_DELAY_SECS) * 1000);
+
+private static final String CLIENT_AUTH_HEADER = "authorization";
+private static final String SERVER_AUTH_HEADER = "WWW-Authenticate";
+private static final String SERVER_COOKIE_HEADER = "Set-Cookie";
+private static final String CLIENT_COOKIE_HEADER = "Cookie";
+
+private static final BasicCredentials NO_CREDENTIALS = null;
+private static final BasicCredentials GOOD_CREDENTIALS =
+new BasicCredentials(NICE_METHOD, USER, PWD);
+private static final BasicCredentials STRANGE_CREDENTIALS =
+new BasicCredentials("bAsIc", USER, PWD);
+private static final BasicCredentials BAD_CREDENTIALS =
+new BasicCredentials(NICE_METHOD, USER, "wrong");
+private static final BasicCredentials BAD_METHOD =
+new BasicCredentials("BadMethod", USER, PWD);
+private static final BasicCredentials SPACED_BASE64 =
+new BasicCredentials(NICE_METHOD + " ", USER, PWD);
+private static final BasicCredentials SPACED_USERNAME =
+new BasicCredentials(NICE_METHOD, " " + USER + " ", PWD);
+private static final BasicCredentials SPACED_PASSWORD =
+new BasicCredentials(NICE_METHOD, USER, " " + PWD + " ");
+
+private Tomcat tomcat;
+private AuthenticatorBase basicAuthenticator;
+private AuthenticatorBase nonloginAuthenticator;
+private List cookies;
 
 /*
  * Try to access an unprotected resource in a webapp that
@@ -72,7 +105,8 @@ public class TestNonLoginAndBasicAuthent
  */
 @Test
 public void testAcceptPublicNonLogin() throws Exception {
-doTestNonLogin(CONTEXT_PATH_NOLOGIN + URI_PUBLIC, false, 200);
+doTestNonLogin(CONTEXT_PATH_NOLOGIN + URI_PUBLIC, NO_COOKIES,
+HttpServletResponse.SC_OK);
 }
 
 /*
@@ -82,7 +116,8 @@ public class TestNonLoginAndBasicAuthent
  */
 @Test
 public void testRejectProtectedNonLogin() throws Exception {
-doTestNonLogin(CONTEXT_PATH_NOLOGIN + URI_PROTECTED, true, 403);
+doTestNonLog

[Bug 54190] TestNonLoginAndBasicAuthenticator does not test session timeout properly

2012-11-29 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=54190

Mark Thomas  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #6 from Mark Thomas  ---
Thanks. Patch applied to trunk and 7.0.x and will be included in 7.0.34
onwards.

Applying the patch generated a bunch of IDE warnings (we try to keep the code
clean of those) which were fixed by r1415178 and r1415179.

If you start looking at the TODOs, I suggest you take a look at 
org.apache.tomcat.util.http.parser.HttpParser#parseAuthorizationDigest()

I suspect a new parseAuthorizationBasic() method is the way to go as that
should handle the various whitespace issues noted.

-- 
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: r1415186 - /tomcat/trunk/java/org/apache/catalina/valves/AccessLogValve.java

2012-11-29 Thread rjung
Author: rjung
Date: Thu Nov 29 14:44:53 2012
New Revision: 1415186

URL: http://svn.apache.org/viewvc?rev=1415186&view=rev
Log:
Fix javadoc.

Modified:
tomcat/trunk/java/org/apache/catalina/valves/AccessLogValve.java

Modified: tomcat/trunk/java/org/apache/catalina/valves/AccessLogValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/AccessLogValve.java?rev=1415186&r1=1415185&r2=1415186&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/valves/AccessLogValve.java (original)
+++ tomcat/trunk/java/org/apache/catalina/valves/AccessLogValve.java Thu Nov 29 
14:44:53 2012
@@ -1018,7 +1018,12 @@ public class AccessLogValve extends Valv
 
 
 /**
- * Close the currently open log file (if any)
+ * Create a File object based on the current log file name.
+ * Directories are created as needed but the underlying file
+ * is not created or opened.
+ *
+ * @param useDateStamp include the timestamp in the file name.
+ * @return the log file object
  */
 private File getLogFile(boolean useDateStamp) {
 



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1415188 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/valves/AccessLogValve.java

2012-11-29 Thread rjung
Author: rjung
Date: Thu Nov 29 14:46:10 2012
New Revision: 1415188

URL: http://svn.apache.org/viewvc?rev=1415188&view=rev
Log:
Fix javadoc.

Backport of r1415186 from trunk.

Modified:
tomcat/tc7.0.x/trunk/   (props changed)
tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java

Propchange: tomcat/tc7.0.x/trunk/
--
  Merged /tomcat/trunk:r1415186

Modified: 
tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java?rev=1415188&r1=1415187&r2=1415188&view=diff
==
--- tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java 
(original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/valves/AccessLogValve.java 
Thu Nov 29 14:46:10 2012
@@ -1024,7 +1024,12 @@ public class AccessLogValve extends Valv
 
 
 /**
- * Close the currently open log file (if any)
+ * Create a File object based on the current log file name.
+ * Directories are created as needed but the underlying file
+ * is not created or opened.
+ *
+ * @param useDateStamp include the timestamp in the file name.
+ * @return the log file object
  */
 private File getLogFile(boolean useDateStamp) {
 



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 54217] JDBC connection pool runs out of connections when Context reload=“true” is enabled in Tomcat

2012-11-29 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=54217

--- Comment #2 from Levan  ---
(In reply to comment #1)
> You are not closing your connection pool properly. You need to specify
> closeMethod="close". Without that the pool would not know when to close
> those 10 "minIdle" connections.
> 
> The attribute is documented here:
> http://tomcat.apache.org/tomcat-7.0-doc/config/context.
> html#Resource_Definitions
> 
> 
> This is going to be close as INVALID. Just holding it open for a while as a
> chance to improve documentation: it would be better to add closeMethod to
> the examples in jndi-datasource-examples-howto.html

Thank you so much for your help!
I added the attribute closeMethod="close" to the Resource element in my 
/META-INFO/context.xml and it works!

I asked about how to handle this issue on stackoverflow.com and nobody seems to
know. So I'll post the answer to my question myself referencing this page and
your help.

Спасибо!

-- 
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



Re: [Bug 54190] TestNonLoginAndBasicAuthenticator does not test session timeout properly

2012-11-29 Thread Brian Burch

On 29/11/12 14:37, bugzi...@apache.org wrote:

https://issues.apache.org/bugzilla/show_bug.cgi?id=54190

Mark Thomas  changed:

What|Removed |Added

  Status|NEW |RESOLVED
  Resolution|--- |FIXED

--- Comment #6 from Mark Thomas  ---
Thanks. Patch applied to trunk and 7.0.x and will be included in 7.0.34
onwards.

Applying the patch generated a bunch of IDE warnings (we try to keep the code
clean of those) which were fixed by r1415178 and r1415179.


Thanks Mark.

I use netbeans, not eclipse. My change was clear of ide warnings and it 
also passed checkstyle.


When I looked quickly at your change, the "-" and "+" lines appeared to 
be identical to me, so I was puzzled.


Could you give me an example of what kind of warnings you were getting - 
I noticed that you commented on having more than 40, so just the most 
common one or two would be a help.


Curiously, you haven't mentioned this kind of problem with my previous 
patches, and all have been generated as svn diffs rather than ide diffs. 
However, I have recently upgraded both netbeans and svn on my main system.


I probably need to adjust one of my netbeans settings to conform.


If you start looking at the TODOs, I suggest you take a look at
org.apache.tomcat.util.http.parser.HttpParser#parseAuthorizationDigest()

I suspect a new parseAuthorizationBasic() method is the way to go as that
should handle the various whitespace issues noted.


Noted. Assume that I will look into it unless you hear otherwise. I 
won't open a bug against BasicAuthenticator yet.


Regards,

Brian


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: svn commit: r1414562 - /tomcat/native/branches/1.1.x/native/src/poll.c

2012-11-29 Thread Mladen Turk

On 11/28/2012 06:51 PM, jean-frederic clere wrote:

On 11/28/2012 08:28 AM, mt...@apache.org wrote:

Author: mturk
Date: Wed Nov 28 07:28:20 2012
New Revision: 1414562

URL: http://svn.apache.org/viewvc?rev=1414562&view=rev
Log:
Fix typo in --enable-maintainer-mode


The comment doesn't fit the commit ;-)



Hehe, probably its should have been
Fix typo in code which break compie *when* --enable-maintainer-mode is used at 
configure time.


Cheers
--
^TM

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [Bug 54190] TestNonLoginAndBasicAuthenticator does not test session timeout properly

2012-11-29 Thread Rainer Jung
On 29.11.2012 17:11, Brian Burch wrote:
> On 29/11/12 14:37, bugzi...@apache.org wrote:
>> https://issues.apache.org/bugzilla/show_bug.cgi?id=54190

> When I looked quickly at your change, the "-" and "+" lines appeared to
> be identical to me, so I was puzzled.
> 
> Could you give me an example of what kind of warnings you were getting -
> I noticed that you commented on having more than 40, so just the most
> common one or two would be a help.

If we are talking about r1415178, then it is Boolean -> boolean.

Regards,

Rainer


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [Bug 54190] TestNonLoginAndBasicAuthenticator does not test session timeout properly

2012-11-29 Thread Mark Thomas


Brian Burch  wrote:

>On 29/11/12 14:37, bugzi...@apache.org wrote:
>> https://issues.apache.org/bugzilla/show_bug.cgi?id=54190
>>
>> Mark Thomas  changed:
>>
>> What|Removed |Added
>>
>
>>   Status|NEW |RESOLVED
>>   Resolution|--- |FIXED
>>
>> --- Comment #6 from Mark Thomas  ---
>> Thanks. Patch applied to trunk and 7.0.x and will be included in
>7.0.34
>> onwards.
>>
>> Applying the patch generated a bunch of IDE warnings (we try to keep
>the code
>> clean of those) which were fixed by r1415178 and r1415179.
>
>Thanks Mark.
>
>I use netbeans, not eclipse. My change was clear of ide warnings and it
>
>also passed checkstyle.
>
>When I looked quickly at your change, the "-" and "+" lines appeared to
>
>be identical to me, so I was puzzled.
>
>Could you give me an example of what kind of warnings you were getting

They were all auto[un]boxing warnings. The fix was Boolean -> boolean.

The other change was removing the unused user and pwd parameters from the 
doTestBasic method.

We have a fairly strict set of warnings enabled although they aren't actually 
that far from the Eclipse defaults. In many cases fixing the warnings is purely 
cosmetic although they do catch the occasional subtle bug. One of the 
improvements for Tomcat 8 is getting the code base down to zero warnings. We 
are about 30 FindBugs warnings away from that - although there are some 
commented out Checkstyle settings I'd like to enabel that will add a few 
thousand ;)

Removing unused code is another area for improvement and there is some way to 
go on that.

Thanks again for your work on the authenticators,

Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1415330 - in /tomcat/trunk/java/org/apache/tomcat/websocket: PojoMethodMapping.java ServerContainerImpl.java WsEndpointPojo.java

2012-11-29 Thread markt
Author: markt
Date: Thu Nov 29 19:28:44 2012
New Revision: 1415330

URL: http://svn.apache.org/viewvc?rev=1415330&view=rev
Log:
WebSocket 1.0 implementation part 5 of many
Extract the POJO method mapping. Cache it and start to think about caching the 
path parameter mapping too.

Added:
tomcat/trunk/java/org/apache/tomcat/websocket/PojoMethodMapping.java
Modified:
tomcat/trunk/java/org/apache/tomcat/websocket/ServerContainerImpl.java
tomcat/trunk/java/org/apache/tomcat/websocket/WsEndpointPojo.java

Added: tomcat/trunk/java/org/apache/tomcat/websocket/PojoMethodMapping.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/PojoMethodMapping.java?rev=1415330&view=auto
==
--- tomcat/trunk/java/org/apache/tomcat/websocket/PojoMethodMapping.java (added)
+++ tomcat/trunk/java/org/apache/tomcat/websocket/PojoMethodMapping.java Thu 
Nov 29 19:28:44 2012
@@ -0,0 +1,79 @@
+/*
+ *  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 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.tomcat.websocket;
+
+import java.lang.reflect.Method;
+
+import javax.websocket.WebSocketClose;
+import javax.websocket.WebSocketError;
+import javax.websocket.WebSocketOpen;
+
+public class PojoMethodMapping {
+
+private final Method onOpen;
+private final Method onClose;
+private final Method onError;
+
+public PojoMethodMapping(Class clazzPojo, String path) {
+Method open = null;
+Method close = null;
+Method error = null;
+Method[] methods = clazzPojo.getMethods();
+for (int i = 0; i < methods.length; i++) {
+if (open == null &&
+methods[i].getAnnotation(WebSocketOpen.class) != null) {
+open = methods[i];
+} else if (close == null &&
+methods[i].getAnnotation(WebSocketClose.class) != null) {
+close = methods[i];
+} else if (error == null &&
+methods[i].getAnnotation(WebSocketError.class) != null) {
+error = methods[i];
+}
+}
+this.onOpen = open;
+this.onClose = close;
+this.onError = error;
+}
+
+public Method getOnOpen() {
+return onOpen;
+}
+
+public Object[] getOnOpenArgs(String path) {
+// TODO Auto-generated method stub
+return null;
+}
+
+public Method getOnClose() {
+return onClose;
+}
+
+public Object[] getOnCloseArgs(String path) {
+// TODO Auto-generated method stub
+return null;
+}
+
+public Method getOnError() {
+return onError;
+}
+
+public Object[] getOnErrorArgs(String path) {
+// TODO Auto-generated method stub
+return null;
+}
+}

Modified: tomcat/trunk/java/org/apache/tomcat/websocket/ServerContainerImpl.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/ServerContainerImpl.java?rev=1415330&r1=1415329&r2=1415330&view=diff
==
--- tomcat/trunk/java/org/apache/tomcat/websocket/ServerContainerImpl.java 
(original)
+++ tomcat/trunk/java/org/apache/tomcat/websocket/ServerContainerImpl.java Thu 
Nov 29 19:28:44 2012
@@ -78,6 +78,9 @@ public class ServerContainerImpl extends
 
 private Map> pojoMap = new ConcurrentHashMap<>();
 
+private Map, PojoMethodMapping> pojoMethodMap =
+new ConcurrentHashMap<>();
+
 
 private ServerContainerImpl() {
 // Hide default constructor
@@ -146,6 +149,7 @@ public class ServerContainerImpl extends
 }
 
 pojoMap.put(path.substring(0, path.length() - 2), pojo);
+pojoMethodMap.put(pojo, new PojoMethodMapping(pojo, path));
 addWsServletMapping(path);
 }
 
@@ -170,10 +174,15 @@ public class ServerContainerImpl extends
 return ep;
 }
 
+// TODO Need to cache the pojoMethodMapping too
 Class clazzPojo = pojoMap.get(servletPath);
 if (clazzPojo != null) {
-Endpoint ep = new WsEndpointPojo(clazzPojo, servletPath);
-return ep;
+PojoMethodMapping m

Re: [Bug 54190] TestNonLoginAndBasicAuthenticator does not test session timeout properly

2012-11-29 Thread Brian Burch

On 29/11/12 16:46, Rainer Jung wrote:

On 29.11.2012 17:11, Brian Burch wrote:

On 29/11/12 14:37, bugzi...@apache.org wrote:

https://issues.apache.org/bugzilla/show_bug.cgi?id=54190



When I looked quickly at your change, the "-" and "+" lines appeared to
be identical to me, so I was puzzled.

Could you give me an example of what kind of warnings you were getting -
I noticed that you commented on having more than 40, so just the most
common one or two would be a help.


If we are talking about r1415178, then it is Boolean -> boolean.


Wow! That was clumsy. Lots of recent work on wikis caused me to 
capitalise the data type without even realising. Then cut-n-paste 
propagated it. I'll see if I can tell netbeans to stop that in future 
cos I can't keep away from wikis!


I'm surprised that netbeans was happy to coerce the type back to boolean 
for the call to doTestBasic without even squeaking a little bit. I've 
learnt something valuable, so thanks for pointing it out.



Regards,

Rainer


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org




-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[jira] [Updated] (MTOMCAT-186) Closing executable JAR does not call ServletContextListener.contextDestroyed()

2012-11-29 Thread *$^¨%`£

 [ 
https://issues.apache.org/jira/browse/MTOMCAT-186?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Olivier Lamy (*$^¨%`£) updated MTOMCAT-186:
---

Fix Version/s: 2.1

> Closing executable JAR does not call ServletContextListener.contextDestroyed()
> --
>
> Key: MTOMCAT-186
> URL: https://issues.apache.org/jira/browse/MTOMCAT-186
> Project: Apache Tomcat Maven Plugin
>  Issue Type: Bug
>  Components: tomcat7
>Affects Versions: 2.0
> Environment: Java 7, maven 3.0.3
>Reporter: Tomasz Nurkiewicz
>Assignee: Olivier Lamy (*$^¨%`£)
>Priority: Minor
> Fix For: 2.1
>
> Attachments: listener.zip
>
>
> Executable JAR created by {{tomcat7-maven-plugin:exec-war-only}} does not 
> call {{ServletContextListener.contextDestroyed()}} callback method when Java 
> process is killed or when Ctrl + C is pressed. There is no way (?) to cleanly 
> shutdown web application.
> The same application (attached) deployed on standalone Tomcat works just 
> fine. Hitting Ctrl + C correctly undeploys and shuts down application.
> Build attached application and run {{java -jar target/standalone.jar}}. Ctrl 
> + C kills the process immediately. On the other hand {standalone.war}} 
> deployed to normal Tomcat under {{/webapps}} shuts down correctly and we can 
> see log statement from {{contextDestroyed()}}.

--
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



[GUMP@vmgump]: Project tomcat-trunk-validate-eoln (in module tomcat-trunk) failed

2012-11-29 Thread Bill Barker
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-eoln has an issue affecting its community 
integration.
This issue affects 1 projects,
 and has been outstanding for 8 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-eoln :  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-eoln/index.html

That said, some information snippets are provided here.

The following annotations (debug/informational/warning/error messages) were 
provided:
 -INFO- Failed with reason build failed



The following work was performed:
http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate-eoln/gump_work/build_tomcat-trunk_tomcat-trunk-validate-eoln.html
Work Name: build_tomcat-trunk_tomcat-trunk-validate-eoln (Type: Build)
Work ended in a state of : Failed
Elapsed: 16 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 validate-eoln 
[Working Directory: /srv/gump/public/workspace/tomcat-trunk]
CLASSPATH: 
/usr/lib/jvm/java-7-oracle/lib/tools.jar:/srv/gump/public/workspace/tomcat-trunk/output/classes:/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
-
Buildfile: /srv/gump/public/workspace/tomcat-trunk/build.xml

build-prepare:
[mkdir] Created dir: /srv/gump/public/workspace/tomcat-trunk/output/classes
[mkdir] Created dir: /srv/gump/public/workspace/tomcat-trunk/output/build
[mkdir] Created dir: 
/srv/gump/public/workspace/tomcat-trunk/output/build/bin
[mkdir] Created dir: 
/srv/gump/public/workspace/tomcat-trunk/output/build/conf
[mkdir] Created dir: 
/srv/gump/public/workspace/tomcat-trunk/output/build/lib
[mkdir] Created dir: 
/srv/gump/public/workspace/tomcat-trunk/output/build/logs
[mkdir] Created dir: 
/srv/gump/public/workspace/tomcat-trunk/output/build/temp
[mkdir] Created dir: 
/srv/gump/public/workspace/tomcat-trunk/output/build/webapps

compile-prepare:
 [copy] Copying 1 file to 
/srv/gump/public/workspace/tomcat-trunk/java/org/apache/catalina/startup
 [copy] Copying 1 file to 
/srv/gump/public/workspace/tomcat-trunk/webapps/docs

validate-eoln:
[javac] Compiling 1 source file to 
/srv/gump/public/workspace/tomcat-trunk/output/classes
 [checkeol] Checking line ends in 2320 file(s)
 [checkeol] Checking line ends in 85 file(s)
 [checkeol] Done line ends check in 2405 file(s), 1 error(s) found.
 [checkeol] The following files have wrong line ends: [
 [checkeol] 
/srv/gump/public/workspace/tomcat-trunk/java/org/apache/tomcat/websocket/PojoMethodMapping.java:
 uses CRLF on line 1]

BUILD FAILED
/srv/gump/public/workspace/tomcat-trunk/build.xml:549: The following files have 
wrong line ends: [
/srv/gump/public/workspace/tomcat-trunk/java/org/apache/tomcat/websocket/PojoMethodMapping.java:
 uses CRLF on line 1]

Total time: 16 seconds
-

To subscribe to this information via syndicated feeds:
- RSS: 
http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate-eoln/rss.xml
- Atom: 
http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate-eoln/atom.xml

== Gump Tracking Only ===
Produced by Apache Gump(TM) version 2.3.
Gump Run 1630112012, vmgump.apache.org:vmgump:1630112012
Gump E-mail Identifier (unique within run) #21.

--
Apache Gump
http://gump.apache.org/ [Instance: vmgump]

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[GUMP@vmgump]: Project tomcat-taglibs-standard (in module tomcat-taglibs) failed

2012-11-29 Thread Gump
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-taglibs-standard has an issue affecting its community 
integration.
This issue affects 2 projects,
 and has been outstanding for 214 runs.
The current state of this project is 'Failed', with reason 'Build Failed'.
For reference only, the following projects are affected by this:
- tomcat-taglibs-standard :  Standard Taglib
- tomcat-taglibs-standard-install :  JSP Taglibs


Full details are available at:

http://vmgump.apache.org/gump/public/tomcat-taglibs/tomcat-taglibs-standard/index.html

That said, some information snippets are provided here.

The following annotations (debug/informational/warning/error messages) were 
provided:
 -INFO- Optional dependency httpunit failed with reason build failed
 -DEBUG- (Apache Gump generated) Apache Maven Settings in: 
/srv/gump/public/workspace/tomcat-taglibs/standard/gump_mvn_settings.xml
 -INFO- Failed with reason build failed
 -DEBUG- Maven POM in: 
/srv/gump/public/workspace/tomcat-taglibs/standard/pom.xml
 -INFO- Failed to extract fallback artifacts from Gump Repository



The following work was performed:
http://vmgump.apache.org/gump/public/tomcat-taglibs/tomcat-taglibs-standard/gump_work/build_tomcat-taglibs_tomcat-taglibs-standard.html
Work Name: build_tomcat-taglibs_tomcat-taglibs-standard (Type: Build)
Work ended in a state of : Failed
Elapsed: 33 secs
Command Line: /opt/maven2/bin/mvn --batch-mode -DskipTests=true --settings 
/srv/gump/public/workspace/tomcat-taglibs/standard/gump_mvn_settings.xml 
install 
[Working Directory: /srv/gump/public/workspace/tomcat-taglibs/standard]
M2_HOME: /opt/maven2
-
[debug] execute contextualize
[INFO] [resources:testResources {execution: default-testResources}]
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory 
/srv/gump/public/workspace/tomcat-taglibs/standard/spec/src/test/resources
[INFO] Copying 3 resources
[INFO] [compiler:testCompile {execution: default-testCompile}]
[INFO] No sources to compile
[INFO] [surefire:test {execution: default-test}]
[INFO] Tests are skipped.
[INFO] [bundle:bundle {execution: default-bundle}]
[INFO] [install:install {execution: default-install}]
[INFO] Installing 
/srv/gump/public/workspace/tomcat-taglibs/standard/spec/target/taglibs-standard-spec-1.2-SNAPSHOT.jar
 to 
/srv/gump/public/workspace/mvnlocalrepo/shared/org/apache/taglibs/taglibs-standard-spec/1.2-SNAPSHOT/taglibs-standard-spec-1.2-SNAPSHOT.jar
[INFO] [bundle:install {execution: default-install}]
[INFO] Parsing 
file:/srv/gump/public/workspace/mvnlocalrepo/shared/repository.xml
[INFO] Installing 
org/apache/taglibs/taglibs-standard-spec/1.2-SNAPSHOT/taglibs-standard-spec-1.2-SNAPSHOT.jar
[INFO] Writing OBR metadata
[INFO] 
[INFO] Building JSTL Implementation
[INFO]task-segment: [install]
[INFO] 
[INFO] [remote-resources:process {execution: default}]
[INFO] snapshot org.apache.taglibs:taglibs-standard-spec:1.2-SNAPSHOT: checking 
for updates from apache.snapshots
Downloading: 
http://localhost:8192/maven2/org/easymock/easymock/3.0/easymock-3.0.jar
111K downloaded  (easymock-3.0.jar)
[debug] execute contextualize
[INFO] [resources:resources {execution: default-resources}]
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 14 resources
[INFO] Copying 3 resources
[INFO] [compiler:compile {execution: default-compile}]
[INFO] Compiling 96 source files to 
/srv/gump/public/workspace/tomcat-taglibs/standard/impl/target/classes
[INFO] -
[ERROR] COMPILATION ERROR : 
[INFO] -
[ERROR] 
/srv/gump/public/workspace/tomcat-taglibs/standard/impl/src/main/java/org/apache/taglibs/standard/tag/common/sql/DataSourceWrapper.java:[38,7]
 error: DataSourceWrapper is not abstract and does not override abstract method 
getParentLogger() in CommonDataSource
[INFO] 1 error
[INFO] -
[INFO] 
[ERROR] BUILD FAILURE
[INFO] 
[INFO] Compilation failure
/srv/gump/public/workspace/tomcat-taglibs/standard/impl/src/main/java/org/apache/taglibs/standard/tag/common/sql/DataSourceWrapper.java:[38,7]
 error: DataSourceWrapper is not abstract and does not override abstract method 
getParentLogger() in CommonDataSource

[INFO] 
[INFO] For more information, run Maven with the -e swit