Re: [PATCH] Parallel deployment
This might cause a problem of using == instead of equals() for strcmp if (version == (request.getContext().getWebappVersion())) { mapRequired = false; } When running mod_jk with sticky session, but not using tomcat clustering ... Will adding a new version append the version number to the end of the session cookie AFTER the engineId (used by mod_jk for determining where to route the request) Since the session id tomcat generates is always all uppercase. Should the 'V' for the append be a lower case v? Even though session id collision is *rare*, but using a char that isn't in the session id name space would eliminate that problem. Otherwise +1. For those who are uninterested in the feature, it appears the extra overhead is minimal. (Some micro benchmarks would be nice for any skeptics ... or those just curious :) ) -Tim On 11/5/2010 9:08 PM, Mark Thomas wrote: All, The clean-up is in place and I have a patch [1] that adds support for parallel deployment. There is still some work to do before the feature can be used (Manager app needs to be made version aware when listing apps, need to test with clustering, need to write some docs) but I'd like to apply this patch sooner rather than later so the code is in place for the next release. Behaviour should remain unchanged unless someone deploys an app with the version marker (##version) at the end of the WAR / dir / context.xml name so even if the todo list above isn't complete it shouldn't get in the way of the next release. Before I apply the patch I wanted to give folks an opportunity to review and comment on whether or not it was too big a change for the 7.0.x branch at this stage. My own view is that it is not. Cheers, Mark [1] http://people.apache.org/~markt/patches/2010-11-05-parallel-deployment.patch - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [PATCH] Parallel deployment
On 06.11.2010 12:57, Tim Funk wrote: When running mod_jk with sticky session, but not using tomcat clustering ... Will adding a new version append the version number to the end of the session cookie AFTER the engineId (used by mod_jk for determining where to route the request) Tried it and the jvmRoute comes last. Since it is likely that people put dots into the webappVersion, I'll add a loop to mod_jk that keeps looking for dots if it can't match the worker name to something it knows. Since the session id tomcat generates is always all uppercase. Should the 'V' for the append be a lower case v? Even though session id collision is *rare*, but using a char that isn't in the session id name space would eliminate that problem. The ids are actualy hex, so V is safe at least concrning ur own id generators. Nevertheless I also wonder whether a more obvious character would make it easier to understand (like - or _). Of course we are not safe from collissions with webappVersion characters or jvmRoute characters. Still need to read the patch, just strated playing around with a patched trunk. Regards, Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 48925] ((ServletRequest) request).getLocalAddr() returns null
https://issues.apache.org/bugzilla/show_bug.cgi?id=48925 --- Comment #4 from andrea dal farra ada...@gmail.com 2010-11-06 09:57:03 EDT --- I've tested mod_jk 1.2.30 with Jetty 7.2 and tomcat 7.0.4 and the problem does not occur anymore. in tomcat-6.0.29 i still have the issue -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- 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: [PATCH] Parallel deployment
On 06.11.2010 14:00, Rainer Jung wrote: On 06.11.2010 12:57, Tim Funk wrote: When running mod_jk with sticky session, but not using tomcat clustering ... Will adding a new version append the version number to the end of the session cookie AFTER the engineId (used by mod_jk for determining where to route the request) Tried it and the jvmRoute comes last. Since it is likely that people put dots into the webappVersion, I'll add a loop to mod_jk that keeps looking for dots if it can't match the worker name to something it knows. Added in r1032065. Needs testing though. It should loop through all the dot separated suffixes until it finds one that fits the name of an LB member. Regards, Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
DO NOT REPLY [Bug 48925] ((ServletRequest) request).getLocalAddr() returns null
https://issues.apache.org/bugzilla/show_bug.cgi?id=48925 --- Comment #5 from Rainer Jung rainer.j...@kippdata.de 2010-11-06 11:44:38 EDT --- I proposed a fix for Tomcat 6. It is available at http://people.apache.org/~rjung/patches/bz48925-tc6-ajp-localaddr.patch It only happens for the default implementation of the AJP connector. If you switch to protocol=org.apache.coyote.ajp.AjpProtocol in the connector configuration, it should be fine. That's the implementation used by Tomcat 7. Note also, that our implementation of localAddr() will simply return the same as localName(), so you can also switch to that method. Regards, Rainer -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- 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: JspRuntimeContext JspServlet - Using SpringSource's Jasper 5.5.23 implementation in Http Service?
Hi David and all: Thank you for the reference to the Geronimo project. http://geronimo.apache.org/ From what I understand, this is a specific Web server, and we would be tie end users to this (or another specific) Web server if we were to go this route. Our lead developers, however, would very much like to preserve _independence_ from the specific Web server on which OpenMRS is running, see, e.g., http://tickets.openmrs.org/browse/TRUNK-1596?focusedCommentId=162538page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_162538 http://tickets.openmrs.org/browse/TRUNK-1596?focusedCommentId=163079page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_163079 What I mean by proxying is a servlet bridge, such as: http://www.eclipse.org/equinox/server/http_in_container.php http://felix.apache.org/site/apache-felix-http-service.html#ApacheFelixHTTPService-UsingtheServletBridge Perhaps my original email was a little too long-winded and the main question got lost... so I'll try to be concise: could someone possible explain JspRuntimeContext and JspServlet, and, specifically, how (or when) those are invoked to lead to proper Jsp processing of a servlet? Or, more importantly, to my understanding, if you have an HTTP Service that does _not_ include Jasper, how does one go about adding JspServlet and/or JspRuntimeContext to add this support (I mean in theory at least, like the JspServlet servlet has to be registered to handle all *.jsp requests or something like that... I don't believe this is correct but I just mean a general theoretical understanding would be quite helpful). Thank you! Yours Misha On Sat, Nov 6, 2010 at 2:15 AM, David Jencks david_jen...@yahoo.com wrote: I don't understand the diagram you show nor what you mean by bridging, but you might want to consider looking at geronimo 3. We have tomcat and jasper running in an osgi environment and can deploy WABs and also EE wars as osgi bundles. I believe you can (as of a few days ago) look up the bundle/bundle context in jndi and get it injected into your ee components. Whether or not this is something you want to look into I'd suggest you look into a container that supports WABs. thanks david jencks On Nov 5, 2010, at 9:02 PM, Misha Koshelev wrote: Dear All: My sincerest apologies if this is the wrong forum for this question. I was unable to find a better place for Jasper API support/questions. I am working on a ticket to make the OpenMRS medical records system run in an OSGi environment. http://tickets.openmrs.org/browse/TRUNK-1596 SUMMARY: My simple question - is there, at the very least, some clear explanation of JspRuntimeContext and JspServlet (besides http://tomcat.apache.org/tomcat-5.5-doc/jasper/docs/api/org/apache/jasper/compiler/JspRuntimeContext.html http://tomcat.apache.org/tomcat-5.5-doc/jasper/docs/api/org/apache/jasper/servlet/JspServlet.html ) or, more importantly, is there any clear guide or suggestions for how to use these within a non-JSP aware server to have proper JSP support, esp. with regard to taglibs (as, at the very least, the Jsp file seems to be processed and include directives seem to be occurring - which seems strange if Jasper is not functioning at all, although this is the case at least based on the logs). Any help much appreciated DETAILS: We are able to use Spring Web extender http://static.springsource.org/osgi/docs/current/reference/html/web.html to successfully make OpenMRS run within an OSGi environment http://tickets.openmrs.org/secure/attachment/34857/1596-latest.patch we would like to have a proxy setup, i.e., Tomcat - WAR - OSGi - OSGified OpenMRS - module 1 - module 2 etc. I am currently trying to thus move to using an OSGi HTTP Service implementation, as this allows bridging as above. I have found Apache Felix HTTP Service http://felix.apache.org/site/apache-felix-http-service.html to be quite nice for this purpose. I am using SpringSource's version of Jasper for my OSGi project: https://s3browse.springsource.com/browse/maven.springframework.org/osgi/org/springframework/osgi/jasper.osgi/5.5.23-SNAPSHOT/ (I was not able to find the source for these JARs, but based on the output of jar tvf http://maven.springframework.org/osgi/org/springframework/osgi/jasper.osgi/5.5.23-SNAPSHOT/jasper.osgi-5.5.23-20080229.204604-1.jar, the MANIFEST.MF, and the pom.xml from that JAR - all attached; it seems that this is more or less an unmodified Jasper (I am a Jasper newbie and so could be _very_ wrong). The latest update that regards Jasper can be found here: http://tickets.openmrs.org/browse/TRUNK-1596?focusedCommentId=163205page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_163205 In brief, in the current version, index.jsp is clearly being
Re: JspRuntimeContext JspServlet - Using SpringSource's Jasper 5.5.23 implementation in Http Service?
Hi Misha, You won't get far with only osgi httpservice support. IMO, practically speaking, you need osgi WAB support that also implements jsp support.You probably also want many of the osgi ee specs as implemented e.g. in apache aries. Geronimo includes all of these. There may well be other projects that support WABs, but I don't know what they are, and I don't know of any that also include so much of the osgi ee support. There are a bunch of problems in servlet related specs like jsp and jsf that osgi has not addressed in standards yet such as tld file caches and faces-config.xml discovery that geronimo has more or less working solutions for. If you run into these kinds of problems any solution will be proprietary. thanks david jencks On Nov 6, 2010, at 10:27 AM, Misha Koshelev wrote: Hi David and all: Thank you for the reference to the Geronimo project. http://geronimo.apache.org/ From what I understand, this is a specific Web server, and we would be tie end users to this (or another specific) Web server if we were to go this route. Our lead developers, however, would very much like to preserve _independence_ from the specific Web server on which OpenMRS is running, see, e.g., http://tickets.openmrs.org/browse/TRUNK-1596?focusedCommentId=162538page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_162538 http://tickets.openmrs.org/browse/TRUNK-1596?focusedCommentId=163079page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_163079 What I mean by proxying is a servlet bridge, such as: http://www.eclipse.org/equinox/server/http_in_container.php http://felix.apache.org/site/apache-felix-http-service.html#ApacheFelixHTTPService-UsingtheServletBridge Perhaps my original email was a little too long-winded and the main question got lost... so I'll try to be concise: could someone possible explain JspRuntimeContext and JspServlet, and, specifically, how (or when) those are invoked to lead to proper Jsp processing of a servlet? Or, more importantly, to my understanding, if you have an HTTP Service that does _not_ include Jasper, how does one go about adding JspServlet and/or JspRuntimeContext to add this support (I mean in theory at least, like the JspServlet servlet has to be registered to handle all *.jsp requests or something like that... I don't believe this is correct but I just mean a general theoretical understanding would be quite helpful). Thank you! Yours Misha On Sat, Nov 6, 2010 at 2:15 AM, David Jencks david_jen...@yahoo.com wrote: I don't understand the diagram you show nor what you mean by bridging, but you might want to consider looking at geronimo 3. We have tomcat and jasper running in an osgi environment and can deploy WABs and also EE wars as osgi bundles. I believe you can (as of a few days ago) look up the bundle/bundle context in jndi and get it injected into your ee components. Whether or not this is something you want to look into I'd suggest you look into a container that supports WABs. thanks david jencks On Nov 5, 2010, at 9:02 PM, Misha Koshelev wrote: Dear All: My sincerest apologies if this is the wrong forum for this question. I was unable to find a better place for Jasper API support/questions. I am working on a ticket to make the OpenMRS medical records system run in an OSGi environment. http://tickets.openmrs.org/browse/TRUNK-1596 SUMMARY: My simple question - is there, at the very least, some clear explanation of JspRuntimeContext and JspServlet (besides http://tomcat.apache.org/tomcat-5.5-doc/jasper/docs/api/org/apache/jasper/compiler/JspRuntimeContext.html http://tomcat.apache.org/tomcat-5.5-doc/jasper/docs/api/org/apache/jasper/servlet/JspServlet.html ) or, more importantly, is there any clear guide or suggestions for how to use these within a non-JSP aware server to have proper JSP support, esp. with regard to taglibs (as, at the very least, the Jsp file seems to be processed and include directives seem to be occurring - which seems strange if Jasper is not functioning at all, although this is the case at least based on the logs). Any help much appreciated DETAILS: We are able to use Spring Web extender http://static.springsource.org/osgi/docs/current/reference/html/web.html to successfully make OpenMRS run within an OSGi environment http://tickets.openmrs.org/secure/attachment/34857/1596-latest.patch we would like to have a proxy setup, i.e., Tomcat - WAR - OSGi - OSGified OpenMRS - module 1 - module 2 etc. I am currently trying to thus move to using an OSGi HTTP Service implementation, as this allows bridging as above. I have found Apache Felix HTTP Service http://felix.apache.org/site/apache-felix-http-service.html to be quite nice for this purpose. I
Re: JspRuntimeContext JspServlet - Using SpringSource's Jasper 5.5.23 implementation in Http Service?
David, Thank you so much. The solution that has, so far, worked very well for making OpenMRS work (!) in an OSGi environment is the Spring DM Web Extender. http://static.springsource.org/osgi/docs/current/reference/html/web.html In fact, it has worked very well. OpenMRS relies heavily on Spring MVC and Spring Web. That is why I am trying to take the incremental approach of moving to an HTTP Service (Felix, which supports Filters... and I have already made some preliminary support so that our Listener in fact seems to be functioning properly). This will allow us to function in bridge mode. Clearly, the Spring DM Web Extender works very well (yes in a proprietary framework) with Jetty and/or Tomcat running as _OSGi bundles_. I am simply trying to extend _their_ proprietary solution to a generic HTTP Service. So you are right... I am using a proprietary solution. The reason I thought this might be a good forum to ask my question is, because, as you will see in my original email, their Jasper looks more or less unmodified from the Jasper that comes with Apache 5.5.23. That is why I was hoping for some simple feedback regarding classes like JspRuntimeContext and JspServlet. I do think that there are great OSGi-supporting Web servers like the one you mentioned (Virgo DM is another), but our lead developers really insist that we maintain support for multiple Web containers - after all, many many implementers already have existing installs running (mostly) Tomcat, and the path of least resistance would be for them to be able to use their existing install with a new (OSGi-fied) version of OpenMRS. Thus, it seems we cannot use a proprietary Web server that they would need to install. However, we _can_ use a proprietary solution that can be embedded in a WAR file - hence the proxying or servlet bridge approach. We would of course be open to any such approach, or if you have some very very convincing argument for the lead developers as to why/how our implementers all need to switch their server, but I think this would be, in practice, quite difficult to do even if the solution was technologically superior :( Thank you Yours Misha djencks wrote: Hi Misha, You won't get far with only osgi httpservice support. IMO, practically speaking, you need osgi WAB support that also implements jsp support. You probably also want many of the osgi ee specs as implemented e.g. in apache aries. Geronimo includes all of these. There may well be other projects that support WABs, but I don't know what they are, and I don't know of any that also include so much of the osgi ee support. There are a bunch of problems in servlet related specs like jsp and jsf that osgi has not addressed in standards yet such as tld file caches and faces-config.xml discovery that geronimo has more or less working solutions for. If you run into these kinds of problems any solution will be proprietary. thanks david jencks On Nov 6, 2010, at 10:27 AM, Misha Koshelev wrote: Hi David and all: Thank you for the reference to the Geronimo project. http://geronimo.apache.org/ From what I understand, this is a specific Web server, and we would be tie end users to this (or another specific) Web server if we were to go this route. Our lead developers, however, would very much like to preserve _independence_ from the specific Web server on which OpenMRS is running, see, e.g., http://tickets.openmrs.org/browse/TRUNK-1596?focusedCommentId=162538page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_162538 http://tickets.openmrs.org/browse/TRUNK-1596?focusedCommentId=163079page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_163079 What I mean by proxying is a servlet bridge, such as: http://www.eclipse.org/equinox/server/http_in_container.php http://felix.apache.org/site/apache-felix-http-service.html#ApacheFelixHTTPService-UsingtheServletBridge Perhaps my original email was a little too long-winded and the main question got lost... so I'll try to be concise: could someone possible explain JspRuntimeContext and JspServlet, and, specifically, how (or when) those are invoked to lead to proper Jsp processing of a servlet? Or, more importantly, to my understanding, if you have an HTTP Service that does _not_ include Jasper, how does one go about adding JspServlet and/or JspRuntimeContext to add this support (I mean in theory at least, like the JspServlet servlet has to be registered to handle all *.jsp requests or something like that... I don't believe this is correct but I just mean a general theoretical understanding would be quite helpful). Thank you! Yours Misha On Sat, Nov 6, 2010 at 2:15 AM, David Jencks david_jen...@yahoo.com wrote: I don't understand the diagram you show nor what you mean by bridging, but you might want to consider looking at geronimo 3. We have tomcat and jasper running in an osgi environment and can
svn commit: r1032207 - /tomcat/tc5.5.x/trunk/STATUS.txt
Author: kkolinko Date: Sun Nov 7 04:01:24 2010 New Revision: 1032207 URL: http://svn.apache.org/viewvc?rev=1032207view=rev Log: vote Modified: tomcat/tc5.5.x/trunk/STATUS.txt Modified: tomcat/tc5.5.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=1032207r1=1032206r2=1032207view=diff == --- tomcat/tc5.5.x/trunk/STATUS.txt (original) +++ tomcat/tc5.5.x/trunk/STATUS.txt Sun Nov 7 04:01:24 2010 @@ -79,5 +79,5 @@ PATCHES PROPOSED TO BACKPORT: * Update Commons pool to 1.5.5 Version 1.5.5 is bug fixing release. (Patch is trivial changing the version number to 1.5.5 in build.properties.default, so not provided) - +1: markt,funkman + +1: markt,funkman, kkolinko -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1032209 - in /tomcat/tc5.5.x/trunk: ./ connectors/jk/java/org/apache/jk/common/ connectors/jk/java/org/apache/jk/server/ container/webapps/docs/
Author: kkolinko Date: Sun Nov 7 04:22:07 2010 New Revision: 1032209 URL: http://svn.apache.org/viewvc?rev=1032209view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49521 - Disable scanning for a free port in Jk AJP/1.3 connector by default. - Do not change maxPort field value of ChannelSocket in its #setPort() and #init() methods. - Add support for maxPort attribute on a Connector element as a synonym for channelSocket.maxPort Modified: tomcat/tc5.5.x/trunk/STATUS.txt tomcat/tc5.5.x/trunk/connectors/jk/java/org/apache/jk/common/ChannelNioSocket.java tomcat/tc5.5.x/trunk/connectors/jk/java/org/apache/jk/common/ChannelSocket.java tomcat/tc5.5.x/trunk/connectors/jk/java/org/apache/jk/server/JkMain.java tomcat/tc5.5.x/trunk/container/webapps/docs/changelog.xml Modified: tomcat/tc5.5.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=1032209r1=1032208r2=1032209view=diff == --- tomcat/tc5.5.x/trunk/STATUS.txt (original) +++ tomcat/tc5.5.x/trunk/STATUS.txt Sun Nov 7 04:22:07 2010 @@ -48,24 +48,3 @@ PATCHES PROPOSED TO BACKPORT: -0: markt - Consensus was for disabled in 5.5.x http://svn.apache.org/viewvc?view=revisionrevision=749019 -1: - -* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49521 - http://people.apache.org/~kkolinko/patches/2010-07-17_tc55_bug49521.patch - - Disable scanning for a free port in Jk AJP/1.3 connector by default. - - Do not change maxPort field value of ChannelSocket in its #setPort() -and #init() methods. - - Add support for maxPort attribute on a Connector element as a synonym -for channelSocket.maxPort - +1: kkolinko, markt, funkman - -1: - -0: rjung, jim, timw - rjung: Should we really change default behaviour for a mature version? - kkolinko: (I think that hardly anyone uses that feature, and if it is needed, - one can reenable it now by setting the maxPort attribute. - It is possible to make this configurable without changing the default - -- see attachment 25657 in BZ 49521, but I do not think that it is worth it.) - jim: Also not comfortable with such a change this late in the game - regarding default behavior of a stable branch. - timw: This caused major pain embedding 5.5 (so I'm sorely tempted to +1) -, but moving to 6.0 is a decent soln. -Probably not worth changing this late in the evolution of 5.5. Modified: tomcat/tc5.5.x/trunk/connectors/jk/java/org/apache/jk/common/ChannelNioSocket.java URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/connectors/jk/java/org/apache/jk/common/ChannelNioSocket.java?rev=1032209r1=1032208r2=1032209view=diff == --- tomcat/tc5.5.x/trunk/connectors/jk/java/org/apache/jk/common/ChannelNioSocket.java (original) +++ tomcat/tc5.5.x/trunk/connectors/jk/java/org/apache/jk/common/ChannelNioSocket.java Sun Nov 7 04:22:07 2010 @@ -91,7 +91,7 @@ public class ChannelNioSocket extends Jk org.apache.commons.logging.LogFactory.getLog( ChannelNioSocket.class ); private int startPort=8009; -private int maxPort=8019; // 0 for backward compat. +private int maxPort=0; // 0 disables free port scanning private int port=startPort; private InetAddress inet; private int serverTimeout = 0; @@ -142,7 +142,6 @@ public class ChannelNioSocket extends Jk public void setPort( int port ) { this.startPort=port; this.port=port; -this.maxPort=port+10; } public int getPort() { @@ -386,11 +385,12 @@ public class ChannelNioSocket extends Jk running = true; return; } -if (maxPort startPort) -maxPort = startPort; +int endPort = maxPort; +if (endPort startPort) +endPort = startPort; ServerSocketChannel ssc = ServerSocketChannel.open(); ssc.configureBlocking(false); -for( int i=startPort; i=maxPort; i++ ) { +for( int i=startPort; i=endPort; i++ ) { try { InetSocketAddress iddr = null; if( inet == null ) { @@ -410,7 +410,7 @@ public class ChannelNioSocket extends Jk } if( sSocket==null ) { -log.error(Can't find free port + startPort + + maxPort ); +log.error(Can't find free port + startPort + + endPort ); return; } if(log.isInfoEnabled()) Modified: tomcat/tc5.5.x/trunk/connectors/jk/java/org/apache/jk/common/ChannelSocket.java URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/connectors/jk/java/org/apache/jk/common/ChannelSocket.java?rev=1032209r1=1032208r2=1032209view=diff == --- tomcat/tc5.5.x/trunk/connectors/jk/java/org/apache/jk/common/ChannelSocket.java
DO NOT REPLY [Bug 49521] Fix ordering issues in setting channelSocket.maxPort
https://issues.apache.org/bugzilla/show_bug.cgi?id=49521 Konstantin Kolinko knst.koli...@gmail.com changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED --- Comment #4 from Konstantin Kolinko knst.koli...@gmail.com 2010-11-07 00:25:37 EDT --- Fixed in 5.5.x and will be in 5.5.32 onwards. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email --- 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: r1032210 - in /tomcat/tc6.0.x/trunk: STATUS.txt build.properties.default webapps/docs/changelog.xml
Author: kkolinko Date: Sun Nov 7 04:30:34 2010 New Revision: 1032210 URL: http://svn.apache.org/viewvc?rev=1032210view=rev Log: Update commons-daemon to 1.0.4 Modified: tomcat/tc6.0.x/trunk/STATUS.txt tomcat/tc6.0.x/trunk/build.properties.default tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1032210r1=1032209r2=1032210view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Sun Nov 7 04:30:34 2010 @@ -157,12 +157,6 @@ PATCHES PROPOSED TO BACKPORT: when I go from JRE selection page to the next page in TC7 installer. kkolinko: merging r1027504 does not perform cleanly -* Update Commons daemon to 1.0.4 - Version 1.0.4 is bug fixing release. (Patch is trivial changing the version - number to 1.0.4 in build.properties.default, so not provided) - +1: mturk, rjung, kkolinko,funkman - -1: - * Additional minor patch / followup to r1030188 Add logging for some rare case in Http11Processor.parseHost() To reproduce, send a HTTP/1.1 request with an invalid value for the port Modified: tomcat/tc6.0.x/trunk/build.properties.default URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/build.properties.default?rev=1032210r1=1032209r2=1032210view=diff == --- tomcat/tc6.0.x/trunk/build.properties.default (original) +++ tomcat/tc6.0.x/trunk/build.properties.default Sun Nov 7 04:30:34 2010 @@ -136,7 +136,7 @@ nsis.nsisdl.dll=${nsis.home}/Plugins/NSI nsis.loc=${base-sf.loc}/nsis/nsis-2.46.zip # - Commons Daemon, version 1.0-Alpha or later - -commons-daemon.version=1.0.3 +commons-daemon.version=1.0.4 commons-daemon.home=${base.path}/commons-daemon-${commons-daemon.version} commons-daemon.jar=${commons-daemon.home}/commons-daemon-${commons-daemon.version}.jar commons-daemon.native.win.home=${commons-daemon.home}/windows Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml?rev=1032210r1=1032209r2=1032210view=diff == --- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Sun Nov 7 04:30:34 2010 @@ -49,7 +49,7 @@ they reach the AccessLogValve to appear in the access log. (markt) /fix fix -bug49674/bug: Update to Commons Daemon 1.0.3. (markt) +bug49674/bug: Update to Commons Daemon 1.0.4. (mturk) /fix update Switch to using the Eclipse compiler JAR directly rather than creating - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Update of FAQ/Password by KonstantinKol inko
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The FAQ/Password page has been changed by KonstantinKolinko. The comment on this change is: Add two more options. http://wiki.apache.org/tomcat/FAQ/Password?action=diffrev1=3rev2=4 -- Of course, auditors do not like this answer. So there are some ways to get around this ... * Use properties replacement so that in the xml config you have ${db.password} and in conf/catalina.properties you put the password there. You are not safer, but the auditors may be happy. - * Since server.xml is an XML file #151; you can use XML entities. For example: woot becomes amp;#119;amp;#111;amp;#111;amp;#116; which is a way to obscure the password + * Since server.xml is an XML file #151; you can use XML entities. For example: woot becomes amp;#119;amp;#111;amp;#111;amp;#116; which is a way to obscure the password. + * XML entities can be read from an external file. That is, add the following lines at the top of server.xml just above the {{{Server}}} element: + {{{ + !DOCTYPE server-xml [ + !ENTITY resources SYSTEM resources.txt + ] + }}} + Now, whenever you write {{{resources;}}} in the text below, it will be replaced by the content of the file resources.txt. The file path is relative to the conf directory. * Write your own datasource implementation which wraps your datasource and obscure your brains out. See the docs on how to do this. + * Write your own {{{javax.naming.spi.ObjectFactory}}} implementation that creates and configures your datasource. - * (Tomcat 7) Write your own org.apache.tomcat.util.!IntrospectionUtils.!PropertySource implementation to 'decrypt' passwords that are 'encrypted' in catalina.properties and referenced via ${...} in server.xml. You'll need to set the system property org.apache.tomcat.util.digester.PROPERTY_SOURCE to point to your !PropertySource implmentation. This won't provide any real security, it just adds another level of indirection - i.e. 'security by obscurity'. + * (Tomcat 7) Write your own {{{org.apache.tomcat.util.IntrospectionUtils.PropertySource}}} implementation to 'decrypt' passwords that are 'encrypted' in catalina.properties and referenced via ${...} in server.xml. You'll need to set the system property {{{org.apache.tomcat.util.digester.PROPERTY_SOURCE}}} to point to your !PropertySource implementation. This won't provide any real security, it just adds another level of indirection - i.e. 'security by obscurity'. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1032213 - in /tomcat/tc6.0.x/trunk: STATUS.txt java/org/apache/catalina/core/StandardEngine.java java/org/apache/coyote/http11/Http11Processor.java
Author: kkolinko Date: Sun Nov 7 05:22:24 2010 New Revision: 1032213 URL: http://svn.apache.org/viewvc?rev=1032213view=rev Log: Two followup fixes for r1030188 (BZ 49909) Avoid NPEs in StandardEngine. Add logging in one missed case. Modified: tomcat/tc6.0.x/trunk/STATUS.txt tomcat/tc6.0.x/trunk/java/org/apache/catalina/core/StandardEngine.java tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/Http11Processor.java Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1032213r1=1032212r2=1032213view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Sun Nov 7 05:22:24 2010 @@ -157,23 +157,6 @@ PATCHES PROPOSED TO BACKPORT: when I go from JRE selection page to the next page in TC7 installer. kkolinko: merging r1027504 does not perform cleanly -* Additional minor patch / followup to r1030188 - Add logging for some rare case in Http11Processor.parseHost() - To reproduce, send a HTTP/1.1 request with an invalid value for the port - number in the Host header. - http://people.apache.org/~kkolinko/patches/2010-11-03_tc6_49099_Http11Processor.patch - +1: kkolinko,funkman,markt - -1: - -* Followup to r1030188 - Avoid NPE in StandardEngine.logAccess(..) if default host or its ROOT - context are null. - To reproduce, start Tomcat without the ROOT webapp and make an invalid - request. An NPE happens. It is backport of r966570, r1030253. - http://people.apache.org/~kkolinko/patches/2010-11-03_tc6_49099_StandardEngine.patch - +1: kkolinko, funkman, markt - -1: - * Fix for BZ 48925: request.getLocalAddr() returns null It only happens for the old ajp implementation, so no fix for TC 7 needed. Copy local addr from local name just as we do in the ajp processor Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/core/StandardEngine.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/core/StandardEngine.java?rev=1032213r1=1032212r2=1032213view=diff == --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/core/StandardEngine.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/core/StandardEngine.java Sun Nov 7 05:22:24 2010 @@ -496,24 +496,27 @@ public class StandardEngine } if (!logged useDefault) { -Host host = null; if (defaultAccessLog == null) { // If we reached this point, this Engine can't have an AccessLog // Look in the defaultHost -host = (Host) findChild(getDefaultHost()); -defaultAccessLog = host.getAccessLog(); - -if (defaultAccessLog == null) { -// Try the ROOT context of default host -Context context = (Context) host.findChild(); -defaultAccessLog = context.getAccessLog(); +Host host = (Host) findChild(getDefaultHost()); +if (host != null) { +defaultAccessLog = host.getAccessLog(); if (defaultAccessLog == null) { -defaultAccessLog = new NoopAccessLog(); +// Try the ROOT context of default host +Context context = (Context) host.findChild(); +if (context != null) { +defaultAccessLog = context.getAccessLog(); +} } } + +if (defaultAccessLog == null) { +defaultAccessLog = new NoopAccessLog(); +} } - + defaultAccessLog.log(request, response, time); } } Modified: tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/Http11Processor.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/Http11Processor.java?rev=1032213r1=1032212r2=1032213view=diff == --- tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/Http11Processor.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/coyote/http11/Http11Processor.java Sun Nov 7 05:22:24 2010 @@ -1418,6 +1418,7 @@ public class Http11Processor implements error = true; // 400 - Bad request response.setStatus(400); +adapter.log(request, response, 0); break; } port = port + (charValue * mult); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org