Re: JDK 9 EA Build 170 is available on jdk.java.net
On Fri, May 19, 2017 at 5:03 AM, Rory O'Donnellwrote: > > Hi Mark, * > > JDK 9 Early Access* build 170 is available at the new location : - > jdk.java.net/9/ > > A summary of all the changes in this build are listed here < > http://download.java.net/java/jdk9/changes/jdk-9+170.html>. > > Changes which were introduced since the last availability email that may > be of interest : > > * b168 - JDK-8175814: Update default HttpClient protocol version and >optional request version > o related to JEP 110 : HTTP/2 Client. > * b169 - JDK-8178380 : Module system implementation refresh (5/2017) > o changes in command line options > * b170 - JDK-8177153 : LambdaMetafactory has default >constructorIncompatible change, > o release note: JDK-8180035 > > *New Proposal - Mark Reinhold has asked for comments on the jigsaw-dev > mailing list *[1] > > * Proposal: Allow illegal reflective access by default in JDK 9 > >In short, the existing "big kill switch" of the > `--permit-illegal-access` >option [1] will become the default behavior of the JDK 9 run-time > system, >though without as many warnings. The current behavior of JDK 9, in > which >illegal reflective-access operations from code on the class path are not >permitted, will become the default in a future release. Nothing will >change at compile time. > > > Rgds,Rory > > [1] http://mail.openjdk.java.net/pipermail/jigsaw-dev/2017-May/012673.html > > I got a message that Tomcat was again broken on Java 9. Indeed, testing 175, Tomcat 9 now needs JAVA_OPTS="--add-modules java.xml.ws" to run (otherwise that module isn't available). Also, although "illegal" access is enabled by default, it now outputs this: WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.apache.catalina.loader.WebappClassLoaderBase (file:/home/remm/Work/jbossweb/apache-tomcat-trunk/output/build/lib/catalina.jar) to field java.lang.Thread.threadLocals WARNING: Please consider reporting this to the maintainers of org.apache.catalina.loader.WebappClassLoaderBase WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release We've had to add workarounds for years due to the JDK having issues, and some still being there (direct byte buffers still won't GC properly and need creative reflection tricks). Rémy
buildbot success in on tomcat-trunk
The Buildbot has detected a restored build on builder tomcat-trunk while building . Full details are available at: https://ci.apache.org/builders/tomcat-trunk/builds/2511 Buildbot URL: https://ci.apache.org/ Buildslave for this Build: silvanus_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-commit' triggered this build Build Source Stamp: [branch tomcat/trunk] 1800205 Blamelist: markt Build succeeded! Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1800205 - /tomcat/trunk/java/org/apache/jasper/compiler/Compiler.java
Author: markt Date: Wed Jun 28 20:30:58 2017 New Revision: 1800205 URL: http://svn.apache.org/viewvc?rev=1800205=rev Log: Fix build error Modified: tomcat/trunk/java/org/apache/jasper/compiler/Compiler.java Modified: tomcat/trunk/java/org/apache/jasper/compiler/Compiler.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/compiler/Compiler.java?rev=1800205=1800204=1800205=diff == --- tomcat/trunk/java/org/apache/jasper/compiler/Compiler.java (original) +++ tomcat/trunk/java/org/apache/jasper/compiler/Compiler.java Wed Jun 28 20:30:58 2017 @@ -102,6 +102,8 @@ public abstract class Compiler { * Compile the jsp file into equivalent servlet in .java file * * @throws Exception Error generating Java source + * + * @return A map of class names to JSR 045 source maps */ protected MapgenerateJava() throws Exception { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1800204 - /tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java
Author: markt Date: Wed Jun 28 20:17:16 2017 New Revision: 1800204 URL: http://svn.apache.org/viewvc?rev=1800204=rev Log: Correct comment Modified: tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java Modified: tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java?rev=1800204=1800203=1800204=diff == --- tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java (original) +++ tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java Wed Jun 28 20:17:16 2017 @@ -995,7 +995,7 @@ public class DefaultServlet extends Http } copy(resource, renderResult, writer, encoding); } else { -// Output is via an InputStream +// Output is via an OutputStream if (resource.isDirectory()) { renderResult = render(getPathPrefix(request), resource, encoding); } else { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
buildbot failure in on tomcat-trunk
The Buildbot has detected a new failure on builder tomcat-trunk while building . Full details are available at: https://ci.apache.org/builders/tomcat-trunk/builds/2509 Buildbot URL: https://ci.apache.org/ Buildslave for this Build: silvanus_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-commit' triggered this build Build Source Stamp: [branch tomcat/trunk] 1800202 Blamelist: markt BUILD FAILED: failed compile Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1800202 - /tomcat/trunk/java/org/apache/juli/FileHandler.java
Author: markt Date: Wed Jun 28 20:05:37 2017 New Revision: 1800202 URL: http://svn.apache.org/viewvc?rev=1800202=rev Log: Refactor. It is more verbose but it stops Eclipse complaining about a possible NPE. Modified: tomcat/trunk/java/org/apache/juli/FileHandler.java Modified: tomcat/trunk/java/org/apache/juli/FileHandler.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/juli/FileHandler.java?rev=1800202=1800201=1800202=diff == --- tomcat/trunk/java/org/apache/juli/FileHandler.java (original) +++ tomcat/trunk/java/org/apache/juli/FileHandler.java Wed Jun 28 20:05:37 2017 @@ -106,9 +106,13 @@ public class FileHandler extends Handler { SecurityManager s = System.getSecurityManager(); -this.isSecurityEnabled = s != null; -this.group = isSecurityEnabled ? s.getThreadGroup() -: Thread.currentThread().getThreadGroup(); +if (s == null) { +this.isSecurityEnabled = false; +this.group = Thread.currentThread().getThreadGroup(); +} else { +this.isSecurityEnabled = true; +this.group = s.getThreadGroup(); +} } @Override - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 49176] Jasper in Dev Mode Is Memory Inefficient
https://bz.apache.org/bugzilla/show_bug.cgi?id=49176 Mark Thomaschanged: What|Removed |Added Status|REOPENED|RESOLVED Resolution|--- |FIXED --- Comment #5 from Mark Thomas --- This has been fixed in trunk for 9.0.M23 onwards. Because it required quite a few API changes in Jasper, I do not propose to back-port this. -- 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: r1800201 - in /tomcat/trunk: java/org/apache/jasper/ java/org/apache/jasper/compiler/ java/org/apache/jasper/resources/ java/org/apache/jasper/servlet/ test/org/apache/jasper/compiler/ web
Author: markt Date: Wed Jun 28 20:02:32 2017 New Revision: 1800201 URL: http://svn.apache.org/viewvc?rev=1800201=rev Log: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=49176 When generating JSP runtime error messages that quote the relevant JSP source code, switch from using the results of the JSP page parsing process to using the JSR 045 source map data to identify the correct part of the JSP source from the stack trace. This significantly reduces the memory footprint of Jasper in development mode, provides a small performance improvement for error page generation and enables source quotes to continue to be provided after a Tomcat restart. Added: tomcat/trunk/java/org/apache/jasper/compiler/SmapInput.java (with props) tomcat/trunk/test/org/apache/jasper/compiler/TestSmapStratum.java (with props) Removed: tomcat/trunk/java/org/apache/jasper/compiler/SmapGenerator.java tomcat/trunk/test/org/apache/jasper/compiler/TestSmapGenerator.java Modified: tomcat/trunk/java/org/apache/jasper/JspC.java tomcat/trunk/java/org/apache/jasper/JspCompilationContext.java tomcat/trunk/java/org/apache/jasper/compiler/AntCompiler.java tomcat/trunk/java/org/apache/jasper/compiler/Compiler.java tomcat/trunk/java/org/apache/jasper/compiler/JDTCompiler.java tomcat/trunk/java/org/apache/jasper/compiler/JspRuntimeContext.java tomcat/trunk/java/org/apache/jasper/compiler/SmapStratum.java tomcat/trunk/java/org/apache/jasper/compiler/SmapUtil.java tomcat/trunk/java/org/apache/jasper/resources/LocalStrings.properties tomcat/trunk/java/org/apache/jasper/servlet/JspServletWrapper.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/jasper/JspC.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/JspC.java?rev=1800201=1800200=1800201=diff == --- tomcat/trunk/java/org/apache/jasper/JspC.java (original) +++ tomcat/trunk/java/org/apache/jasper/JspC.java Wed Jun 28 20:02:32 2017 @@ -1252,7 +1252,7 @@ public class JspC extends Task implement targetClassName = null; } if (targetPackage != null) { -clctxt.setServletPackageName(targetPackage); +clctxt.setBasePackageName(targetPackage); } originalClassLoader = Thread.currentThread().getContextClassLoader(); Modified: tomcat/trunk/java/org/apache/jasper/JspCompilationContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/JspCompilationContext.java?rev=1800201=1800200=1800201=diff == --- tomcat/trunk/java/org/apache/jasper/JspCompilationContext.java (original) +++ tomcat/trunk/java/org/apache/jasper/JspCompilationContext.java Wed Jun 28 20:02:32 2017 @@ -445,7 +445,7 @@ public class JspCompilationContext { } /** - * Package name for the generated class is make up of the base package + * Package name for the generated class is made up of the base package * name, which is user settable, and the derived package name. The * derived package name directly mirrors the file hierarchy of the JSP page. * @return the package name @@ -478,11 +478,19 @@ public class JspCompilationContext { } /** + * @return The base package name into which all servlet and associated code + * is generated + */ +public String getBasePackageName() { +return basePackageName; +} + +/** * The package name into which the servlet class is generated. - * @param servletPackageName The package name to use + * @param basePackageName The package name to use */ -public void setServletPackageName(String servletPackageName) { -this.basePackageName = servletPackageName; +public void setBasePackageName(String basePackageName) { +this.basePackageName = basePackageName; } /** Modified: tomcat/trunk/java/org/apache/jasper/compiler/AntCompiler.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/compiler/AntCompiler.java?rev=1800201=1800200=1800201=diff == --- tomcat/trunk/java/org/apache/jasper/compiler/AntCompiler.java (original) +++ tomcat/trunk/java/org/apache/jasper/compiler/AntCompiler.java Wed Jun 28 20:02:32 2017 @@ -21,6 +21,7 @@ import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; import java.io.PrintStream; +import java.util.Map; import java.util.StringTokenizer; import org.apache.jasper.Constants; @@ -117,7 +118,7 @@ public class AntCompiler extends Compile * Compile the servlet from .java file to .class file */ @Override -protected void generateClass(String[] smap) +protected void generateClass(Map
[Bug 61232] Disabling rotation on the FileHandler creates 'catalina..log' instead of 'catalina.log'
https://bz.apache.org/bugzilla/show_bug.cgi?id=61232 Coty Sutherlandchanged: What|Removed |Added Keywords||Beginner --- Comment #1 from Coty Sutherland --- Looking at the o.a.juli.FileHandler class, one option would be to check the rotatable variable inside of configure() and adjust the suffix accordingly so that it doesn't add a '.' if rotatable is off (the prefix ends in '.' so unless it's non-default, which you could also check, it should have the necessary separator). -- 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 61232] New: Disabling rotation on the FileHandler creates 'catalina..log' instead of 'catalina.log'
https://bz.apache.org/bugzilla/show_bug.cgi?id=61232 Bug ID: 61232 Summary: Disabling rotation on the FileHandler creates 'catalina..log' instead of 'catalina.log' Product: Tomcat 8 Version: 8.5.x-trunk Hardware: PC OS: Linux Status: NEW Severity: trivial Priority: P2 Component: JULI Assignee: dev@tomcat.apache.org Reporter: csuth...@redhat.com Target Milestone: This is a trivial thing, but I thought it a good Beginner issue (unless someone thinks that this is expected behavior). When you disable rotatable in the default logging.properties tomcat creates 'catalina..log' rather than the correct 'catalina.log' file. There is no functional issue, but it seems kinda buggy to do that. You can easily workaround it by overriding the default suffix with "1catalina.org.apache.juli.AsyncFileHandler.suffix=log". To reproduce: 1) Install tomcat 2) Disable log rotation $ echo "1catalina.org.apache.juli.AsyncFileHandler.rotatable = false" >> conf/logging.properties 3) Start tomcat bin/startup.sh 4) Check the logs directory for catalina log with double '.'s: $ ll logs/catalina.*log -rw-r-. 1 coty coty 7796 Jun 28 13:58 logs/catalina..log -- 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
RewriteRule remove query string bug ?
Hi list, I'm using RewriteRule to remove the query string. Using this very simple rule: RewriteRule /foo /bar? [R,L] results in GET /foo?quux -> GET /bar? The redirect includes a spurious question mark, I expected it to be GET /foo?quux -> GET /bar (tested on tomcat 8.5.15) Looking at the code (java/org/apache/catalina/valves/rewrite/RewriteValve.java), It looks buggy: int index = urlStringDecoded.indexOf("?"); [..] snip [..] urlStringDecoded = urlStringDecoded.substring(0, index); urlStringEncoded = URLEncoder.DEFAULT.encode(urlStringDecoded, uriCharset) [..] snip [..] } else if (index == urlStringEncoded.length() - 1) { // if the ? is the last character delete it, its only purpose was to // prevent the rewrite module from appending the query string urlStringEncoded.deleteCharAt(index); } >From what I understand, the last block is dead code because urlStringEncoded is the substring of the original up to index *excluded*, so index can never been equal to urlStringEncoded.length() - 1 The code then proceeds and adds the spurious question mark to the result. Can anyone confirm this or did I miss something ? Cheers, Jon ps: The code is also wrong in comparing the index of '?' in the *decoded* string to the length of the *encoded* string, but that's another matter. Jon Jon
[Bug 58837] support "X-Content-Security-Policy" a.k.a as "CSP"
https://bz.apache.org/bugzilla/show_bug.cgi?id=58837 Christopher Schultzchanged: What|Removed |Added Keywords||Beginner --- Comment #4 from Christopher Schultz --- Ralph, would you care to propose a patch? -- 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 61230] New: Java API for WebSocket JSR will define a standard API for creating WebSocket applications.
On 28/06/17 08:48, bugzi...@apache.org wrote: > https://bz.apache.org/bugzilla/show_bug.cgi?id=61230 > Reporter: webmas...@angosso.net This idiot is back. I thought I'd blocked them. I'll take another look and then delete this issue. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1800145 - in /tomcat/tc7.0.x/trunk: ./ conf/catalina.policy java/org/apache/juli/FileHandler.java webapps/docs/changelog.xml
Author: violetagg Date: Wed Jun 28 10:31:58 2017 New Revision: 1800145 URL: http://svn.apache.org/viewvc?rev=1800145=rev Log: Name the thread that cleans the log files and mark it as a daemon thread. Additional permission for deleting files is granted to JULI as it is required by FileHandler when running under a Security Manager. Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/conf/catalina.policy tomcat/tc7.0.x/trunk/java/org/apache/juli/FileHandler.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc7.0.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Jun 28 10:31:58 2017 @@ -1,3 +1,3 @@ /tomcat/tc8.0.x/trunk:1636525,1637336,1637685,1637709,1638726,1640089,1640276,1640349,1640363,1640366,1640642,1640672,1640674,1640689,1640884,1641001,1641065,1641067,1641375,1641638,1641723,1641726,1641729-1641730,1641736,1641988,1642669-1642670,1642698,1642701,1643205,1643215,1643217,1643230,1643232,1643273,1643285,1643329-1643330,1643511,1643513,1643521,1643539,1643571,1643581-1643582,1643635,1643655,1643738,1643964,1644018,1644333,1644954,1644992,1645014,1645360,1645456,1645627,1645642,1645686,1645903-1645904,1645908-1645909,1645913,1645920,1646458,1646460-1646462,1646735,1646738-1646741,1646744,1646746,1646748-1646755,1646757,1646759-1646760,1647043,1648816,1651420-1651422,1651844,1652926,1652939-1652940,1652973,1653798,1653817,1653841,1654042,1654161,1654736,1654767,1654787,1656592,1659907,1662986,1663265,1663278,1663325,1663535,1663567,1663679,1663997,1664175,1664321,1664872,1665061,1665086,1666027,1666395,1666503,1666506,1666560,1666570,1666581,1666759,1666967,1666988,1667553 -1667555,1667558,1667617,1667633,1667637,1667747,1667767,1667873,1668028,1668137,1668634,1669432,1669801,1669840,1669895-1669896,1670398,1670435,1670592,1670605-1670607,1670609,1670632,1670720,1670725,1670727,1670731,1671114,1672273,1672285,1673759,1674220,1674295,1675469,1675488,1675595,1675831,1676232,1676367-1676369,1676382,1676394,1676483,1676556,1676635,1678178,1679536,1679988,1680256,1681124,1681182,1681703,1681730,1681840,1681864,1681869,1682010,1682034,1682047,1682052-1682053,1682062,1682064,1682070,1682312,1682325,1682331,1682386,1684367,1684385,1685759,1685774,1685827,1685892,1687341,1688904,1689358,1689657,1689921,1692850,1693093,1693108,1693324,1694060,1694115,1694291,1694427,1694431,1694503,1694549,1694789,1694873,1694881,1695356,1695372,1695823-1695825,1696200,1696281,1696379,1696468,1700608,1700871,1700897,1700978,1701094,1701124,1701608,1701668,1701676,1701766,1701944,1702248,1702252,1702314,1702390,1702723,1702725,1702728,1702730,1702733,1702735,1702737,1702739,1702 742,1702744,1702748,1702751,1702754,1702758,1702760,1702763,1702766,1708779,1708782,1708806,1709314,1709670,1710347,1710442,1710448,1710490,1710574,1710578,1712226,1712229,1712235,1712255,1712618,1712649,1712655,1712860,1712899,1712903,1712906,1712913,1712926,1712975,1713185,1713262,1713287,1713613,1713621,1713872,1713976,1713994,1713998,1714004,1714013,1714059,1714538,1714580,1715189,1715207,1715544,1715549,1715637,1715639-1715645,1715667,1715683,1715866,1715978,1715981,1716216-1716217,1716355,1716414,1716421,1717208-1717209,1717257,1717283,1717288,1717291,1717421,1717517,1717529,1718797,1718840-1718843,1719348,1719357-1719358,1719400,1719491,1719737,1720235,1720396,1720442,1720446,1720450,1720463,1720658-1720660,1720756,1720816,1721813,1721818,1721831,1721861,1721867,1721882,1722523,1722527,1722800,1722926,1722941,1722997,1723130,1723440,1723488,1723890,1724434,1724674,1724792,1724803,1724902,1725128,1725131,1725154,1725167,1725911,1725921,1725929,1725963-1725965,1725970,1725974,1 726171-1726173,1726175,1726179-1726182,1726190-1726191,1726195-1726200,1726203,1726226,1726576,1726630,1726992,1727029,1727037,1727671,1727676,1727900,1728028,1728092,1728439,1728449,1729186,1729362,1731009,1731303,1731867,1731872,1731874,1731876,1731885,1731947,1731955,1731959,1731977,1731984,1732360,1732490,1732672,1732902,1733166,1733603,1733619,1733735,1733752,1733764,1733915,1733941,1733964,1734115,1734133,1734261,1734421,1734531,1736286,1737967,1738173,1738182,1738992,1739039,1739089-1739091,1739294,1739777,1739821,1739981,1740513,1740726,1741019,1741162,1741217,1743647,1743681,1744152,1744272,1746732,1746750,1752739,1754615,1755886,1756018,1759565,1761686,1762173,1762206,1766280,1767507-1767508,1767653,1767656,1769267,1772949,1773521,1773527,1774104,1777015,1777213,1779330,1783151,1784188,1784966,1785670,1786846,1788260,1788999,1789140,1789402,1791529,1791559,1795291,1796906,1797523,1799214
svn commit: r1800144 - in /tomcat/tc8.0.x/trunk: ./ conf/catalina.policy java/org/apache/juli/FileHandler.java webapps/docs/changelog.xml
Author: violetagg Date: Wed Jun 28 10:27:45 2017 New Revision: 1800144 URL: http://svn.apache.org/viewvc?rev=1800144=rev Log: Name the thread that cleans the log files and mark it as a daemon thread. Additional permission for deleting files is granted to JULI as it is required by FileHandler when running under a Security Manager. Modified: tomcat/tc8.0.x/trunk/ (props changed) tomcat/tc8.0.x/trunk/conf/catalina.policy tomcat/tc8.0.x/trunk/java/org/apache/juli/FileHandler.java tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc8.0.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Jun 28 10:27:45 2017 @@ -1,2 +1,2 @@ -/tomcat/tc8.5.x/trunk:1735042,1737966,1743139-1743140,1744151,1747537,1747925,1748002,1754614,1754643,1762124,1762183,1762203,1763792,1772948,1777014,1779719,1782037,1782240,1782386-1782387,1785669,1786845,1788249,1788324,1788905,1789216,1789335,1791528,1791558,1796697-1796698,1797521,1798543,1799162 -/tomcat/trunk:1636524,1637156,1637176,1637188,1637331,1637684,1637695,1637890,1637892,1638720-1638725,1639653,1640010,1640083-1640084,1640088,1640275,1640322,1640347,1640361,1640365,1640403,1640410,1640652,1640655-1640658,1640688,1640700-1640883,1640903,1640976,1640978,1641000,1641026,1641038-1641039,1641051-1641052,1641058,1641064,1641300,1641369,1641374,1641380,1641486,1641634,1641656-1641692,1641704,1641707-1641718,1641720-1641722,1641735,1641981,1642233,1642280,1642554,1642564,1642595,1642606,1642668,1642679,1642697,1642699,1642766,1643002,1643045,1643054-1643055,1643066,1643121,1643128,1643206,1643209-1643210,1643216,1643249,1643270,1643283,1643309-1643310,1643323,1643365-1643366,1643370-1643371,1643465,1643474,1643536,1643570,1643634,1643649,1643651,1643654,1643675,1643731,1643733-1643734,1643761,1643766,1643814,1643937,1643963,1644017,1644169,1644201-1644203,1644321,1644323,1644516,1644523,1644529,1644535,1644730,1644768,1644784-1644785,1644790,1644793,1644815,1644884,1644886 ,1644890,1644892,1644910,1644924,1644929-1644930,1644935,1644989,1645011,1645247,1645355,1645357-1645358,1645455,1645465,1645469,1645471,1645473,1645475,1645486-1645488,1645626,1645641,1645685,1645743,1645763,1645951-1645953,1645955,1645993,1646098-1646106,1646178,1646220,1646302,1646304,1646420,1646470-1646471,1646476,1646559,1646717-1646723,1646773,1647026,1647042,1647530,1647655,1648304,1648815,1648907,1649973,1650081,1650365,1651116,1651120,1651280,1651470,1652938,1652970,1653041,1653471,1653550,1653574,1653797,1653815-1653816,1653819,1653840,1653857,1653888,1653972,1654013,1654030,1654050,1654123,1654148,1654159,1654513,1654515,1654517,1654522,1654524,1654725,1654735,1654766,1654785,1654851-1654852,1654978,1655122-1655124,1655126-1655127,1655129-1655130,1655132-1655133,1655312,1655351,1655438,1655441,1655454,168,1656087,1656299,1656319,1656331,1656345,1656350,1656590,1656648-1656650,1656657,1657041,1657054,1657374,1657492,1657510,1657565,1657580,1657584,1657586,1657589,1657 592,1657607,1657609,1657682,1657907,1658207,1658734,1658781,1658790,1658799,1658802,1658804,1658833,1658840,1658966,1659043,1659053,1659059,1659174,1659184,1659188-1659189,1659216,1659263,1659293,1659304,1659306-1659307,1659382,1659384,1659428,1659471,1659486,1659505,1659516,1659521,1659524,1659559,1659562,1659803,1659806,1659814,1659833,1659862,1659905,1659919,1659948,1659967,1659983-1659984,1660060,1660074,1660077,1660133,1660168,1660331-1660332,1660353,1660358,1660924,1661386,1661770,1661867,1661972,1661990,1662200,1662308-1662309,1662548,1662614,1662696,1662736,1662985,1662988-1662989,1663264,1663277,1663298,1663534,1663562,1663676,1663715,1663754,1663768,1663772,1663781,1663893,1663995,1664143,1664163,1664174,1664301,1664317,1664347,1664657,1664659,1664710,1664863-1664864,1664866,1665085,1665292,1665559,1665653,1665661,1665672,1665694,1665697,1665736,1665779,1665976-1665977,1665980-1665981,1665985-1665986,1665989,1665998,1666004,1666008,1666013,1666017,1666024,1666116,1666386-1
svn commit: r1800143 - in /tomcat/tc8.5.x/trunk: ./ conf/catalina.policy java/org/apache/juli/FileHandler.java webapps/docs/changelog.xml
Author: violetagg Date: Wed Jun 28 10:23:54 2017 New Revision: 1800143 URL: http://svn.apache.org/viewvc?rev=1800143=rev Log: Name the thread that cleans the log files and mark it as a daemon thread. Additional permission for deleting files is granted to JULI as it is required by FileHandler when running under a Security Manager. Modified: tomcat/tc8.5.x/trunk/ (props changed) tomcat/tc8.5.x/trunk/conf/catalina.policy tomcat/tc8.5.x/trunk/java/org/apache/juli/FileHandler.java tomcat/tc8.5.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc8.5.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Jun 28 10:23:54 2017 @@ -1 +1 @@ -/tomcat/trunk:1734785,1734799,1734845,1734928,1735041,1735044,1735480,1735577,1735597,1735599-1735600,1735615,1736145,1736162,1736209,1736280,1736297,1736299,1736489,1736646,1736703,1736836,1736849,1737104-1737105,1737112,1737117,1737119-1737120,1737155,1737157,1737192,1737280,1737339,1737632,1737664,1737715,1737748,1737785,1737834,1737860,1737903,1737959,1738005,1738007,1738014-1738015,1738018,1738022,1738039,1738043,1738059-1738060,1738147,1738149,1738174-1738175,1738261,1738589,1738623-1738625,1738643,1738816,1738850,1738855,1738946-1738948,1738953-1738954,1738979,1738982,1739079-1739081,1739087,1739113,1739153,1739172,1739176,1739191,1739474,1739726,1739762,1739775,1739814,1739817-1739818,1739975,1740131,1740324,1740465,1740495,1740508-1740509,1740520,1740535,1740707,1740803,1740810,1740969,1740980,1740991,1740997,1741015,1741033,1741036,1741058,1741060,1741080,1741147,1741159,1741164,1741173,1741181,1741190,1741197,1741202,1741208,1741213,1741221,1741225,1741232,1741409,1741501 ,1741677,1741892,1741896,1741984,1742023,1742042,1742071,1742090,1742093,1742101,1742105,1742111,1742139,1742146,1742148,1742166,1742181,1742184,1742187,1742246,1742248-1742251,1742263-1742264,1742268,1742276,1742369,1742387,1742448,1742509-1742512,1742917,1742919,1742933,1742975-1742976,1742984,1742986,1743019,1743115,1743117,1743124-1743125,1743134,1743425,1743554,1743679,1743696-1743698,1743700-1743701,1744058,1744064-1744065,1744125,1744194,1744229,1744270,1744323,1744432,1744684,1744697,1744705,1744713,1744760,1744786,1745083,1745142-1745143,1745145,1745177,1745179-1745180,1745227,1745248,1745254,1745337,1745467,1745473,1745535,1745576,1745735,1745744,1746304,1746306-1746307,1746319,1746327,1746338,1746340-1746341,1746344,1746427,1746441,1746473,1746490,1746492,1746495-1746496,1746499-1746501,1746503-1746507,1746509,1746549,1746551,1746554,1746556,1746558,1746584,1746620,1746649,1746724,1746939,1746989,1747014,1747028,1747035,1747210,1747225,1747234,1747253,1747404,1747506,1747 536,1747924,1747980,1747993,1748001,1748253,1748452,1748547,1748629,1748676,1748715,1749287,1749296,1749328,1749373,1749465,1749506,1749508,1749665-1749666,1749763,1749865-1749866,1749898,1749978,1749980,1750011,1750015,1750056,1750480,1750617,1750634,1750692,1750697,1750700,1750703,1750707,1750714,1750718,1750723,1750774,1750899,1750975,1750995,1751061,1751097,1751173,1751438,1751447,1751463,1751702,1752212,1752737,1752745,1753078,1753080,1753358,1753363,1754111,1754140-1754141,1754281,1754310,1754445,1754467,1754494,1754496,1754528,1754532-1754533,1754613,1754714,1754874,1754941,1754944,1754950-1754951,1755005,1755007,1755009,1755132,1755180-1755181,1755185,1755190,1755204-1755206,1755208,1755214,1755224,1755227,1755230,1755629,1755646-1755647,1755650,1755653,1755675,1755680,1755683,1755693,1755717,1755731-1755737,1755812,1755828,1755884,1755890,1755918-1755919,1755942,1755958,1755960,1755970,1755993,1756013,1756019,1756039,1756056,1756083-1756114,1756175,1756288-1756289,1756408-1 756410,1756778,1756798,1756878,1756898,1756939,1757123-1757124,1757126,1757128,1757132-1757133,1757136,1757145,1757167-1757168,1757175,1757180,1757182,1757195,1757271,1757278,1757347,1757353-1757354,1757363,1757374,1757399,1757406,1757408,1757485,1757495,1757499,1757527,1757578,1757684,1757722,1757727,1757790,1757799,1757813,1757853,1757883,1757903,1757976,1757997,1758000,1758058,1758072-1758075,1758078-1758079,1758223,1758257,1758261,1758276,1758292,1758369,1758378-1758383,1758421,1758423,1758425-1758427,1758430,1758443,1758448,1758459,1758483,1758486-1758487,1758499,1758525,1758556,1758580,1758582,1758584,1758588,1758842,1759019,1759212,1759224,1759227,1759252,1759274,1759513-1759516,1759611,1759757,1759785-1759790,1760005,1760022,1760109-1760110,1760135,1760200-1760201,1760227,1760300,1760397,1760446,1760454,1760640,1760648,1761057,1761422,1761491,1761498,1761500-1761501,1761550,1761553,1761572,1761574,1761625-1761626,1761628,1761682,1761740,1761752,1762051-1762053,1762123,176216
Re: svn commit: r1798977 - in /tomcat/trunk: conf/logging.properties java/org/apache/juli/AsyncFileHandler.java java/org/apache/juli/FileHandler.java test/org/apache/juli/TestFileHandler.java webapps/
Hi, 2017-06-27 22:59 GMT+03:00 Rainer Jung: > > Am 27.06.2017 um 21:41 schrieb Rainer Jung: >> >> Hi Violeta, >> >> Am 16.06.2017 um 21:17 schrieb violet...@apache.org: >>> >>> Author: violetagg >>> Date: Fri Jun 16 19:17:39 2017 >>> New Revision: 1798977 >>> >>> URL: http://svn.apache.org/viewvc?rev=1798977=rev >>> Log: >>> Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=61105 >>> Add a new JULI FileHandler configuration for specifying the maximum >>> number of days to keep the log files. By default the log files will be >>> kept 90 days as configured in logging.properties. >>> >>> Added: >>> tomcat/trunk/test/org/apache/juli/TestFileHandler.java (with props) >>> Modified: >>> tomcat/trunk/conf/logging.properties >>> tomcat/trunk/java/org/apache/juli/AsyncFileHandler.java >>> tomcat/trunk/java/org/apache/juli/FileHandler.java >>> tomcat/trunk/webapps/docs/changelog.xml >>> tomcat/trunk/webapps/docs/logging.xml >> >> >> ... >> >>> Modified: tomcat/trunk/java/org/apache/juli/FileHandler.java >>> URL: >>> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/juli/FileHandler.java?rev=1798977=1798976=1798977=diff >>> >>> == >>> >>> --- tomcat/trunk/java/org/apache/juli/FileHandler.java (original) >>> +++ tomcat/trunk/java/org/apache/juli/FileHandler.java Fri Jun 16 >>> 19:17:39 2017 >> >> ... >> >>> @@ -74,24 +84,37 @@ import java.util.logging.LogRecord; >>> * formatter - The >>> java.util.logging.Formatter >>> *implementation class name for this Handler. Default value: >>> *java.util.logging.SimpleFormatter >>> + * maxDays - The maximum number of days to keep >>> the log >>> + *files. If the specified value is =0 then the >>> log files >>> + *will be kept on the file system forever, otherwise they will be >>> kept the >>> + *specified maximum days. Default value: -1. >>> * >>> */ >>> public class FileHandler extends Handler { >>> +public static final int DEFAULT_MAX_DAYS = -1; >>> + >>> +private static final ExecutorService DELETE_FILES_SERVICE = >>> Executors.newSingleThreadExecutor(); >> >> >> When testing the M22 release I noticed that a tomcat process was >> leftover that didn't want to shut down. I checked and I could easily >> reproduce by starting with startup.sh and then stopping with shutdown.sh >> (but not using kill). IMHO it didn't shut down, because according to a >> thread dump it had a single non-daemon thread still running (named >> "pool-1-thread-1"). Since we typically give more specific names to all >> threads we create I instrumented the Thread class to find out the >> creator of that thread and noticed, that it was created here: >> >> at java.lang.Thread.(Thread.java:677) >> at >> java.util.concurrent.Executors$DefaultThreadFactory.newThread(Executors.java:613) >> >> at >> java.util.concurrent.ThreadPoolExecutor$Worker.(ThreadPoolExecutor.java:612) >> >> at >> java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:925) >> >> at >> java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1357) >> >> at >> java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112) >> >> at >> java.util.concurrent.Executors$DelegatedExecutorService.submit(Executors.java:678) >> >> at org.apache.juli.FileHandler.clean(FileHandler.java:463) >> at org.apache.juli.FileHandler.(FileHandler.java:117) >> at >> org.apache.juli.AsyncFileHandler.(AsyncFileHandler.java:82) >> at >> org.apache.juli.AsyncFileHandler.(AsyncFileHandler.java:74) >> >> So it is the thread belonging to the above "ExecutorService >> DELETE_FILES_SERVICE". I could not see, how that thread would ever get >> stopped, so two remarks: >> >> - in order to make sure TC can shut down without problem we either need >> to stop that thread by ourselves during TC shutdown or mark it as a >> daemon thread. I guess the latter is preferred. >> >> - we should give the created thread a specific name according to its >> typical task so that it can be identified in any thread dump. That >> should be doable by the same ThreadFactory. >> >> So we need to pass a ThreadFactory to the newSingleThreadExecutor() call >> (this possibility already exists in the Executors class). To keep juli >> independent from the other TC classes, we probably need to code the >> factory inside juli, but we can borrow code from the small class >> org.apache.tomcat.util.threads.TaskThreadFactory or use code from there >> to extend the result of Executors.defaultThreadFactory() or >> Executors.privilegedThreadFactory(). > > > I should add: I only observed it for TC 9, because there the feature is active by default due to the updated juli config file, so the submit to the executor happens (attribute maxDays in logging.properties). > > On all other branches the
svn commit: r1800138 - in /tomcat/trunk: conf/catalina.policy webapps/docs/changelog.xml
Author: violetagg Date: Wed Jun 28 09:41:33 2017 New Revision: 1800138 URL: http://svn.apache.org/viewvc?rev=1800138=rev Log: Additional permission for deleting files is granted to JULI as it is required by FileHandler when running under a Security Manager. Modified: tomcat/trunk/conf/catalina.policy tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/conf/catalina.policy URL: http://svn.apache.org/viewvc/tomcat/trunk/conf/catalina.policy?rev=1800138=1800137=1800138=diff == --- tomcat/trunk/conf/catalina.policy (original) +++ tomcat/trunk/conf/catalina.policy Wed Jun 28 09:41:33 2017 @@ -72,7 +72,7 @@ grant codeBase "file:${catalina.home}/bi permission java.io.FilePermission "${catalina.base}${file.separator}logs", "read, write"; permission java.io.FilePermission - "${catalina.base}${file.separator}logs${file.separator}*", "read, write"; + "${catalina.base}${file.separator}logs${file.separator}*", "read, write, delete"; permission java.lang.RuntimePermission "shutdownHooks"; permission java.lang.RuntimePermission "getClassLoader"; Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1800138=1800137=1800138=diff == --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Wed Jun 28 09:41:33 2017 @@ -63,6 +63,12 @@ TabularData when viewing via the JMX proxy servlet. Patch provided by Alexis Hassler. (markt) + +Additional permission for deleting files is granted to JULI as it is +required by FileHandler when running under a Security Manager. The +thread that cleans the log files is marked as daemon thread. +(violetagg) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1800136 - /tomcat/trunk/java/org/apache/juli/FileHandler.java
Author: violetagg Date: Wed Jun 28 09:12:31 2017 New Revision: 1800136 URL: http://svn.apache.org/viewvc?rev=1800136=rev Log: Name the thread that cleans the log files and mark it as a daemon thread. Modified: tomcat/trunk/java/org/apache/juli/FileHandler.java Modified: tomcat/trunk/java/org/apache/juli/FileHandler.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/juli/FileHandler.java?rev=1800136=1800135=1800136=diff == --- tomcat/trunk/java/org/apache/juli/FileHandler.java (original) +++ tomcat/trunk/java/org/apache/juli/FileHandler.java Wed Jun 28 09:12:31 2017 @@ -29,6 +29,8 @@ import java.io.UnsupportedEncodingExcept import java.nio.file.DirectoryStream; import java.nio.file.Files; import java.nio.file.Path; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.sql.Timestamp; import java.time.DateTimeException; import java.time.LocalDate; @@ -36,6 +38,8 @@ import java.time.format.DateTimeFormatte import java.time.temporal.ChronoUnit; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import java.util.concurrent.ThreadFactory; +import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.locks.ReadWriteLock; import java.util.concurrent.locks.ReentrantReadWriteLock; import java.util.logging.ErrorManager; @@ -93,7 +97,51 @@ import java.util.regex.Pattern; public class FileHandler extends Handler { public static final int DEFAULT_MAX_DAYS = -1; -private static final ExecutorService DELETE_FILES_SERVICE = Executors.newSingleThreadExecutor(); +private static final ExecutorService DELETE_FILES_SERVICE = +Executors.newSingleThreadExecutor(new ThreadFactory() { +private final boolean isSecurityEnabled; +private final ThreadGroup group; +private final AtomicInteger threadNumber = new AtomicInteger(1); +private final String namePrefix = "FileHandlerLogFilesCleaner-"; + +{ +SecurityManager s = System.getSecurityManager(); +this.isSecurityEnabled = s != null; +this.group = isSecurityEnabled ? s.getThreadGroup() +: Thread.currentThread().getThreadGroup(); +} + +@Override +public Thread newThread(Runnable r) { +ClassLoader loader = Thread.currentThread().getContextClassLoader(); +try { +// Threads should not be created by the webapp classloader +if (isSecurityEnabled) { + AccessController.doPrivileged((PrivilegedAction) () -> { +Thread.currentThread() + .setContextClassLoader(getClass().getClassLoader()); +return null; +}); +} else { +Thread.currentThread() + .setContextClassLoader(getClass().getClassLoader()); +} +Thread t = new Thread(group, r, +namePrefix + threadNumber.getAndIncrement()); +t.setDaemon(true); +return t; +} finally { +if (isSecurityEnabled) { + AccessController.doPrivileged((PrivilegedAction) () -> { + Thread.currentThread().setContextClassLoader(loader); +return null; +}); +} else { + Thread.currentThread().setContextClassLoader(loader); +} +} +} +}); // Constructor - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 61230] Java API for WebSocket JSR will define a standard API for creating WebSocket applications.
https://bz.apache.org/bugzilla/show_bug.cgi?id=61230 Roger Mbiamachanged: What|Removed |Added Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED -- 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 61230] New: Java API for WebSocket JSR will define a standard API for creating WebSocket applications.
https://bz.apache.org/bugzilla/show_bug.cgi?id=61230 Bug ID: 61230 Summary: Java API for WebSocket JSR will define a standard API for creating WebSocket applications. Product: Tomcat 9 Version: 9.0.0.M22 Hardware: All OS: All Status: UNCONFIRMED Severity: critical Priority: P2 Component: WebSocket Assignee: dev@tomcat.apache.org Reporter: webmas...@angosso.net Target Milestone: - Created attachment 35084 --> https://bz.apache.org/bugzilla/attachment.cgi?id=35084=edit localhost API * jasper.jar (Jasper 2 Compiler and Runtime) * servlet-api.jar (Servlet 2.5 API) Editing $CATALINA_HOME/conf/web.xml to uncomment the "/servlet/*" servlet-mapping definition. affected character sets see: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/examples/WEB-INF/classes/websocket/ExamplesConfig.java?view=log=1800129 package websocket; import java.util.HashSet; import java.util.Set; import javax.websocket.Endpoint; import javax.websocket.server.ServerApplicationConfig; import javax.websocket.server.ServerEndpointConfig; import websocket.drawboard.DrawboardEndpoint; import websocket.echo.EchoEndpoint; public class ExamplesConfig implements ServerApplicationConfig { @Override public Set getEndpointConfigs( Setscanned) { Set result = new HashSet(); if (scanned.contains(EchoEndpoint.class)) { result.add(ServerEndpointConfig.Builder.create( EchoEndpoint.class, "/websocket/echoProgrammatic").build()); } if (scanned.contains(DrawboardEndpoint.class)) { result.add(ServerEndpointConfig.Builder.create( DrawboardEndpoint.class, "/websocket/drawboard").build()); } return result; } Revision:1800129 Wed jun 28 09:40:23 2017 UTC by Roger -- 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
[ANN] Apache Tomcat 8.5.16 available
The Apache Tomcat team announces the immediate availability of Apache Tomcat 8.5.16. Tomcat 8.x users should normally be using 8.5.x releases in preference to 8.0.x releases. Apache Tomcat 8 is an open source software implementation of the Java Servlet, JavaServer Pages, Java Unified Expression Language, Java WebSocket and Java Authentication Service Provider Interface for Containers technologies. Apache Tomcat 8.5.x is intended to replace 8.0.x and includes new features pulled forward from the 9.0.x branch. The notable changes since 8.5.15 include: - Add a new JULI FileHandler configuration for specifying the maximum number of days to keep the log files. By default the log files will be kept indefinitely. - Improvements to enable the Manager and HostManager to work in the default configuration when working under a security manager - Introduce new API o.a.tomcat.websocket.WsSession#suspend/ o.a.tomcat.websocket.WsSession#resume that can be used to suspend/resume reading of the incoming messages. Please refer to the change log for the complete list of changes: http://tomcat.apache.org/tomcat-8.5-doc/changelog.html Downloads: http://tomcat.apache.org/download-80.cgi Migration guides from Apache Tomcat 5.x, 6.x, 7.x and 8.0.x: http://tomcat.apache.org/migration.html Enjoy! - The Apache Tomcat team - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org