[Bug 57141] JSP 2.3 & EL 3.0 Spec conflict w/Static Fields, Methods, etc.
https://issues.apache.org/bugzilla/show_bug.cgi?id=57141 --- Comment #5 from Mark Thomas --- That is not the case. Standalone EL works. The problem is that the documented behaviour of one of the JSP EL resolvers breaks an EL feature so that resolver has to include a work-around. Not ideal but not unexpected given the number of the new features (and associated syntax) added in EL 3.0. -- 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 57141] JSP 2.3 & EL 3.0 Spec conflict w/Static Fields, Methods, etc.
https://issues.apache.org/bugzilla/show_bug.cgi?id=57141 --- Comment #4 from Konstantin Kolinko --- One part of what I am saying is that it is odd that a fundamental feature of EL language (el-api.jar) depends on internal implementation of a class that belongs to JSP API (jsp-api.jar). -- 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 57142] JSP 2.3 & EL 3.0 - %page import directive & EL ImportHandler
https://issues.apache.org/bugzilla/show_bug.cgi?id=57142 Bug 57142 depends on bug 57141, which changed state. Bug 57141 Summary: JSP 2.3 & EL 3.0 Spec conflict w/Static Fields, Methods, etc. https://issues.apache.org/bugzilla/show_bug.cgi?id=57141 What|Removed |Added Status|REOPENED|RESOLVED Resolution|--- |FIXED -- 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 57141] JSP 2.3 & EL 3.0 Spec conflict w/Static Fields, Methods, etc.
https://issues.apache.org/bugzilla/show_bug.cgi?id=57141 Mark Thomas changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution|--- |FIXED --- Comment #3 from Mark Thomas --- Yes, the JSP spec as currently written means that EL imports of static fields simply can't work in EL. That was not the intention of the spec writers but an oversight in the updates that were made in the JSP 2.3 maintenance release to handle the changes required for EL 3.0 support. See https://java.net/jira/browse/GLASSFISH-20778 (linked from the SO question above) The same solution was implemented in the EL and JSP reference implementation. That approach was recommended by Kin-man Chung, the spec lead for EL 3.0 and (I believe) the maintenance lead for JSP 2.3. Given his domain knowledge and position within the various EG's, I am more than happy to follow his advice on the correct behaviour in this case. -- 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 57142] JSP 2.3 & EL 3.0 - %page import directive & EL ImportHandler
https://issues.apache.org/bugzilla/show_bug.cgi?id=57142 Bug 57142 depends on bug 57141, which changed state. Bug 57141 Summary: JSP 2.3 & EL 3.0 Spec conflict w/Static Fields, Methods, etc. https://issues.apache.org/bugzilla/show_bug.cgi?id=57141 What|Removed |Added Status|RESOLVED|REOPENED Resolution|FIXED |--- -- 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 57141] JSP 2.3 & EL 3.0 Spec conflict w/Static Fields, Methods, etc.
https://issues.apache.org/bugzilla/show_bug.cgi?id=57141 Konstantin Kolinko changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|FIXED |--- --- Comment #2 from Konstantin Kolinko --- Re: r1636063 I think it is wrong to change ScopedAttributeELResolver to implement this fix. Thus I am REOPENING this. The ScopedAttributeELResolver is defined by JSP specification (see JSP.2.9 Resolution of Variables and their Properties) and by its javadoc [1]. Those describe exactly what it does. It should not resolve imported classes - those are EL implementation responsibility, not JSP one. The EL3.0 specification says in several places that ELResolver is responsible for resolving "model objects". An imported class is not a model object. In EL3.0 specification there is chapter 1.5 Resolution of Model Objects and their Properties or Methods. [quote] 1.5.3 Evaluating objects with properties The steps for evaluating an expression with [] or . operators (property reference and method call) are described in Section 1.6, “Operators [] and .”. However, the syntax for . operator is also used to reference a static field, or to invoke a static method. Therefore if the expression with a . operator is not resolved by the ELResolvers, and if the identifier for the base object is the name of an imported class, the expression becomes a reference to a static field, or an invocation of a static method, of the imported class. [/quote] Note "Therefore if the expression with a . operator is not resolved by the ELResolvers" phrase. It is not ELResolver's responsibility to perform a resolution here. [1] http://docs.oracle.com/javaee/7/api/javax/servlet/jsp/el/ScopedAttributeELResolver.html -- 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 57172] NullPointerException in findResources of WebappClassLoader
https://issues.apache.org/bugzilla/show_bug.cgi?id=57172 Mark Thomas changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|INVALID |--- Severity|normal |enhancement --- Comment #3 from Mark Thomas --- The INVALID response was more aimed at the suggestion that the correct way to handle this would be a check for null. Whatever the root cause, that would simply hide the symptom rather than fix the problem which is never a good idea. The ISE is a much better idea although I'd change the wording since it is the state of the web application class loader rather than the application that is the primary concern. Better still, would be to include a check of that state as well just in case someone manages to trigger this via some other route. First you say this happened without the web application being stopped. Then you say it happened after a redploy (which includes a stop followed by a start). I guess you mean the problem happened after the web app was redeployed but while that redployed web application was running. That would be consistent with the reported symptoms. Yes I do consider the use of a ThreadLocal that exists outside the scope of a single web application without being cleaned up when that application stops a memory leak. The Servlet spec is (currently) silent on the use of ThreadLocals and on thread pools being shared across multiple applications. Feel free to share you views with the Servlet EG in this issue: https://java.net/jira/browse/SERVLET_SPEC-82 Personally I am in favour of a single thread pool. Partly for efficiency, partly for performance (per application thread pools would still require a common thread pool to handle a request until the correct web app was identified and then hand off the request to the correct thread pool). If you really want the isolation of per application thread pools then it is probably simpler to just deploy each application to a separate instance. There are alternative solutions to using ThreadLocals that may be appropriate depending on the circumstances. For example, the SecureRandom instances Tomcat uses to generate session IDs: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/util/SessionIdGeneratorBase.java?view=annotate I'm re-opening this as an enhancement request for a better error message in this case. -- 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 57142] JSP 2.3 & EL 3.0 - %page import directive & EL ImportHandler
https://issues.apache.org/bugzilla/show_bug.cgi?id=57142 Mark Thomas changed: What|Removed |Added Severity|normal |enhancement --- Comment #2 from Mark Thomas --- Marking this as an enahncement request. Configuration via a servlet context init-param is probably the way I'd look to implement this. Not sure whether to enable or disable by default at this point. -- 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 57172] NullPointerException in findResources of WebappClassLoader
https://issues.apache.org/bugzilla/show_bug.cgi?id=57172 --- Comment #2 from Joern Huxhorn --- How about indicating that the web application is trying to use the web application class loader after it has been stopped instead of throwing a non-descriptive NPE? The webapp in question was simply using a Java 8 forkjoin. at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) at java.util.HashMap$KeySpliterator.forEachRemaining(HashMap.java:1540) at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512) at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502) at java.util.stream.ReduceOps$ReduceTask.doLeaf(ReduceOps.java:747) at java.util.stream.ReduceOps$ReduceTask.doLeaf(ReduceOps.java:721) at java.util.stream.AbstractTask.compute(AbstractTask.java:316) at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731) at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:902) at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1689) at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1644) at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157) Are you seriously suggesting that leaving the current behavior is preferable to, say, a proper error message? Beside that: the webapp behaved like that without being stopped. This is related to undeploy magic performed by Tomcat regarding ThreadLocal and this problem shows up after RE-deploying an application without restarting Tomcat. As I mentioned in my original report: if you search for this on the web then you'll find mentions of similar problems from 2006. I can't be sure since they just refer to generic NPE's in the findResources method spread over various Tomcat versions. If you consider the usage of a ThreadLocal a memory leak in our app then, yes, we have a memory leak. I, on the other hand, would argue that it's the responsibility of the application server to shield web-applications from leaks like that by using separate worker threads for each webapp. I'm fully aware how this is supposed to work. But it isn't. I just observed this NPE in a live web application. Alright. Let's settle for a compromise. Just add if(resources == null) { throw new IllegalStateException("OMG! SNAFU! This can't happen! findResources has been called on a (probably) stopped web context! /o\\"); } This would be easier to search for than a simple NPE and would probably prove my point in the future. -- 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 57142] JSP 2.3 & EL 3.0 - %page import directive & EL ImportHandler
https://issues.apache.org/bugzilla/show_bug.cgi?id=57142 Mark Thomas changed: What|Removed |Added OS||All --- Comment #1 from Mark Thomas --- This is one of several areas that could benefit from some clarification in the JSP spec. Note the approach suggested above will add the imports to every JSP page in the application. On a per page basis you can use: <% pageContext.getELContext().getImportHandler().importStatic("java.lang.Integer.MAX_VALUE"); %> My current thinking os that this behaviour could be optional - i.e. controlled by configuration - until such time as there is some clarification in the JSP spec. -- 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 57141] JSP 2.3 & EL 3.0 Spec conflict w/Static Fields, Methods, etc.
https://issues.apache.org/bugzilla/show_bug.cgi?id=57141 Mark Thomas changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED OS||All --- Comment #1 from Mark Thomas --- Thanks for the report. This has been fixed in 8.0.x for 8.0.15 onwards. -- 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 57142] JSP 2.3 & EL 3.0 - %page import directive & EL ImportHandler
https://issues.apache.org/bugzilla/show_bug.cgi?id=57142 Bug 57142 depends on bug 57141, which changed state. Bug 57141 Summary: JSP 2.3 & EL 3.0 Spec conflict w/Static Fields, Methods, etc. https://issues.apache.org/bugzilla/show_bug.cgi?id=57141 What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED -- 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: r1636066 - in /tomcat/trunk: java/javax/servlet/jsp/el/ScopedAttributeELResolver.java test/org/apache/el/TestELInJsp.java test/webapp/bug5nnnn/bug57141.jsp
Author: markt Date: Sat Nov 1 22:07:55 2014 New Revision: 1636066 URL: http://svn.apache.org/r1636066 Log: Expand the fix in 1636063 to include imports of static fields. Modified: tomcat/trunk/java/javax/servlet/jsp/el/ScopedAttributeELResolver.java tomcat/trunk/test/org/apache/el/TestELInJsp.java tomcat/trunk/test/webapp/bug5/bug57141.jsp Modified: tomcat/trunk/java/javax/servlet/jsp/el/ScopedAttributeELResolver.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/jsp/el/ScopedAttributeELResolver.java?rev=1636066&r1=1636065&r2=1636066&view=diff == --- tomcat/trunk/java/javax/servlet/jsp/el/ScopedAttributeELResolver.java (original) +++ tomcat/trunk/java/javax/servlet/jsp/el/ScopedAttributeELResolver.java Sat Nov 1 22:07:55 2014 @@ -56,13 +56,27 @@ public class ScopedAttributeELResolver e result = page.findAttribute(key); if (result == null) { -// This might be the name of an import class +// This might be the name of an imported class ImportHandler importHandler = context.getImportHandler(); if (importHandler != null) { Class clazz = importHandler.resolveClass(key); if (clazz != null) { result = new ELClass(clazz); } +if (result == null) { +// This might be the name of an imported static field +clazz = importHandler.resolveStatic(key); +if (clazz != null) { +try { +result = clazz.getField(key).get(null); +} catch (IllegalArgumentException | IllegalAccessException | +NoSuchFieldException | SecurityException e) { +// Most (all?) of these should have been +// prevented by the checks when the import +// was defined. +} +} +} } } } Modified: tomcat/trunk/test/org/apache/el/TestELInJsp.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/el/TestELInJsp.java?rev=1636066&r1=1636065&r2=1636066&view=diff == --- tomcat/trunk/test/org/apache/el/TestELInJsp.java (original) +++ tomcat/trunk/test/org/apache/el/TestELInJsp.java Sat Nov 1 22:07:55 2014 @@ -398,6 +398,7 @@ public class TestELInJsp extends TomcatB String result = res.toString(); assertEcho(result, "00-true"); assertEcho(result, "01-false"); +assertEcho(result, "02-2147483647"); } Modified: tomcat/trunk/test/webapp/bug5/bug57141.jsp URL: http://svn.apache.org/viewvc/tomcat/trunk/test/webapp/bug5/bug57141.jsp?rev=1636066&r1=1636065&r2=1636066&view=diff == --- tomcat/trunk/test/webapp/bug5/bug57141.jsp (original) +++ tomcat/trunk/test/webapp/bug5/bug57141.jsp Sat Nov 1 22:07:55 2014 @@ -18,5 +18,9 @@ 00-${Boolean.TRUE} 01-${Boolean.FALSE} +<% + pageContext.getELContext().getImportHandler().importStatic("java.lang.Integer.MAX_VALUE"); +%> +02-${MAX_VALUE} \ 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: r1636063 - in /tomcat/trunk: java/javax/servlet/jsp/el/ScopedAttributeELResolver.java test/org/apache/el/TestELInJsp.java test/webapp/bug5nnnn/bug57141.jsp webapps/docs/changelog.xml
Author: markt Date: Sat Nov 1 21:44:22 2014 New Revision: 1636063 URL: http://svn.apache.org/r1636063 Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=57141 Enable EL in JSPs to refer to static fields of imported classes including the standard java.lang.* imports. Added: tomcat/trunk/test/webapp/bug5/bug57141.jsp (with props) Modified: tomcat/trunk/java/javax/servlet/jsp/el/ScopedAttributeELResolver.java tomcat/trunk/test/org/apache/el/TestELInJsp.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/javax/servlet/jsp/el/ScopedAttributeELResolver.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/jsp/el/ScopedAttributeELResolver.java?rev=1636063&r1=1636062&r2=1636063&view=diff == --- tomcat/trunk/java/javax/servlet/jsp/el/ScopedAttributeELResolver.java (original) +++ tomcat/trunk/java/javax/servlet/jsp/el/ScopedAttributeELResolver.java Sat Nov 1 21:44:22 2014 @@ -22,8 +22,10 @@ import java.util.Enumeration; import java.util.Iterator; import java.util.List; +import javax.el.ELClass; import javax.el.ELContext; import javax.el.ELResolver; +import javax.el.ImportHandler; import javax.servlet.jsp.JspContext; import javax.servlet.jsp.PageContext; @@ -43,17 +45,30 @@ public class ScopedAttributeELResolver e throw new NullPointerException(); } +Object result = null; + if (base == null) { context.setPropertyResolved(base, property); if (property != null) { String key = property.toString(); PageContext page = (PageContext) context .getContext(JspContext.class); -return page.findAttribute(key); +result = page.findAttribute(key); + +if (result == null) { +// This might be the name of an import class +ImportHandler importHandler = context.getImportHandler(); +if (importHandler != null) { +Class clazz = importHandler.resolveClass(key); +if (clazz != null) { +result = new ELClass(clazz); +} +} +} } } -return null; +return result; } @Override Modified: tomcat/trunk/test/org/apache/el/TestELInJsp.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/el/TestELInJsp.java?rev=1636063&r1=1636062&r2=1636063&view=diff == --- tomcat/trunk/test/org/apache/el/TestELInJsp.java (original) +++ tomcat/trunk/test/org/apache/el/TestELInJsp.java Sat Nov 1 21:44:22 2014 @@ -385,6 +385,22 @@ public class TestELInJsp extends TomcatB } +/* + * java.lang should be imported by default + */ +@Test +public void testBug57141() throws Exception { +getTomcatInstanceTestWebapp(false, true); + +ByteChunk res = getUrl("http://localhost:"; + getPort() + +"/test/bug5/bug57141.jsp"); + +String result = res.toString(); +assertEcho(result, "00-true"); +assertEcho(result, "01-false"); +} + + // Assertion for text contained with , e.g. printed by tags:echo private static void assertEcho(String result, String expected) { assertTrue(result, result.indexOf("" + expected + "") > 0); Added: tomcat/trunk/test/webapp/bug5/bug57141.jsp URL: http://svn.apache.org/viewvc/tomcat/trunk/test/webapp/bug5/bug57141.jsp?rev=1636063&view=auto == --- tomcat/trunk/test/webapp/bug5/bug57141.jsp (added) +++ tomcat/trunk/test/webapp/bug5/bug57141.jsp Sat Nov 1 21:44:22 2014 @@ -0,0 +1,22 @@ +<%-- + 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. +--%> + + +00-${Boolean.TRUE} +01-${Boolean.FALSE} + + \ No newline at end of file Propchange: tomcat/trunk/test/webapp/bug5/bug57141.jsp -- svn
Re: svn commit: r1635280 - /tomcat/trunk/test/org/apache/catalina/session/Threading.java
On 01/11/2014 20:20, Felix Schumacher wrote: > Am 29.10.2014 um 20:54 schrieb ma...@apache.org: >> Author: markt >> Date: Wed Oct 29 19:54:55 2014 >> New Revision: 1635280 >> >> URL: http://svn.apache.org/r1635280 >> Log: >> Update for Tomcat 8 >> >> Modified: >> tomcat/trunk/test/org/apache/catalina/session/Threading.java >> >> Modified: tomcat/trunk/test/org/apache/catalina/session/Threading.java >> URL: >> http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/session/Threading.java?rev=1635280&r1=1635279&r2=1635280&view=diff >> >> == >> >> --- tomcat/trunk/test/org/apache/catalina/session/Threading.java >> (original) >> +++ tomcat/trunk/test/org/apache/catalina/session/Threading.java Wed >> Oct 29 19:54:55 2014 >> @@ -42,6 +42,7 @@ public class Threading { >>* >>* Windows JDK 1.6.0_22_x64 - Thread safe >>* OSX JDK 1.6.0_22_x64 - Not thread safe >> + * OSX JDL 1.7.0_51_x64 - Not thread safe > JDK? Yep. Fixed. Thanks. Mark > > Regards > Felix >>* >>* >>* Therefore, have to assume that {@link >> FileInputStream#read(byte[])} is >> @@ -60,7 +61,7 @@ public class Threading { >> // Assumes "ant release" has been run >> // Will need to be updated as new releases are made >> File file = new File( >> - >> "./output/release/v7.0.20-dev/bin/apache-tomcat-7.0.20-dev.zip"); >> + >> "./output/release/v8.0.15-dev/bin/apache-tomcat-8.0.15-dev.zip"); >> FileInputStream fis = new FileInputStream(file); >> >> >> >> - >> 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 > - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1636058 - /tomcat/trunk/test/org/apache/catalina/session/Threading.java
Author: markt Date: Sat Nov 1 21:15:52 2014 New Revision: 1636058 URL: http://svn.apache.org/r1636058 Log: Fix typo Modified: tomcat/trunk/test/org/apache/catalina/session/Threading.java Modified: tomcat/trunk/test/org/apache/catalina/session/Threading.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/session/Threading.java?rev=1636058&r1=1636057&r2=1636058&view=diff == --- tomcat/trunk/test/org/apache/catalina/session/Threading.java (original) +++ tomcat/trunk/test/org/apache/catalina/session/Threading.java Sat Nov 1 21:15:52 2014 @@ -42,7 +42,7 @@ public class Threading { * * Windows JDK 1.6.0_22_x64 - Thread safe * OSX JDK 1.6.0_22_x64 - Not thread safe - * OSX JDL 1.7.0_51_x64 - Not thread safe + * OSX JDK 1.7.0_51_x64 - Not thread safe * * * Therefore, have to assume that {@link FileInputStream#read(byte[])} is - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1636054 - in /tomcat/trunk/test: javax/el/TestCompositeELResolver.java javax/servlet/jsp/TestPageContext.java org/apache/catalina/core/TestApplicationContext.java org/apache/catalina/star
Author: markt Date: Sat Nov 1 21:04:20 2014 New Revision: 1636054 URL: http://svn.apache.org/r1636054 Log: Refactor tests to reduce boilerplate code. There is more to do here. Modified: tomcat/trunk/test/javax/el/TestCompositeELResolver.java tomcat/trunk/test/javax/servlet/jsp/TestPageContext.java tomcat/trunk/test/org/apache/catalina/core/TestApplicationContext.java tomcat/trunk/test/org/apache/catalina/startup/TomcatBaseTest.java tomcat/trunk/test/org/apache/el/TestELInJsp.java Modified: tomcat/trunk/test/javax/el/TestCompositeELResolver.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/javax/el/TestCompositeELResolver.java?rev=1636054&r1=1636053&r2=1636054&view=diff == --- tomcat/trunk/test/javax/el/TestCompositeELResolver.java (original) +++ tomcat/trunk/test/javax/el/TestCompositeELResolver.java Sat Nov 1 21:04:20 2014 @@ -16,40 +16,20 @@ */ package javax.el; -import java.io.File; - import javax.servlet.http.HttpServletResponse; import static org.junit.Assert.assertEquals; import org.junit.Test; -import org.apache.catalina.WebResourceRoot; -import org.apache.catalina.core.StandardContext; -import org.apache.catalina.startup.Tomcat; import org.apache.catalina.startup.TomcatBaseTest; -import org.apache.catalina.webresources.StandardRoot; import org.apache.tomcat.util.buf.ByteChunk; public class TestCompositeELResolver extends TomcatBaseTest { @Test public void testBug50408() throws Exception { -Tomcat tomcat = getTomcatInstance(); - -File appDir = new File("test/webapp"); -// app dir is relative to server home -StandardContext ctxt = (StandardContext) tomcat.addWebapp(null, -"/test", appDir.getAbsolutePath()); - -// This test needs the JSTL libraries -File lib = new File("webapps/examples/WEB-INF/lib"); -ctxt.setResources(new StandardRoot(ctxt)); -ctxt.getResources().createWebResourceSet( -WebResourceRoot.ResourceSetType.POST, "/WEB-INF/lib", -lib.getAbsolutePath(), null, "/"); - -tomcat.start(); +getTomcatInstanceTestWebapp(true, true); int rc = getUrl("http://localhost:"; + getPort() + "/test/bug5/bug50408.jsp", new ByteChunk(), null); Modified: tomcat/trunk/test/javax/servlet/jsp/TestPageContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/javax/servlet/jsp/TestPageContext.java?rev=1636054&r1=1636053&r2=1636054&view=diff == --- tomcat/trunk/test/javax/servlet/jsp/TestPageContext.java (original) +++ tomcat/trunk/test/javax/servlet/jsp/TestPageContext.java Sat Nov 1 21:04:20 2014 @@ -14,16 +14,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package javax.servlet.jsp; -import java.io.File; - import static org.junit.Assert.assertTrue; import org.junit.Test; -import org.apache.catalina.startup.Tomcat; import org.apache.catalina.startup.TomcatBaseTest; import org.apache.tomcat.util.buf.ByteChunk; @@ -31,13 +27,7 @@ public class TestPageContext extends Tom @Test public void testBug49196() throws Exception { -Tomcat tomcat = getTomcatInstance(); - -File appDir = new File("test/webapp"); -// app dir is relative to server home -tomcat.addWebapp(null, "/test", appDir.getAbsolutePath()); - -tomcat.start(); +getTomcatInstanceTestWebapp(false, true); ByteChunk res = getUrl("http://localhost:"; + getPort() + "/test/bug49nnn/bug49196.jsp"); Modified: tomcat/trunk/test/org/apache/catalina/core/TestApplicationContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/core/TestApplicationContext.java?rev=1636054&r1=1636053&r2=1636054&view=diff == --- tomcat/trunk/test/org/apache/catalina/core/TestApplicationContext.java (original) +++ tomcat/trunk/test/org/apache/catalina/core/TestApplicationContext.java Sat Nov 1 21:04:20 2014 @@ -16,7 +16,6 @@ */ package org.apache.catalina.core; -import java.io.File; import java.util.Collection; import javax.servlet.Filter; @@ -29,6 +28,7 @@ import javax.servlet.http.HttpServletRes import org.junit.Assert; import org.junit.Test; +import org.apache.catalina.LifecycleException; import org.apache.catalina.startup.Tomcat; import org.apache.catalina.startup.TomcatBaseTest; import org.apache.tomcat.util.buf.ByteChunk; @@ -37,13 +37,7 @@ public class TestApplicationContext exte @Test public void testBug53257() throws Exception { -Tomcat tomcat = getTomcatInstance(); - -File appDir = new File("test/webapp"); -// app dir is relative to server home -tomcat.addWebapp(null,
Re: svn commit: r1635280 - /tomcat/trunk/test/org/apache/catalina/session/Threading.java
Am 29.10.2014 um 20:54 schrieb ma...@apache.org: Author: markt Date: Wed Oct 29 19:54:55 2014 New Revision: 1635280 URL: http://svn.apache.org/r1635280 Log: Update for Tomcat 8 Modified: tomcat/trunk/test/org/apache/catalina/session/Threading.java Modified: tomcat/trunk/test/org/apache/catalina/session/Threading.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/session/Threading.java?rev=1635280&r1=1635279&r2=1635280&view=diff == --- tomcat/trunk/test/org/apache/catalina/session/Threading.java (original) +++ tomcat/trunk/test/org/apache/catalina/session/Threading.java Wed Oct 29 19:54:55 2014 @@ -42,6 +42,7 @@ public class Threading { * * Windows JDK 1.6.0_22_x64 - Thread safe * OSX JDK 1.6.0_22_x64 - Not thread safe + * OSX JDL 1.7.0_51_x64 - Not thread safe JDK? Regards Felix * * * Therefore, have to assume that {@link FileInputStream#read(byte[])} is @@ -60,7 +61,7 @@ public class Threading { // Assumes "ant release" has been run // Will need to be updated as new releases are made File file = new File( - "./output/release/v7.0.20-dev/bin/apache-tomcat-7.0.20-dev.zip"); + "./output/release/v8.0.15-dev/bin/apache-tomcat-8.0.15-dev.zip"); FileInputStream fis = new FileInputStream(file); - 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
svn commit: r1636029 - /tomcat/trunk/test/org/apache/el/TestELInJsp.java
Author: markt Date: Sat Nov 1 20:09:33 2014 New Revision: 1636029 URL: http://svn.apache.org/r1636029 Log: Remove some unnecessary new lines Modified: tomcat/trunk/test/org/apache/el/TestELInJsp.java Modified: tomcat/trunk/test/org/apache/el/TestELInJsp.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/el/TestELInJsp.java?rev=1636029&r1=1636028&r2=1636029&view=diff == --- tomcat/trunk/test/org/apache/el/TestELInJsp.java (original) +++ tomcat/trunk/test/org/apache/el/TestELInJsp.java Sat Nov 1 20:09:33 2014 @@ -48,8 +48,7 @@ public class TestELInJsp extends TomcatB tomcat.start(); -ByteChunk res = getUrl("http://localhost:"; + getPort() + -"/test/bug36923.jsp"); +ByteChunk res = getUrl("http://localhost:"; + getPort() + "/test/bug36923.jsp"); String result = res.toString(); assertEcho(result, "00-${hello world}"); @@ -65,8 +64,7 @@ public class TestELInJsp extends TomcatB tomcat.start(); -ByteChunk res = getUrl("http://localhost:"; + getPort() + -"/test/bug42565.jsp"); +ByteChunk res = getUrl("http://localhost:"; + getPort() + "/test/bug42565.jsp"); String result = res.toString(); assertEcho(result, "00-false"); @@ -91,15 +89,13 @@ public class TestELInJsp extends TomcatB public void testBug44994() throws Exception { Tomcat tomcat = getTomcatInstance(); -File appDir = -new File("test/webapp"); +File appDir = new File("test/webapp"); // app dir is relative to server home tomcat.addWebapp(null, "/test", appDir.getAbsolutePath()); tomcat.start(); -ByteChunk res = getUrl("http://localhost:"; + getPort() + -"/test/bug44994.jsp"); +ByteChunk res = getUrl("http://localhost:"; + getPort() + "/test/bug44994.jsp"); String result = res.toString(); assertEcho(result, "00-none"); @@ -111,8 +107,7 @@ public class TestELInJsp extends TomcatB public void testBug45427() throws Exception { Tomcat tomcat = getTomcatInstance(); -File appDir = -new File("test/webapp"); +File appDir = new File("test/webapp"); // app dir is relative to server home tomcat.addWebapp(null, "/test", appDir.getAbsolutePath()); @@ -147,8 +142,7 @@ public class TestELInJsp extends TomcatB public void testBug45451() throws Exception { Tomcat tomcat = getTomcatInstance(); -File appDir = -new File("test/webapp"); +File appDir = new File("test/webapp"); // app dir is relative to server home tomcat.addWebapp(null, "/test", appDir.getAbsolutePath()); @@ -256,8 +250,7 @@ public class TestELInJsp extends TomcatB public void testBug45511() throws Exception { Tomcat tomcat = getTomcatInstance(); -File appDir = -new File("test/webapp"); +File appDir = new File("test/webapp"); // app dir is relative to server home tomcat.addWebapp(null, "/test", appDir.getAbsolutePath()); @@ -275,15 +268,13 @@ public class TestELInJsp extends TomcatB public void testBug46596() throws Exception { Tomcat tomcat = getTomcatInstance(); -File appDir = -new File("test/webapp"); +File appDir = new File("test/webapp"); // app dir is relative to server home tomcat.addWebapp(null, "/test", appDir.getAbsolutePath()); tomcat.start(); -ByteChunk res = getUrl("http://localhost:"; + getPort() + -"/test/bug46596.jsp"); +ByteChunk res = getUrl("http://localhost:"; + getPort() + "/test/bug46596.jsp"); String result = res.toString(); assertEcho(result, "{OK}"); } @@ -292,15 +283,13 @@ public class TestELInJsp extends TomcatB public void testBug47413() throws Exception { Tomcat tomcat = getTomcatInstance(); -File appDir = -new File("test/webapp"); +File appDir = new File("test/webapp"); // app dir is relative to server home tomcat.addWebapp(null, "/test", appDir.getAbsolutePath()); tomcat.start(); -ByteChunk res = getUrl("http://localhost:"; + getPort() + -"/test/bug47413.jsp"); +ByteChunk res = getUrl("http://localhost:"; + getPort() + "/test/bug47413.jsp"); String result = res.toString(); assertEcho(result, "00-hello world"); @@ -321,8 +310,7 @@ public class TestELInJsp extends TomcatB public void testBug48112() throws Exception { Tomcat tomcat = getTomcatInstance(); -File appDir = -new File("test/webapp"); +File appDir = new File("test/webapp"); // app dir is relative to server home tomcat.addWebapp(null, "/test", appDir.getAbsolutePath()
svn commit: r1635996 - in /tomcat/trunk: java/org/apache/coyote/http11/AbstractHttp11Processor.java webapps/docs/changelog.xml
Author: markt Date: Sat Nov 1 17:43:13 2014 New Revision: 1635996 URL: http://svn.apache.org/r1635996 Log: Revert r1635431 as discussed on dev list Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java?rev=1635996&r1=1635995&r2=1635996&view=diff == --- tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java Sat Nov 1 17:43:13 2014 @@ -1477,7 +1477,7 @@ public abstract class AbstractHttp11Proc // If the response code supports an entity body and we're on // HTTP 1.1 then we chunk unless we have a Connection: close header connectionClosePresent = isConnectionClose(headers); -if (entityBody && http11 && keepAlive && !connectionClosePresent) { +if (entityBody && http11 && !connectionClosePresent) { getOutputBuffer().addActiveFilter (outputFilters[Constants.CHUNKED_FILTER]); contentDelimitation = true; Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1635996&r1=1635995&r2=1635996&view=diff == --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Sat Nov 1 17:43:13 2014 @@ -238,10 +238,6 @@ Async state MUST_COMPLETE should still be started. (remm) - -Disable chunking when there is no keepalive (connection close is added -at the end of the method). (remm) - - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1635995 - /tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java
Author: markt Date: Sat Nov 1 17:41:34 2014 New Revision: 1635995 URL: http://svn.apache.org/r1635995 Log: Revert comment change from r1635440 Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java?rev=1635995&r1=1635994&r2=1635995&view=diff == --- tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java Sat Nov 1 17:41:34 2014 @@ -1475,8 +1475,7 @@ public abstract class AbstractHttp11Proc contentDelimitation = true; } else { // If the response code supports an entity body and we're on -// HTTP 1.1 and we are using keep-alive then we chunk unless we have -// a Connection: close header +// HTTP 1.1 then we chunk unless we have a Connection: close header connectionClosePresent = isConnectionClose(headers); if (entityBody && http11 && keepAlive && !connectionClosePresent) { getOutputBuffer().addActiveFilter - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1635994 - in /tomcat/trunk: java/org/apache/coyote/http11/ java/org/apache/tomcat/util/net/ test/org/apache/coyote/http11/ webapps/docs/ webapps/docs/config/
Author: markt Date: Sat Nov 1 17:38:56 2014 New Revision: 1635994 URL: http://svn.apache.org/r1635994 Log: Revert the changes in 1635524 apart from some of the unit test changes that extend the coverage of the existing unit tests Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java tomcat/trunk/java/org/apache/tomcat/util/net/AbstractEndpoint.java tomcat/trunk/test/org/apache/coyote/http11/TestAbstractHttp11Processor.java tomcat/trunk/webapps/docs/changelog.xml tomcat/trunk/webapps/docs/config/http.xml Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java?rev=1635994&r1=1635993&r2=1635994&view=diff == --- tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java Sat Nov 1 17:38:56 2014 @@ -1478,8 +1478,7 @@ public abstract class AbstractHttp11Proc // HTTP 1.1 and we are using keep-alive then we chunk unless we have // a Connection: close header connectionClosePresent = isConnectionClose(headers); -if (entityBody && http11 && (keepAlive || !endpoint.getDisableChunkingOnClose()) && -!connectionClosePresent) { +if (entityBody && http11 && keepAlive && !connectionClosePresent) { getOutputBuffer().addActiveFilter (outputFilters[Constants.CHUNKED_FILTER]); contentDelimitation = true; Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java?rev=1635994&r1=1635993&r2=1635994&view=diff == --- tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java Sat Nov 1 17:38:56 2014 @@ -207,13 +207,6 @@ public abstract class AbstractHttp11Prot endpoint.setMaxKeepAliveRequests(mkar); } -public boolean getDisableChunkingOnClose() { -return endpoint.getDisableChunkingOnClose(); -} -public void setDisableChunkingOnClose(boolean disableChunkingOnClose) { -endpoint.setDisableChunkingOnClose(disableChunkingOnClose); -} - protected NpnHandler npnHandler; @SuppressWarnings("unchecked") public void setNpnHandler(String impl) { Modified: tomcat/trunk/java/org/apache/tomcat/util/net/AbstractEndpoint.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/AbstractEndpoint.java?rev=1635994&r1=1635993&r2=1635994&view=diff == --- tomcat/trunk/java/org/apache/tomcat/util/net/AbstractEndpoint.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/AbstractEndpoint.java Sat Nov 1 17:38:56 2014 @@ -45,7 +45,6 @@ import org.apache.tomcat.util.threads.Th * * @author Mladen Turk * @author Remy Maucherat - * @param The type of socket the endpoint is associated with. */ public abstract class AbstractEndpoint { @@ -424,21 +423,6 @@ public abstract class AbstractEndpointhttp://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/coyote/http11/TestAbstractHttp11Processor.java?rev=1635994&r1=1635993&r2=1635994&view=diff == --- tomcat/trunk/test/org/apache/coyote/http11/TestAbstractHttp11Processor.java (original) +++ tomcat/trunk/test/org/apache/coyote/http11/TestAbstractHttp11Processor.java Sat Nov 1 17:38:56 2014 @@ -55,18 +55,12 @@ public class TestAbstractHttp11Processor @Test public void testResponseWithErrorChunked() throws Exception { -doTestResponseWithErrorChunked(false); -} - -@Test -public void testResponseWithErrorChunkedDisabled() throws Exception { -doTestResponseWithErrorChunked(true); -} - - -private void doTestResponseWithErrorChunked(boolean disabled) throws Exception { Tomcat tomcat = getTomcatInstance(); +// This setting means the connection will be closed at the end of the +// request +tomcat.getConnector().setAttribute("maxKeepAliveRequests", "1"); + // No file system docBase required Context ctx = tomcat.addContext("", null); @@ -75,14 +69,6 @@ public class TestAbstractHttp11Processor new ResponseWithErrorServlet(true)); ctx.addServletMapping("/*", "ChunkedResponseWithErrorServlet"); -// This setting means the connection will be closed at the end of the
Re: svn commit: r1635524 - in /tomcat/trunk: java/org/apache/coyote/http11/ java/org/apache/tomcat/util/net/ test/org/apache/coyote/http11/ webapps/docs/ webapps/docs/config/
2014-11-01 17:27 GMT+01:00 Mark Thomas : > OK. Happy to ditch nearly all of this. There was a tweak to a unit test > I'd like to keep. I'll do those reverts shorty unless you beat me to it. > > Unlikely, I'm not doing much on WEs, and I am mostly interested in the upgrade process in the immediate future. Rémy
[Bug 57172] NullPointerException in findResources of WebappClassLoader
https://issues.apache.org/bugzilla/show_bug.cgi?id=57172 Mark Thomas changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |INVALID --- Comment #1 from Mark Thomas --- resources should only be null when the web application class loader is not running. Methods that may be called when the class loader is stopped (generally management methods to get the name etc.) handle the case where resources is null. Methods that are not expected to be called while the class loader is stopped (such as findResources) do not handle the null. The NPE you are getting is indicative of trying to use the web application class loader after it has been stopped. I suspect you have a memory leak and something is retaining a reference the class loader that shouldn't be. -- 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: svn commit: r1635524 - in /tomcat/trunk: java/org/apache/coyote/http11/ java/org/apache/tomcat/util/net/ test/org/apache/coyote/http11/ webapps/docs/ webapps/docs/config/
On 30/10/2014 21:26, Rémy Maucherat wrote: > 2014-10-30 21:18 GMT+01:00 Mark Thomas : > >>> There should be no difference with the !connectionClosePresent as one of >>> the flags is for connection: close in the request, the other one for >>> connection: close in the response. And connection: close is added to the >>> response if keepAlive is false. >>> >>> So this doesn't make sense. >> >> What doesn't make sense? >> > > The connectionClosePresent flag was added, which disables chunking. It's > the same thing as keepalive. > >> >> Would it be clearer if the option was called >> "disableChunkingIfNoKeepAlive" and the description was updated accordingly? >> > I don't care about this option, please forget about it and let me revert > the whole thing. Let's move on. OK. Happy to ditch nearly all of this. There was a tweak to a unit test I'd like to keep. I'll do those reverts shorty unless you beat me to it. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 57173] EOFException during annotation scanning
https://issues.apache.org/bugzilla/show_bug.cgi?id=57173 Konstantin Kolinko changed: What|Removed |Added OS||All --- Comment #1 from Konstantin Kolinko --- 1. Is this issue reproducible or just happened once? 2. Please verify that your copy of woodstox-core-asl-4.1.2.jar is a correct one, not truncated or otherwise tampered with. I am unable to reproduce any issues with my copy of the library. It has size 478 935 bytes, md5 ba7562cc58d6652e7d8e6095ad6e2940, sha1 b8df430ddc4947bc7b68af5ed09b8c1c5b527553. (There is a testcase org.apache.tomcat.util.bcel.TesterPerformance that performs parsing of all classes in a Jar. I also tried to put the library into a web application.) 3. A library can be excluded from annotation scanning. See https://wiki.apache.org/tomcat/HowTo/FasterStartUp -- 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-test-nio2 (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-test-nio2 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-test-nio2 : Tomcat 8.x, a web server implementing the Java Servlet 3.1, ... Full details are available at: http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-test-nio2/index.html That said, some information snippets are provided here. The following annotations (debug/informational/warning/error messages) were provided: -DEBUG- Dependency on commons-daemon exists, no need to add for property commons-daemon.native.src.tgz. -DEBUG- Dependency on commons-daemon exists, no need to add for property tomcat-native.tar.gz. -INFO- Failed with reason build failed -INFO- Project Reports in: /srv/gump/public/workspace/tomcat-trunk/output/logs-NIO2 -INFO- Project Reports in: /srv/gump/public/workspace/tomcat-trunk/output/test-tmp-NIO2/logs The following work was performed: http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-test-nio2/gump_work/build_tomcat-trunk_tomcat-trunk-test-nio2.html Work Name: build_tomcat-trunk_tomcat-trunk-test-nio2 (Type: Build) Work ended in a state of : Failed Elapsed: 25 mins 25 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 -Djunit.jar=/srv/gump/public/workspace/junit/target/junit-4.12-SNAPSHOT.jar -Dobjenesis.jar=/srv/gump/public/workspace/objenesis/main/target/objenesis-2.2-SNAPSHOT.jar -Dtest.reports=output/logs-NIO2 -Dtomcat-native.tar.gz=/srv/gump/public/workspace/apache-commons/daemon/dist/bin/commons-daemon-20141101-native-src.tar.gz -Dexamples.sources.skip=true -Djdt.jar=/srv/gump/packages/eclipse/plugins/P20140317-1600/ecj-P20140317-1600.jar -Dcommons-daemon.jar=/srv/gump/public/workspace/apache-commons/daemon/dist/commons-daemon-20141101.jar -Dcommons-daemon.native.src.tgz=/srv/gump/public/workspace/apache-commons/daemon/dist/bin/commons-daemon-20141101-native-src.tar.gz -Dtest.temp=output/test-tmp-NIO2 -Dtest.accesslog=true -Dexecute.test.nio=false -Dtest.openssl.path=/srv/gump/public/workspace/openssl/dest-20141101/bi n/openssl -Dexecute.test.apr=false -Dexecute.test.bio=false -Dexecute.test.nio2=true -Deasymock.jar=/srv/gump/public/workspace/easymock/easymock/target/easymock-3.3-SNAPSHOT.jar -Dhamcrest.jar=/srv/gump/public/workspace/hamcrest/build/hamcrest-all-20141101.jar -Dcglib.jar=/srv/gump/packages/cglib/cglib-nodep-2.2.jar test [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/build/webapps/examples/WEB-INF/classes:/srv/gump/public/workspace/tomcat-trunk/output/testclasses:/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-junit4.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/tomcat-trunk/output/build/bin/bootstrap.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/bin/tomcat-juli.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/annotations-api.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/servlet-api.ja r:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/jsp-api.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/el-api.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/websocket-api.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/catalina.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/catalina-ant.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/catalina-storeconfig.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/tomcat-coyote.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/jasper.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/jasper-el.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/catalina-tribes.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/catalina-ha.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/tomcat-api.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/tomcat-jni.jar:/srv/gump/public/workspace/tomcat-trunk/output/bu ild/lib/tomcat-spdy.