Re: svn commit: r1846691 - /tomcat/trunk/TOMCAT-NEXT.txt
On November 16, 2018 12:00:30 AM UTC, "Rémy Maucherat" wrote: >On Fri, Nov 16, 2018 at 12:35 AM wrote: > >> 2. Remove org.apache.tomcat.jni and replace with the minimum >necessary to >> interface with OpenSSL and clones. >> +We might want to park this one until we see what is available >direct >> from >> +the JRE with project Panama. >> > >Ok, I guess the OpenSSL code is here and works already, it could simply >be >a bit nicer. So no big loss. But I don't see any reason why that >approach >wouldn't be an order of magnitude more complex than the simple JNI >wrapper >we would have. Besides building it I guess (but the JDK req could be a >problem). I'm still experimenting but if Panama does what I think It will, it would remove the need for the native wrapper altogether. I think that is worth pursuing. I agree the JDK requirement is an issue. As is the fact that Panama isn't delivered yet. The debate I was hoping to start is exactly the question you asked. Do we want to simplify native for Tomcat 10 and then make another change in what is probably the Tomcat 11 timeframe? Or do we want to leave native as is for Tomcat 10 and have one change in Tomcat 11? Given the current uncertainties I think we should switch to a simpler wrapper in Tomcat 10 but i think it is worth discussing as others may view this differently. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 62892] Memory leak when performing client certificate validation with OCSP
https://bz.apache.org/bugzilla/show_bug.cgi?id=62892 --- Comment #11 from Sander Benschop --- It worked! I updated the code yesterday and the server still hasn't run out of memory. In the graph I can see that it stabilises nicely. Thank you so much jfclere! :-) -- 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 62910] tomcat-jdbc global pool transaction problem
https://bz.apache.org/bugzilla/show_bug.cgi?id=62910 --- Comment #3 from zhengfc --- The context.xml and server.xml, I deploy multi app use the game connection will cause transaction problem. -context.xml- -server.xml-- -- 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: r1846691 - /tomcat/trunk/TOMCAT-NEXT.txt
On Fri, Nov 16, 2018 at 12:35 AM wrote: > 2. Remove org.apache.tomcat.jni and replace with the minimum necessary to > interface with OpenSSL and clones. > +We might want to park this one until we see what is available direct > from > +the JRE with project Panama. > Ok, I guess the OpenSSL code is here and works already, it could simply be a bit nicer. So no big loss. But I don't see any reason why that approach wouldn't be an order of magnitude more complex than the simple JNI wrapper we would have. Besides building it I guess (but the JDK req could be a problem). Rémy
svn commit: r1846691 - /tomcat/trunk/TOMCAT-NEXT.txt
Author: markt Date: Thu Nov 15 23:35:48 2018 New Revision: 1846691 URL: http://svn.apache.org/viewvc?rev=1846691=rev Log: Note project Panama Add Content-Type clean-up Modified: tomcat/trunk/TOMCAT-NEXT.txt Modified: tomcat/trunk/TOMCAT-NEXT.txt URL: http://svn.apache.org/viewvc/tomcat/trunk/TOMCAT-NEXT.txt?rev=1846691=1846690=1846691=diff == --- tomcat/trunk/TOMCAT-NEXT.txt (original) +++ tomcat/trunk/TOMCAT-NEXT.txt Thu Nov 15 23:35:48 2018 @@ -34,6 +34,12 @@ New items for 10.0.x onwards: 2. Remove org.apache.tomcat.jni and replace with the minimum necessary to interface with OpenSSL and clones. +We might want to park this one until we see what is available direct from +the JRE with project Panama. 3. Remove the ExtensionValidator and associated classes (assuming that the minimum Java version is Java 9 or later). + +4. Clean-up content-type header processing. Remove the optional space after the +';' character (if any). Don't mutate the header if there is no charset +parameter. See BZ 62912 for some discussion and additional references. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 62912] Tomcat adds a space character in the Content-Type header if this one has a ; character right after
https://bz.apache.org/bugzilla/show_bug.cgi?id=62912 --- Comment #8 from Mark Thomas --- Chris, you make a good point about not mutating the value unnecessarily. I did look briefly at what would be involved. It looks simple to do. My concern is that it has broadly the same potential to trigger regressions as removing the space - although at least ones that could be fixed by an application change. Probably something else to consider for Tomcat 10 alongside removing the space. -- 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: r1846690 - in /tomcat/trunk/java: javax/el/ org/apache/catalina/core/ org/apache/catalina/filters/ org/apache/catalina/ha/session/ org/apache/catalina/ha/tcp/ org/apache/catalina/manager/
Author: markt Date: Thu Nov 15 23:10:40 2018 New Revision: 1846690 URL: http://svn.apache.org/viewvc?rev=1846690=rev Log: Updated translations Added: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/LocalStrings_ru.properties tomcat/trunk/java/org/apache/catalina/tribes/jmx/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/valves/LocalStrings_ru.properties tomcat/trunk/java/org/apache/tomcat/dbcp/dbcp2/LocalStrings_fr.properties tomcat/trunk/java/org/apache/tomcat/util/LocalStrings_ru.properties Modified: tomcat/trunk/java/javax/el/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/core/LocalStrings_es.properties tomcat/trunk/java/org/apache/catalina/core/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/filters/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/ha/tcp/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/manager/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/manager/LocalStrings_ru.properties tomcat/trunk/java/org/apache/catalina/manager/host/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/realm/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/security/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/session/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/startup/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/tribes/group/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/tribes/io/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/tribes/membership/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/tribes/transport/bio/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/valves/LocalStrings_es.properties tomcat/trunk/java/org/apache/catalina/valves/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/webresources/LocalStrings_fr.properties tomcat/trunk/java/org/apache/coyote/LocalStrings_fr.properties tomcat/trunk/java/org/apache/coyote/http11/LocalStrings_fr.properties tomcat/trunk/java/org/apache/coyote/http2/LocalStrings_fr.properties tomcat/trunk/java/org/apache/jasper/resources/LocalStrings_fr.properties tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/LocalStrings_fr.properties tomcat/trunk/java/org/apache/tomcat/util/net/LocalStrings_fr.properties tomcat/trunk/java/org/apache/tomcat/util/net/jsse/LocalStrings_fr.properties tomcat/trunk/java/org/apache/tomcat/util/net/openssl/LocalStrings_fr.properties tomcat/trunk/java/org/apache/tomcat/util/scan/LocalStrings_fr.properties tomcat/trunk/java/org/apache/tomcat/websocket/LocalStrings_fr.properties tomcat/trunk/java/org/apache/tomcat/websocket/pojo/LocalStrings_fr.properties Modified: tomcat/trunk/java/javax/el/LocalStrings_fr.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/el/LocalStrings_fr.properties?rev=1846690=1846689=1846690=diff == --- tomcat/trunk/java/javax/el/LocalStrings_fr.properties (original) +++ tomcat/trunk/java/javax/el/LocalStrings_fr.properties Thu Nov 15 23:10:40 2018 @@ -14,9 +14,11 @@ # limitations under the License. elProcessor.defineFunctionInvalidMethod=La méthode [{0}] sur la classe [{1}] n''est pas une méthode statique publique +elProcessor.defineFunctionInvalidParameterList=La liste de paramètres [{0}] pour la méthode [{1}] de la classe [{2}] n''est pas valide importHandler.ambiguousStaticImport=L''import statique [{0}] ne peut pas être traité parce qu''il est en conflit avec [{1}] qui a déjà été importé importHandler.classNotFound=La classe [{0}] n''a pu être importée, vu qu''on ne l''a pas trouvée importHandler.invalidClassNameForStatic=La classe [{0}] spécifiée pour l''importation statique [{1}] n''est pas valide +importHandler.invalidStaticName=Le nom de la méthode statique ou champ à importer [{0}] doit inclure une calsse propertyNotWritable=La propriété [{1}] ne peut pas être écrite pour le type [{0}] Modified: tomcat/trunk/java/org/apache/catalina/core/LocalStrings_es.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/LocalStrings_es.properties?rev=1846690=1846689=1846690=diff == --- tomcat/trunk/java/org/apache/catalina/core/LocalStrings_es.properties [UTF-8] (original) +++ tomcat/trunk/java/org/apache/catalina/core/LocalStrings_es.properties [UTF-8] Thu Nov 15 23:10:40 2018 @@
svn commit: r1846688 - /tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java
Author: markt Date: Thu Nov 15 22:21:40 2018 New Revision: 1846688 URL: http://svn.apache.org/viewvc?rev=1846688=rev Log: Refactor to use ExpandWar to copy files. Identified by Simian. Modified: tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java Modified: tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java?rev=1846688=1846687=1846688=diff == --- tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java (original) +++ tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java Thu Nov 15 22:21:40 2018 @@ -17,7 +17,6 @@ package org.apache.catalina.manager; import java.io.File; -import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; @@ -818,7 +817,7 @@ public class ManagerServlet extends Http "managerServlet.mkdirFail",configBase)); return; } -if (copy(new File(config), +if (ExpandWar.copy(new File(config), new File(configBase, baseName + ".xml")) == false) { throw new Exception("Could not copy config file from path '" + config + "'"); @@ -841,7 +840,7 @@ public class ManagerServlet extends Http } if (tag != null) { // Copy WAR to the host's appBase -copy(uploadedWar, deployedWar); +ExpandWar.copy(uploadedWar, deployedWar); } // Perform new deployment check(name); @@ -900,7 +899,7 @@ public class ManagerServlet extends Http deployedWar)); return; } -copy(localWar, deployedWar); +ExpandWar.copy(localWar, deployedWar); // Perform new deployment check(name); } finally { @@ -1000,7 +999,7 @@ public class ManagerServlet extends Http "managerServlet.deleteFail", localConfig)); return; } -copy(new File(config), localConfig); +ExpandWar.copy(new File(config), localConfig); } if (war != null) { File localWar; @@ -1014,7 +1013,7 @@ public class ManagerServlet extends Http "managerServlet.deleteFail", localWar)); return; } -copy(new File(war), localWar); +ExpandWar.copy(new File(war), localWar); } // Perform new deployment check(name); @@ -1696,75 +1695,6 @@ public class ManagerServlet extends Http return false; } -/** - * Copy the specified file or directory to the destination. - * - * @param src File object representing the source - * @param dest File object representing the destination - * @return true if the copy was successful - */ -public static boolean copy(File src, File dest) { -boolean result = false; -try { -if( src != null && -!src.getCanonicalPath().equals(dest.getCanonicalPath()) ) { -result = copyInternal(src, dest, new byte[4096]); -} -} catch (IOException e) { -e.printStackTrace(); -} -return result; -} - - -/** - * Copy the specified file or directory to the destination. - * - * @param src File object representing the source - * @param dest File object representing the destination - * @param buf Temp byte buffer - * @return true if the copy was successful - */ -public static boolean copyInternal(File src, File dest, byte[] buf) { - -boolean result = true; - -String files[] = null; -if (src.isDirectory()) { -files = src.list(); -result = dest.mkdir(); -} else { -files = new String[1]; -files[0] = ""; -} -if (files == null) { -files = new String[0]; -} -for (int i = 0; (i < files.length) && result; i++) { -File fileSrc = new File(src, files[i]); -File fileDest = new File(dest, files[i]); -if (fileSrc.isDirectory()) { -result = copyInternal(fileSrc, fileDest, buf); -} else { -try (FileInputStream is = new
svn commit: r1846686 - /tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java
Author: markt Date: Thu Nov 15 22:11:37 2018 New Revision: 1846686 URL: http://svn.apache.org/viewvc?rev=1846686=rev Log: Remove unnecessary check Modified: tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java Modified: tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java?rev=1846686=1846685=1846686=diff == --- tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java (original) +++ tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java Thu Nov 15 22:11:37 2018 @@ -940,7 +940,7 @@ public class ManagerServlet extends Http } if (debug >= 1) { -if (config != null && config.length() > 0) { +if (config != null) { if (war != null) { log("install: Installing context configuration at '" + config + "' from '" + war + "'"); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1846679 - in /tomcat/trunk/java/org/apache/catalina: ant/AbstractCatalinaTask.java manager/ManagerServlet.java startup/HostConfig.java
Author: markt Date: Thu Nov 15 20:43:32 2018 New Revision: 1846679 URL: http://svn.apache.org/viewvc?rev=1846679=rev Log: Refactor to use IOTools to copy from InputStream to OutputStream Modified: tomcat/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java tomcat/trunk/java/org/apache/catalina/startup/HostConfig.java Modified: tomcat/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java?rev=1846679=1846678=1846679=diff == --- tomcat/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java (original) +++ tomcat/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java Thu Nov 15 20:43:32 2018 @@ -16,10 +16,10 @@ */ package org.apache.catalina.ant; -import java.io.BufferedOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; +import java.io.OutputStream; import java.net.Authenticator; import java.net.HttpURLConnection; import java.net.PasswordAuthentication; @@ -210,17 +210,8 @@ public abstract class AbstractCatalinaTa // Send the request data (if any) if (istream != null) { -try (BufferedOutputStream ostream = new BufferedOutputStream( -hconn.getOutputStream(), 1024)) { -byte buffer[] = new byte[1024]; -while (true) { -int n = istream.read(buffer); -if (n < 0) { -break; -} -ostream.write(buffer, 0, n); -} -ostream.flush(); +try (OutputStream ostream = hconn.getOutputStream()) { +IOTools.flow(istream, ostream); } finally { try { istream.close(); Modified: tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java?rev=1846679=1846678=1846679=diff == --- tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java (original) +++ tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java Thu Nov 15 20:43:32 2018 @@ -16,11 +16,11 @@ */ package org.apache.catalina.manager; -import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; +import java.io.OutputStream; import java.io.PrintWriter; import java.security.cert.Certificate; import java.security.cert.X509Certificate; @@ -61,6 +61,7 @@ import org.apache.catalina.connector.Con import org.apache.catalina.core.StandardHost; import org.apache.catalina.startup.ExpandWar; import org.apache.catalina.util.ContextName; +import org.apache.catalina.util.IOTools; import org.apache.catalina.util.ServerInfo; import org.apache.coyote.ProtocolHandler; import org.apache.coyote.http11.AbstractHttp11Protocol; @@ -1665,16 +1666,8 @@ public class ManagerServlet extends Http } try (ServletInputStream istream = request.getInputStream(); -BufferedOutputStream ostream = -new BufferedOutputStream(new FileOutputStream(war), 1024)) { -byte buffer[] = new byte[1024]; -while (true) { -int n = istream.read(buffer); -if (n < 0) { -break; -} -ostream.write(buffer, 0, n); -} +OutputStream ostream = new FileOutputStream(war)) { +IOTools.flow(istream, ostream); } catch (IOException e) { if (war.exists() && !war.delete()) { writer.println( @@ -1682,7 +1675,6 @@ public class ManagerServlet extends Http } throw e; } - } Modified: tomcat/trunk/java/org/apache/catalina/startup/HostConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/HostConfig.java?rev=1846679=1846678=1846679=diff == --- tomcat/trunk/java/org/apache/catalina/startup/HostConfig.java (original) +++ tomcat/trunk/java/org/apache/catalina/startup/HostConfig.java Thu Nov 15 20:43:32 2018 @@ -16,12 +16,12 @@ */ package org.apache.catalina.startup; -import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; +import java.io.OutputStream; import java.net.MalformedURLException; import java.net.URL;
[Bug 62912] Tomcat adds a space character in the Content-Type header if this one has a ; character right after
https://bz.apache.org/bugzilla/show_bug.cgi?id=62912 --- Comment #7 from Christopher Schultz --- (In reply to Franos from comment #6) > What is quite disturbing to me is: > - space character is optional as you mentioned > - so why if, in the servlet code, you set a Content-Type with a ; > character >and no space after, even if the space character is optional, you add > this >one just after the ; This is being added because the header you are adding must be parsed by Tomcat *just in case there is a character set present* so it can be specially-handled. Since Tomcat parses the content-type (as set by the application), it can re-assemble the content-type header from the parsed values. > Yes you are right when saying it could be fixed at client-side but sometimes > there are some situations where some client versions couldn't be updated. > This is our case: those client versions are already deployed on the field > and no easy way to update them unfortunately. Okay, so we have some clients that vitally depend upon the space being added and other clients that vitally depend upon the space *not* being added. Why should your clients win over the others? > So is there any way to have a Tomcat (hidden) setting, in order to not have > a space character after a ; character. The real question is "why is Tomcat bothering to re-format the content-type header when it does not have to do so?". I could see an argument for a "don't mutate content-type headers when no charset is present", but that's not what you asked for. -- 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 62910] tomcat-jdbc global pool transaction problem
https://bz.apache.org/bugzilla/show_bug.cgi?id=62910 Christopher Schultz changed: What|Removed |Added Status|NEW |NEEDINFO -- 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 62910] tomcat-jdbc global pool transaction problem
https://bz.apache.org/bugzilla/show_bug.cgi?id=62910 --- Comment #2 from Christopher Schultz --- Please tell us how you are configuring your connection pool and also how you are using it. There are plenty of ways to misuse a connection pool that do not mean the pool itself has bugs. -- 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 62912] Tomcat adds a space character in the Content-Type header if this one has a ; character right after
https://bz.apache.org/bugzilla/show_bug.cgi?id=62912 --- Comment #6 from Franos --- Hello Thomas, I try to figure out what you're saying. If I have well understood: - If, in the Content-Type value you have a semi-column followed by a string, you can have or not (because you mention it is optional) after the semi-column a space character, right ? - The current Tomcat implementation is to add a space character after the semi-column in any case. What is quite disturbing to me is: - space character is optional as you mentioned - so why if, in the servlet code, you set a Content-Type with a ; character and no space after, even if the space character is optional, you add this one just after the ; Yes you are right when saying it could be fixed at client-side but sometimes there are some situations where some client versions couldn't be updated. This is our case: those client versions are already deployed on the field and no easy way to update them unfortunately. So is there any way to have a Tomcat (hidden) setting, in order to not have a space character after a ; character. Best Regards. -- 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 62912] Tomcat adds a space character in the Content-Type header if this one has a ; character right after
https://bz.apache.org/bugzilla/show_bug.cgi?id=62912 --- Comment #4 from Mark Thomas --- I'll be clearer. There is no Tomcat bug here. Tomcat's response is consistent with what the Servlet requested and compliant with RFC 7201. You haven't explained what the problem is but the working assumption is that the user agent (client) you are using can't handle the space Tomcat inserts. That is a bug in the user agent and should be fixed there. -- 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 62912] Tomcat adds a space character in the Content-Type header if this one has a ; character right after
https://bz.apache.org/bugzilla/show_bug.cgi?id=62912 --- Comment #5 from Franos --- Created attachment 36262 --> https://bz.apache.org/bugzilla/attachment.cgi?id=36262=edit The war to be deployed Then target http://localhost:8080/MyServletReturningContentTypeWithComma/test -- 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 62912] Tomcat adds a space character in the Content-Type header if this one has a ; character right after
https://bz.apache.org/bugzilla/show_bug.cgi?id=62912 --- Comment #3 from Franos --- Hello, I can provide you a test case if you want ? Just tell me. Best Regards. -- 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 62912] Tomcat adds a space character in the Content-Type header if this one has a ; character right after
https://bz.apache.org/bugzilla/show_bug.cgi?id=62912 --- Comment #2 from Franos --- Hello Mark, Not sure to have really understand what you said. You talk about charset but the content I want to deliver to the client is a binary content. My disappointment is that I set a content type for the response that seems to be modified by Tomcat. Indeed, I set it to "application/xxx.yyy-data;version=1.0" and the client get a Content-Type set to "application/xxx.yyy-data; version=1.0": a space character has been introduced right after the ; character. I have tested this with different User-Agent s. Curl: Request headers: User-Agent: curl/7.40.0 Host: localhost:8080 Accept: */* Response headers: HTTP/1.1 200 Content-Type: application/xxx.yyy-data; version=1.0 Transfer-Encoding: chunked Date: Thu, 15 Nov 2018 15:16:06 GMT Firefox: Request headers: User-Agent: Mozilla/5.0 (Windows NT 6.1; W…) Gecko/20100101 Firefox/62.0 Host: localhost:8080 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Response headers: HTTP/1.1 200 Content-Type: application/xxx.yyy-data; version=1.0 Transfer-Encoding: chunked Chrome: Request headers: User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 Host: localhost:8080 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8 Response headers: HTTP/1.1 200 Content-Type: application/xxx.yyy-data; version=1.0 Transfer-Encoding: chunked Date: Thu, 15 Nov 2018 16:20:20 GMT So whatever the User-Agent used, the Content-Type is application/xxx.yyy-data; version=1.0 (with a space character right after the ; character) whereas I have written in my servlet code response.setContentType("application/xxx.yyy-data;version=1.0"); (no space character after the ; character). Is it clearer ? Best Regards. -- 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 62913] Files not being compressed when using HTTP2
https://bz.apache.org/bugzilla/show_bug.cgi?id=62913 Mark Thomas changed: What|Removed |Added Resolution|--- |INVALID OS||All Status|NEW |RESOLVED --- Comment #1 from Mark Thomas --- Compression has to be configured explicitly for HTTP/2. The configuration is not inherited from the HTTP/1.1 config. http://tomcat.apache.org/tomcat-9.0-doc/config/http2.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 62913] New: Files not being compressed when using HTTP2
https://bz.apache.org/bugzilla/show_bug.cgi?id=62913 Bug ID: 62913 Summary: Files not being compressed when using HTTP2 Product: Tomcat 9 Version: 9.0.13 Hardware: PC Status: NEW Severity: minor Priority: P2 Component: Catalina Assignee: dev@tomcat.apache.org Reporter: emry.eg...@calero.com Target Milestone: - Overview: When serving content using the HTTP2 protocol, the content is not compressed. Steps to Reproduce: 1. Setup Tomcat to use HTTPS and the HTTP/2 upgrade protocol 2. Turn on file compression in the connector (i used compression="force" so all files should be compressed) 3. Using curl, verify the files are returning compressed with the correct Content-Encoding response header To test with HTTP1.1 (returns correctly) C:\temp\curl-7.62.0-win64-mingw\bin>curl -H "accept-encoding: gzip, deflate, br" -I https://e-cc-p-build02:7100/index.jsp -k --http1.1 HTTP/1.1 200 vary: accept-encoding Content-Encoding: gzip Content-Type: text/html;charset=UTF-8 Transfer-Encoding: chunked Date: Thu, 15 Nov 2018 15:06:55 GMT To test with HTTP2 (missing headers indicating file was compressed) C:\temp\curl-7.62.0-win64-mingw\bin>curl -H "accept-encoding: gzip, deflate, br" -I https://e-cc-p-build02:7100/index.jsp -k --http2 HTTP/2 200 content-type: text/html;charset=UTF-8 date: Thu, 15 Nov 2018 15:08:55 GMT Actual Results: Files are served to the client uncompressed when using HTTP2 when compression is enabled Expected Results: Files are served to the client compressed when using HTTP2 when compression is enabled -- 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: r1846664 - /tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java
Author: markt Date: Thu Nov 15 15:11:29 2018 New Revision: 1846664 URL: http://svn.apache.org/viewvc?rev=1846664=rev Log: Refactor to remove duplicate functionality (reported by Simian) Modified: tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java Modified: tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java?rev=1846664=1846663=1846664=diff == --- tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java (original) +++ tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java Thu Nov 15 15:11:29 2018 @@ -1538,7 +1538,7 @@ public class ManagerServlet extends Http writer.println(smClient.getString( "managerServlet.deleteFail", war)); return; -} else if (dir.exists() && !undeployDir(dir)) { +} else if (dir.exists() && !ExpandWar.delete(dir, false)) { writer.println(smClient.getString( "managerServlet.deleteFail", dir)); return; @@ -1644,35 +1644,6 @@ public class ManagerServlet extends Http } -/** - * Delete the specified directory, including all of its contents and - * subdirectories recursively. The code assumes that the directory exists. - * - * @param dir File object representing the directory to be deleted. - * @return true if the deletion was successful - */ -protected boolean undeployDir(File dir) { - -String files[] = dir.list(); -if (files == null) { -files = new String[0]; -} -for (int i = 0; i < files.length; i++) { -File file = new File(dir, files[i]); -if (file.isDirectory()) { -if (!undeployDir(file)) { -return false; -} -} else { -if (!file.delete()) { -return false; -} -} -} -return dir.delete(); -} - - /** * Upload the WAR file included in this request, and store it at the * specified file location. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 53553] [PATCH] Deploy uploaded WAR with context.xml from server
https://bz.apache.org/bugzilla/show_bug.cgi?id=53553 Mark Thomas changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #1 from Mark Thomas --- Sorry it took so long to get to this. Many thanks for the patch. It applied fairly cleanly with only a few small changes required due to the passage of time. Fixed in: - trunk for 9.0.14 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
svn commit: r1846662 - in /tomcat/trunk: java/org/apache/catalina/manager/ManagerServlet.java webapps/docs/changelog.xml webapps/docs/manager-howto.xml
Author: markt Date: Thu Nov 15 15:03:58 2018 New Revision: 1846662 URL: http://svn.apache.org/viewvc?rev=1846662=rev Log: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=53553 Add the ability to specify a context.xml from the server to use when uploading a web application for deployment with the Manager web application. Patch provided by Anton Lindström. Modified: tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java tomcat/trunk/webapps/docs/changelog.xml tomcat/trunk/webapps/docs/manager-howto.xml Modified: tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java?rev=1846662=1846661=1846662=diff == --- tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java (original) +++ tomcat/trunk/java/org/apache/catalina/manager/ManagerServlet.java Thu Nov 15 15:03:58 2018 @@ -430,6 +430,7 @@ public class ManagerServlet extends Http if (path != null) { cn = new ContextName(path, request.getParameter("version")); } +String config = request.getParameter("config"); String tag = request.getParameter("tag"); boolean update = false; if ((request.getParameter("update") != null) @@ -449,7 +450,7 @@ public class ManagerServlet extends Http if (command == null) { writer.println(smClient.getString("managerServlet.noCommand")); } else if (command.equals("/deploy")) { -deploy(writer, cn, tag, update, request, smClient); +deploy(writer, config, cn, tag, update, request, smClient); } else { writer.println(smClient.getString("managerServlet.unknownCommand", command)); @@ -727,6 +728,7 @@ public class ManagerServlet extends Http * at the specified context path. * * @param writer Writer to render results to + * @param config URL of the context configuration file to be installed * @param cn Name of the application to be installed * @param tag Tag to be associated with the webapp * @param update Flag that indicates that any existing app should be @@ -735,12 +737,21 @@ public class ManagerServlet extends Http * @param smClient i18n messages using the locale of the client */ protected synchronized void deploy -(PrintWriter writer, ContextName cn, +(PrintWriter writer, String config, ContextName cn, String tag, boolean update, HttpServletRequest request, StringManager smClient) { +if (config != null && config.length() == 0) { +config = null; +} + if (debug >= 1) { -log("deploy: Deploying web application '" + cn + "'"); +if (config == null) { +log("deploy: Deploying web application '" + cn + "'"); +} else { +log("deploy: Deploying web application '" + cn + "' " + +"with context configuration at '" + config + "'"); +} } // Validate the requested context path @@ -760,6 +771,10 @@ public class ManagerServlet extends Http return; } +if (config != null && (config.startsWith("file:"))) { +config = config.substring("file:".length()); +} + File deployedWar = new File(host.getAppBaseFile(), baseName + ".war"); // Determine full path for uploaded WAR @@ -796,6 +811,18 @@ public class ManagerServlet extends Http } else { addServiced(name); try { +if (config != null) { +if (!configBase.mkdirs() && !configBase.isDirectory()) { +writer.println(smClient.getString( +"managerServlet.mkdirFail",configBase)); +return; +} +if (copy(new File(config), +new File(configBase, baseName + ".xml")) == false) { +throw new Exception("Could not copy config file from path '" + +config + "'"); +} +} // Upload WAR uploadWar(writer, request, uploadedWar, smClient); if (update && tag == null) { Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1846662=1846661=1846662=diff == --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Thu Nov 15 15:03:58 2018 @@ -126,6 +126,15 @@ + + + +53553:
svn commit: r1846661 - in /tomcat/trunk/java/org/apache/catalina/startup: LocalStrings.properties Tomcat.java
Author: remm Date: Thu Nov 15 15:03:45 2018 New Revision: 1846661 URL: http://svn.apache.org/viewvc?rev=1846661=rev Log: Add a simple main method to use from a Maven packager pom. Add new Strings to translate ... Sorry. Modified: tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties tomcat/trunk/java/org/apache/catalina/startup/Tomcat.java Modified: tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties?rev=1846661=1846660=1846661=diff == --- tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties [UTF-8] (original) +++ tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties [UTF-8] Thu Nov 15 15:03:45 2018 @@ -142,9 +142,11 @@ hostConfig.undeployVersion=Undeploying o passwdUserDatabase.readFail=Failed to obtain a complete set of users from /etc/passwd +tomcat.invalidCommandLine=Invalid command line arguments [{0}] tomcat.baseDirMakeFail=Unable to create the directory [{0}] to use as the base directory tomcat.baseDirNotDir=The location [{0}] specified for the base directory is not a directory tomcat.homeDirMakeFail=Unable to create the directory [{0}] to use as the home directory +tomcat.noContextXml=Unable to determine web application context.xml [{0}] userConfig.database=Exception loading user database userConfig.deploy=Deploying web application for user [{0}] Modified: tomcat/trunk/java/org/apache/catalina/startup/Tomcat.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/Tomcat.java?rev=1846661=1846660=1846661=diff == --- tomcat/trunk/java/org/apache/catalina/startup/Tomcat.java (original) +++ tomcat/trunk/java/org/apache/catalina/startup/Tomcat.java Thu Nov 15 15:03:45 2018 @@ -17,8 +17,11 @@ package org.apache.catalina.startup; import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; import java.io.IOException; import java.net.MalformedURLException; +import java.net.URI; import java.net.URL; import java.security.Principal; import java.util.ArrayList; @@ -1307,7 +1310,7 @@ public class Tomcat { result = webAppContextXml.toURI().toURL(); } catch (MalformedURLException e) { Logger.getLogger(getLoggerName(getHost(), contextName)).log(Level.WARNING, -"Unable to determine web application context.xml " + docBase, e); +sm.getString("tomcat.noContextXml", docBase), e); } } return result; @@ -1322,8 +1325,73 @@ public class Tomcat { } } catch (IOException e) { Logger.getLogger(getLoggerName(getHost(), contextName)).log(Level.WARNING, -"Unable to determine web application context.xml " + docBase, e); +sm.getString("tomcat.noContextXml", docBase), e); } return result; } + +/** + * Main executable method for use with a Maven packager. + * @param args the command line arguments + * @throws Exception if an error occurs + */ +public static void main(String[] args) throws Exception { +org.apache.catalina.startup.Tomcat tomcat = new org.apache.catalina.startup.Tomcat(); +// Create a Catalina instance and let it parse the configuration files +// It will also set a shutdown hook to stop the Server when needed +tomcat.init(new ConfigurationSource() { +protected final File userDir = new File(System.getProperty("user.dir")); +protected final URI userDirUri = userDir.toURI(); +@Override +public Resource getResource(String name) throws IOException { +File f = new File(name); +if (!f.isAbsolute()) { +f = new File(userDir, name); +} +if (f.isFile()) { +return new Resource(new FileInputStream(f), f.toURI()); +} else { +throw new FileNotFoundException(name); +} +} +@Override +public URI getURI(String name) { +File f = new File(name); +if (!f.isAbsolute()) { +f = new File(userDir, name); +} +if (f.isFile()) { +return f.toURI(); +} +return userDirUri.resolve(name); +} +}); +boolean await = false; +String path = ""; +// Process command line parameters +for (int i = 0; i < args.length; i++) { +if (args[i].equals("--war")) { +if (++i >= args.length) { +throw new
svn commit: r1846660 - /tomcat/trunk/java/org/apache/tomcat/util/net/Nio2Endpoint.java
Author: remm Date: Thu Nov 15 15:00:15 2018 New Revision: 1846660 URL: http://svn.apache.org/viewvc?rev=1846660=rev Log: Improve comment according to current behavior. Modified: tomcat/trunk/java/org/apache/tomcat/util/net/Nio2Endpoint.java Modified: tomcat/trunk/java/org/apache/tomcat/util/net/Nio2Endpoint.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/Nio2Endpoint.java?rev=1846660=1846659=1846660=diff == --- tomcat/trunk/java/org/apache/tomcat/util/net/Nio2Endpoint.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/Nio2Endpoint.java Thu Nov 15 15:00:15 2018 @@ -132,13 +132,13 @@ public class Nio2Endpoint extends Abstra public void bind() throws Exception { // Create worker collection -if ( getExecutor() == null ) { +if (getExecutor() == null) { createExecutor(); } if (getExecutor() instanceof ExecutorService) { threadGroup = AsynchronousChannelGroup.withThreadPool((ExecutorService) getExecutor()); } -// AsynchronousChannelGroup currently needs exclusive access to its executor service +// AsynchronousChannelGroup needs exclusive access to its executor service if (!internalExecutor) { log.warn(sm.getString("endpoint.nio2.exclusiveExecutor")); } @@ -146,11 +146,10 @@ public class Nio2Endpoint extends Abstra serverSock = AsynchronousServerSocketChannel.open(threadGroup); socketProperties.setProperties(serverSock); InetSocketAddress addr = new InetSocketAddress(getAddress(), getPortWithOffset()); -serverSock.bind(addr,getAcceptCount()); +serverSock.bind(addr, getAcceptCount()); -// Initialize thread count defaults for acceptor, poller +// NIO 2 does not use a dedicated accept thread if (acceptorThreadCount != 1) { -// NIO2 does not allow any form of IO concurrency acceptorThreadCount = 1; } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1846659 - /tomcat/trunk/java/org/apache/catalina/core/StandardService.java
Author: remm Date: Thu Nov 15 14:59:23 2018 New Revision: 1846659 URL: http://svn.apache.org/viewvc?rev=1846659=rev Log: Refactor to reduce code duplication. Modified: tomcat/trunk/java/org/apache/catalina/core/StandardService.java Modified: tomcat/trunk/java/org/apache/catalina/core/StandardService.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardService.java?rev=1846659=1846658=1846659=diff == --- tomcat/trunk/java/org/apache/catalina/core/StandardService.java (original) +++ tomcat/trunk/java/org/apache/catalina/core/StandardService.java Thu Nov 15 14:59:23 2018 @@ -22,9 +22,7 @@ import java.beans.PropertyChangeSupport; import java.util.ArrayList; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledThreadPoolExecutor; -import java.util.concurrent.ThreadFactory; import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicInteger; import javax.management.ObjectName; @@ -43,6 +41,7 @@ import org.apache.catalina.util.Lifecycl import org.apache.juli.logging.Log; import org.apache.juli.logging.LogFactory; import org.apache.tomcat.util.res.StringManager; +import org.apache.tomcat.util.threads.TaskThreadFactory; /** @@ -273,7 +272,7 @@ public class StandardService extends Lif } else { ScheduledThreadPoolExecutor scheduledThreadPoolExecutor = new ScheduledThreadPoolExecutor(1, -new UtilityThreadFactory(getName() + "-utility-", utilityThreadsAsDaemon)); +new TaskThreadFactory(getName() + "-utility-", utilityThreadsAsDaemon, Thread.NORM_PRIORITY)); scheduledThreadPoolExecutor.setMaximumPoolSize(threads); scheduledThreadPoolExecutor.setKeepAliveTime(10, TimeUnit.SECONDS); scheduledThreadPoolExecutor.setRemoveOnCancelPolicy(true); @@ -725,27 +724,6 @@ public class StandardService extends Lif return "type=Service"; } -private static class UtilityThreadFactory implements ThreadFactory { -private final ThreadGroup group; -private final AtomicInteger threadNumber = new AtomicInteger(1); -private final String namePrefix; -private final boolean daemon; - -public UtilityThreadFactory(String namePrefix, boolean daemon) { -SecurityManager s = System.getSecurityManager(); -group = (s != null) ? s.getThreadGroup() : Thread.currentThread().getThreadGroup(); -this.namePrefix = namePrefix; -this.daemon = daemon; -} - -@Override -public Thread newThread(Runnable r) { -Thread thread = new Thread(group, r, namePrefix + threadNumber.getAndIncrement()); -thread.setDaemon(daemon); -return thread; -} -} - @Override public ScheduledExecutorService getUtilityExecutor() { return utilityExecutorWrapper; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
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/3750 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] 1846642 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: r1846642 - in /tomcat/trunk/java/org/apache: catalina/core/LocalStrings.properties catalina/ha/session/LocalStrings.properties tomcat/util/descriptor/web/LocalStrings.properties
Author: markt Date: Thu Nov 15 11:59:33 2018 New Revision: 1846642 URL: http://svn.apache.org/viewvc?rev=1846642=rev Log: Fix typos in English l10n messages Modified: tomcat/trunk/java/org/apache/catalina/core/LocalStrings.properties tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/LocalStrings.properties Modified: tomcat/trunk/java/org/apache/catalina/core/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/LocalStrings.properties?rev=1846642=1846641=1846642=diff == --- tomcat/trunk/java/org/apache/catalina/core/LocalStrings.properties [UTF-8] (original) +++ tomcat/trunk/java/org/apache/catalina/core/LocalStrings.properties [UTF-8] Thu Nov 15 11:59:33 2018 @@ -179,7 +179,7 @@ standardContext.parameter.required=Both standardContext.pathInvalid=A context path must either be an empty string or start with a ''/'' and do not end with a ''/''. The path [{0}] does not meet these criteria and has been changed to [{1}] standardContext.postconstruct.duplicate=Duplicate post construct method definition for class [{0}] standardContext.postconstruct.required=Both fully qualified class name and method name are required -standardContext.predestroy.duplicate=Duplicate pre destroy method definition for class [{0}] +standardContext.predestroy.duplicate=Duplicate @PreDestroy method definition for class [{0}] standardContext.predestroy.required=Both fully qualified class name and method name are required standardContext.reloadingCompleted=Reloading Context with name [{0}] is completed standardContext.reloadingStarted=Reloading Context with name [{0}] has started Modified: tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties?rev=1846642=1846641=1846642=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties [UTF-8] (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties [UTF-8] Thu Nov 15 11:59:33 2018 @@ -22,8 +22,8 @@ clusterSessionListener.noManager=Context deltaManager.createMessage.access=Manager [{0}]: create session message [{1}] access. deltaManager.createMessage.accessChangePrimary=Manager [{0}]: create session message [{1}] access to change primary. -deltaManager.createMessage.allSessionData=Manager [{0}] send all session data. -deltaManager.createMessage.allSessionTransfered=Manager [{0}] send all session data transfered +deltaManager.createMessage.allSessionData=Manager [{0}] sent all session data. +deltaManager.createMessage.allSessionTransfered=Manager [{0}] sent all session data transferred deltaManager.createMessage.delta=Manager [{0}]: create session message [{1}] delta request. deltaManager.createMessage.expire=Manager [{0}]: create session message [{1}] expire. deltaManager.createMessage.unableCreateDeltaRequest=Unable to serialize delta request for sessionid [{0}] @@ -39,7 +39,7 @@ deltaManager.noCluster=Starting... no cl deltaManager.noContextManager=Manager [{0}]: No context manager send at [{1}] received in [{2}] ms. deltaManager.noMasterMember=Starting... with no other member for context [{0}] at domain [{1}] deltaManager.noMembers=Manager [{0}]: skipping state transfer. No members active in cluster group. -deltaManager.noSessionState=Manager [{0}]: No session state send at [{1}] received, timing out after [{2}] ms. +deltaManager.noSessionState=Manager [{0}]: No session state sent at [{1}] received, timing out after [{2}] ms. deltaManager.receiveMessage.accessed=Manager [{0}]: received session [{1}] accessed. deltaManager.receiveMessage.allSessionDataAfter=Manager [{0}]: session state deserialized deltaManager.receiveMessage.allSessionDataBegin=Manager [{0}]: received session state data @@ -55,7 +55,7 @@ deltaManager.receiveMessage.unloadingAft deltaManager.receiveMessage.unloadingBegin=Manager [{0}]: start unloading sessions deltaManager.registerCluster=Register manager [{0}] to cluster element [{1}] with name [{2}] deltaManager.sendMessage.newSession=Manager [{0}] send new session [{1}] -deltaManager.sessionReceived=Manager [{0}]; session state send at [{1}] received in [{2}] ms. +deltaManager.sessionReceived=Manager [{0}]; session state sent at [{1}] received in [{2}] ms. deltaManager.startClustering=Starting clustering manager at [{0}] deltaManager.stopped=Manager [{0}] is stopping deltaManager.unableSerializeSessionID=Unable to serialize sessionID [{0}] Modified: tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/LocalStrings.properties URL:
[Bug 62912] Tomcat adds a space character in the Content-Type header if this one has a ; character right after
https://bz.apache.org/bugzilla/show_bug.cgi?id=62912 Mark Thomas changed: What|Removed |Added OS||All --- Comment #1 from Mark Thomas --- Tomcat has to separate any charset from the provided content-type and store the charset and content-type (minus charset) separately. Extraction of the charset can be tricky. Historically there were a few bugs in this area until we switched to using a full parser. Similarly, generating content-type minus the charset had difficulties. Therefore, this value is generated by the parser from the constituent parts. >From RFC 7231: Content-Type = media-type media-type = type "/" subtype *( OWS ";" OWS parameter ) type = token subtype= token White space after the semi-colon is optional but valid. If a user-agent is unable to parse this correctly then that is a bug in the user-agent, not in Tomcat. Normally, I'd close bugs like this as WONTFIX but recalling a similar issue I dug into the history a little: bug 53814 bug 52811 The original intention was not to include a space after the semi-colon. It was added as a work-around for a popular but buggy client (Adobe Reader 9 on IE). It should be possible to remove the work-around but bitter experience makes me fear what else this might break. I'd like to remove the work-around, mainly as it reduces (very marginally) the network traffic per request and removes a few lines of code but that is probably something to consider for Tomcat 10 given the possibility of user-agent breakage. At this point, fixing the bug in the user-agent parsing this header so it can handle the header with or without the optional white space looks like the best solution. -- 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: r1846638 - /tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
Author: violetagg Date: Thu Nov 15 11:31:53 2018 New Revision: 1846638 URL: http://svn.apache.org/viewvc?rev=1846638=rev Log: Update the release date for 7.0.92 Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1846638=1846637=1846638=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Thu Nov 15 11:31:53 2018 @@ -80,7 +80,7 @@ - + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r30909 - /dev/tomcat/tomcat-7/v7.0.92/ /release/tomcat/tomcat-7/v7.0.92/
Author: violetagg Date: Thu Nov 15 11:18:11 2018 New Revision: 30909 Log: Release Tomcat 7.0.92 Added: release/tomcat/tomcat-7/v7.0.92/ - copied from r30908, dev/tomcat/tomcat-7/v7.0.92/ Removed: dev/tomcat/tomcat-7/v7.0.92/ - 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/3749 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] 1846635 Blamelist: markt BUILD FAILED: failed compile_1 Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 62912] New: Tomcat adds a space character in the Content-Type header if this one has a ; character right after
https://bz.apache.org/bugzilla/show_bug.cgi?id=62912 Bug ID: 62912 Summary: Tomcat adds a space character in the Content-Type header if this one has a ; character right after Product: Tomcat 8 Version: 8.5.x-trunk Hardware: PC Status: NEW Severity: critical Priority: P2 Component: Catalina Assignee: dev@tomcat.apache.org Reporter: francois.courta...@gemalto.com Target Milestone: Hello, I have written a servlet answering to an HTTP GET which set a response Content-Type having a value with a semi-column (eg ;). The Content-Type looks like: application/xxx.yyy-data;version=1.0 In the servlet code I have response.setContentType("application/xxx.yyy-data;version=1.0"); Tried on both 8.5.35 and 9.0.13, in both environments, the real Content-Type sent back by the server is: application/xxx.yyy-data; version=1.0 So Tomcat adds a space character right after the semi-column. I think it's a bug. Could you please provide a fix to prevent Tomcat to add a space character after the semi-column ? Best Regards. -- 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: [VOTE] Release Apache Tomcat 7.0.92
Hi, На пт, 9.11.2018 г. в 13:34 ч. Violeta Georgieva написа: > > The proposed Apache Tomcat 7.0.92 release is now available for voting. > > It can be obtained from: > https://dist.apache.org/repos/dist/dev/tomcat/tomcat-7/v7.0.92/ > The Maven staging repo is: > https://repository.apache.org/content/repositories/orgapachetomcat-1198/ > The svn tag is: > http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_92/ > > The proposed 7.0.92 release is: > [ ] Broken - do not release > [ ] Stable - go ahead and release as 7.0.92 Stable +1 (binding): violetagg, remm, csutherl No other voters were cast. The vote has passed. I'll do the release shortly and announce it once the mirrors catch up. Regards, Violeta
svn commit: r1846635 - in /tomcat/trunk/java/org/apache/tomcat/util/http/parser: HttpParser.java LocalStrings.properties
Author: markt Date: Thu Nov 15 10:50:52 2018 New Revision: 1846635 URL: http://svn.apache.org/viewvc?rev=1846635=rev Log: Make the error messages l10n friendly Modified: tomcat/trunk/java/org/apache/tomcat/util/http/parser/HttpParser.java tomcat/trunk/java/org/apache/tomcat/util/http/parser/LocalStrings.properties Modified: tomcat/trunk/java/org/apache/tomcat/util/http/parser/HttpParser.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/http/parser/HttpParser.java?rev=1846635=1846634=1846635=diff == --- tomcat/trunk/java/org/apache/tomcat/util/http/parser/HttpParser.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/http/parser/HttpParser.java Thu Nov 15 10:50:52 2018 @@ -862,27 +862,27 @@ public class HttpParser { private enum DomainParseState { -NEW( true, false, false, false, " at the start of"), -ALPHA( true, true, true, true, " after a letter in"), -NUMERIC( true, true, true, true, " after a number in"), -PERIOD( true, false, false, true, " after a period in"), -HYPHEN( true, true, false, false, " after a hypen in"), -COLON( false, false, false, false, " after a colon in"), -END(false, false, false, false, " at the end of"); +NEW( true, false, false, false, "http.invalidCharacterDomain.atStart"), +ALPHA( true, true, true, true, "http.invalidCharacterDomain.afterLetter"), +NUMERIC( true, true, true, true, "http.invalidCharacterDomain.afterNumber"), +PERIOD( true, false, false, true, "http.invalidCharacterDomain.afterPeriod"), +HYPHEN( true, true, false, false, "http.invalidCharacterDomain.afterHyphen"), +COLON( false, false, false, false, "http.invalidCharacterDomain.afterColon"), +END(false, false, false, false, "http.invalidCharacterDomain.atEnd"); private final boolean mayContinue; private final boolean allowsHyphen; private final boolean allowsPeriod; private final boolean allowsEnd; -private final String errorLocation; +private final String errorMsg; private DomainParseState(boolean mayContinue, boolean allowsHyphen, boolean allowsPeriod, -boolean allowsEnd, String errorLocation) { +boolean allowsEnd, String errorMsg) { this.mayContinue = mayContinue; this.allowsHyphen = allowsHyphen; this.allowsPeriod = allowsPeriod; this.allowsEnd = allowsEnd; -this.errorLocation = errorLocation; +this.errorMsg = errorMsg; } public boolean mayContinue() { @@ -898,15 +898,15 @@ public class HttpParser { if (allowsPeriod) { return PERIOD; } else { -throw new IllegalArgumentException(sm.getString("http.invalidCharacterDomain", -Character.toString((char) c), errorLocation)); +throw new IllegalArgumentException(sm.getString(errorMsg, +Character.toString((char) c))); } } else if (c == ':') { if (allowsEnd) { return COLON; } else { -throw new IllegalArgumentException(sm.getString("http.invalidCharacterDomain", -Character.toString((char) c), errorLocation)); +throw new IllegalArgumentException(sm.getString(errorMsg, +Character.toString((char) c))); } } else if (c == -1) { if (allowsEnd) { @@ -919,8 +919,8 @@ public class HttpParser { if (allowsHyphen) { return HYPHEN; } else { -throw new IllegalArgumentException(sm.getString("http.invalidCharacterDomain", -Character.toString((char) c), errorLocation)); +throw new IllegalArgumentException(sm.getString(errorMsg, +Character.toString((char) c))); } } else { throw new IllegalArgumentException(sm.getString( Modified: tomcat/trunk/java/org/apache/tomcat/util/http/parser/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/http/parser/LocalStrings.properties?rev=1846635=1846634=1846635=diff == --- tomcat/trunk/java/org/apache/tomcat/util/http/parser/LocalStrings.properties [UTF-8] (original) +++ tomcat/trunk/java/org/apache/tomcat/util/http/parser/LocalStrings.properties [UTF-8] Thu Nov 15 10:50:52 2018 @@ -23,7 +23,13 @@ http.illegalAfterIpv6=The character [{0} http.illegalCharacterDomain=The
[Bug 62910] tomcat-jdbc global pool transaction problem
https://bz.apache.org/bugzilla/show_bug.cgi?id=62910 Mark Thomas changed: What|Removed |Added Product|Tomcat 8|Tomcat Modules Component|Packaging |jdbc-pool Target Milestone||--- Version|8.5.32 |unspecified -- 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: r1846630 - /tomcat/trunk/java/org/apache/jasper/resources/LocalStrings_ja.properties
Author: markt Date: Thu Nov 15 09:55:10 2018 New Revision: 1846630 URL: http://svn.apache.org/viewvc?rev=1846630=rev Log: Remove untranslated strings Modified: tomcat/trunk/java/org/apache/jasper/resources/LocalStrings_ja.properties Modified: tomcat/trunk/java/org/apache/jasper/resources/LocalStrings_ja.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/resources/LocalStrings_ja.properties?rev=1846630=1846629=1846630=diff == --- tomcat/trunk/java/org/apache/jasper/resources/LocalStrings_ja.properties [UTF-8] (original) +++ tomcat/trunk/java/org/apache/jasper/resources/LocalStrings_ja.properties [UTF-8] Thu Nov 15 09:55:10 2018 @@ -280,43 +280,3 @@ JSPファイルの場所は次のオプ� \-javaEncodingSet the encoding charset for Java classes (default UTF-8)\n\ \-source Set the -source argument to the compiler (default 1.8)\n\ \-target Set the -target argument to the compiler (default 1.8)\n -jspc.webfrg.footer=\n\ -\n\ -\n -jspc.webfrg.header=\n\ -http://xmlns.jcp.org/xml/ns/javaee"\n\ -\ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\n\ -\ xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee\n\ -\ http://xmlns.jcp.org/xml/ns/javaee/web-fragment_4_0.xsd"\n\ -\ version="4.0"\n\ -\ metadata-complete="true">\n\ -\ org_apache_jasper.jspc\n\ -\ \n\ -\n\ -\n -jspc.webinc.footer=\n\ -\n -jspc.webinc.header=\n\ -\n -jspc.webinc.insertEnd= -jspc.webinc.insertStart= -jspc.webxml.footer=\n\ -\n\ -\n -jspc.webxml.header=\n\ -http://xmlns.jcp.org/xml/ns/javaee"\n\ -\ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\n\ -\ xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee\n\ -\ http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"\n\ -\ version="4.0"\n\ -\ metadata-complete="false">\n\ -\n\ -\n - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1846628 - in /tomcat/trunk/java/org/apache: catalina/core/ catalina/loader/ catalina/startup/ catalina/tribes/io/ catalina/util/ jasper/resources/ tomcat/util/digester/ tomcat/util/file/
Author: markt Date: Thu Nov 15 09:40:03 2018 New Revision: 1846628 URL: http://svn.apache.org/viewvc?rev=1846628=rev Log: Some more French translations Added: tomcat/trunk/java/org/apache/tomcat/util/file/LocalStrings_fr.properties (with props) Modified: tomcat/trunk/java/org/apache/catalina/core/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/loader/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/startup/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/tribes/io/LocalStrings_fr.properties tomcat/trunk/java/org/apache/catalina/util/LocalStrings_fr.properties tomcat/trunk/java/org/apache/jasper/resources/LocalStrings_fr.properties tomcat/trunk/java/org/apache/tomcat/util/digester/LocalStrings_fr.properties tomcat/trunk/java/org/apache/tomcat/util/http/parser/LocalStrings_fr.properties tomcat/trunk/java/org/apache/tomcat/util/net/LocalStrings_fr.properties Modified: tomcat/trunk/java/org/apache/catalina/core/LocalStrings_fr.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/LocalStrings_fr.properties?rev=1846628=1846627=1846628=diff == --- tomcat/trunk/java/org/apache/catalina/core/LocalStrings_fr.properties [UTF-8] (original) +++ tomcat/trunk/java/org/apache/catalina/core/LocalStrings_fr.properties [UTF-8] Thu Nov 15 09:40:03 2018 @@ -38,6 +38,7 @@ aprListener.initializingFIPS=Initialisat aprListener.tooLateForSSLRandomSeed=setSSLRandomSeed impossible: SSL a déjà été initialisé containerBase.backgroundProcess.cluster=Une exception s''est produite lors du traitement d''arrière plan du cluster [{0}] +containerBase.backgroundProcess.error=Exception durant le traitement du fil d'arrière-plan containerBase.backgroundProcess.unexpectedThreadDeath=Mort inattendue du fil d''exécution d''arrière-plan ("background thread") [{0}] defaultInstanceManager.invalidInjection=Annotation invalide pour l'injection d'une resource méthode @@ -111,7 +112,7 @@ standardWrapper.destroyException="Servle standardWrapper.initException="Servlet.init()" pour la servlet [{0}] a généré une exception standardWrapper.instantiate=Erreur à l''instantiation de la classe servlet [{0}] standardWrapper.isUnavailable=La servlet [{0}] est actuellement indisponible -standardWrapper.notChild=L'enrobeur de conteneur (wrapper container) peut ne pas avoir de conteneurs fils +standardWrapper.notChild=L'enrobeur de conteneur (wrapper container) ne peut pas avoir de conteneurs fils standardWrapper.notClass=Aucune classe servlet n''a été spécifiée pour la servlet [{0}] standardWrapper.notContext=Le conteneur parent d'un enrobeur (wrapper) doit être un contexte standardWrapper.notFound=Servlet [{0}] n''est pas disponible. Modified: tomcat/trunk/java/org/apache/catalina/loader/LocalStrings_fr.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/loader/LocalStrings_fr.properties?rev=1846628=1846627=1846628=diff == --- tomcat/trunk/java/org/apache/catalina/loader/LocalStrings_fr.properties [UTF-8] (original) +++ tomcat/trunk/java/org/apache/catalina/loader/LocalStrings_fr.properties [UTF-8] Thu Nov 15 09:40:03 2018 @@ -14,6 +14,7 @@ # limitations under the License. webappClassLoader.checkThreadLocalsForLeaks.unknown=Inconnu +webappClassLoader.clearJdbc=L''application web [{0}] a enregistré un pilote JDBC [{1}], mais ne l''a pas désenregistré avant l''arrêt de l''application. Pour éviter une fuite de mémoire, le pilote JDBC a été désenregistré de force. webappClassLoader.clearReferencesResourceBundlesCount=[{0}] références à un bundle de ressources (ResourceBundle) ont été retirées du cache de l''application web [{1}]. webappClassLoader.readError=Erreur lors de la lecture de la resource : impossible de charger [{0}]. webappClassLoader.validationErrorJarPath=Incapable de valider l''entrée de JAR de nom [{0}] Modified: tomcat/trunk/java/org/apache/catalina/startup/LocalStrings_fr.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/LocalStrings_fr.properties?rev=1846628=1846627=1846628=diff == --- tomcat/trunk/java/org/apache/catalina/startup/LocalStrings_fr.properties [UTF-8] (original) +++ tomcat/trunk/java/org/apache/catalina/startup/LocalStrings_fr.properties [UTF-8] Thu Nov 15 09:40:03 2018 @@ -15,6 +15,8 @@ catalina.serverStartFail=Le composant Server requis n'a pas démarré, en conséquence Tomcat ne peut démarrer. +catalinaConfigurationSource.cannotObtainURL=Impossible d''obtenir l''URL pour le chemin relatif [{0}]. Vérifiez que catalina.base est défini. + contextConfig.altDDNotFound=fichier alt-dd [{0}] pas trouvé contextConfig.applicationMissing=Le fichier web.xml de
[Bug 62911] New: Add support for proxying ocsp requests via ProxyHost and ProxyPort in TomcAt
https://bz.apache.org/bugzilla/show_bug.cgi?id=62911 Bug ID: 62911 Summary: Add support for proxying ocsp requests via ProxyHost and ProxyPort in TomcAt Product: Tomcat 7 Version: 7.0.70 Hardware: PC OS: Linux Status: NEW Severity: enhancement Priority: P2 Component: Connectors Assignee: dev@tomcat.apache.org Reporter: usma...@ieml.ru Target Milestone: --- Please add support for specifying proxyHost and ProxyPort for ocsp requests in Tomcat. I have a webapp which runs on Tomcat 7.0.70 on RHEL 6.9 and Java 7 and using APR/Tomcat native for SSL TLS.Tomcat sits behind proxy. I can't get ocsp stapling working I tried using proxyName and proxyPort in Connector in server xml hoping that this will also proxify ocsp requests, in Tomcat but ssllabs test still shows ocsp Stapling no for my server Given the fact that most of the ocsp responders specified in SSL certificates such as Comodo actually resolve to many changing IP addresses it becomes really hard /impossible to specify any firewall rule to manually proxy ocsp requests since these firewalls typically operate with IP addresses not hostnames. Inability to specify proxy host/port nor specify a file from which the stapled OCSP response could be taken makes OCSP unavailable in many corporate environments where typically internet access is granted via proxy -- 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 62910] tomcat-jdbc global pool transaction problem
https://bz.apache.org/bugzilla/show_bug.cgi?id=62910 --- Comment #1 from zhengfc --- I change to c3p0 the apps is okay, I compare the tomcat-jdbc and c3p0 code, I found is cause by getConnnction(), c3p0 is sycn and tomcat-jdbc is unsycn. -- 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