Re: [PATCH] Parallel deployment

2010-11-06 Thread Tim Funk

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

2010-11-06 Thread Rainer Jung

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

2010-11-06 Thread bugzilla
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

2010-11-06 Thread Rainer Jung

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

2010-11-06 Thread bugzilla
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?

2010-11-06 Thread Misha Koshelev
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?

2010-11-06 Thread David Jencks
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?

2010-11-06 Thread misha680

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

2010-11-06 Thread kkolinko
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/

2010-11-06 Thread kkolinko
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

2010-11-06 Thread bugzilla
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

2010-11-06 Thread kkolinko
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

2010-11-06 Thread Apache Wiki
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

2010-11-06 Thread kkolinko
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