DO NOT REPLY [Bug 51306] NPE in DeltaRequest.writeExternal(DeltaRequest.java:267) when handling remote session expiration

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51306

--- Comment #2 from Dmitry Mikhaylov  2011-06-07 
07:46:15 UTC ---
Our clusters vary in size from 2 to 11 Tomcats, these problems happen in all
configurations.

-- 
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



DO NOT REPLY [Bug 51306] NPE in DeltaRequest.writeExternal(DeltaRequest.java:267) when handling remote session expiration

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51306

--- Comment #3 from Dmitry Mikhaylov  2011-06-07 
07:46:49 UTC ---
I'm not sure http://svn.apache.org/viewvc?view=revision&revision=818062
explains what is happening. While what the comment says is totally true, the
stack trace I pasted shows that the problem happens on *secondary nodes*: while
handling received remove session expiration event, for some reasons
DeltaManager tries to broadcast it to the whole cluster again.

-- 
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



DO NOT REPLY [Bug 51333] New: IIS7 64bit needs Enable 32-bit Applications=False

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51333

 Bug #: 51333
   Summary: IIS7 64bit needs Enable 32-bit Applications=False
   Product: Tomcat Connectors
   Version: unspecified
  Platform: PC
Status: NEW
  Severity: blocker
  Priority: P2
 Component: Documentation
AssignedTo: dev@tomcat.apache.org
ReportedBy: christoph.pollm...@web.de
Classification: Unclassified


The IIS7 - Tomcat6 Connector howto should give a hint, that in 64bit
environment the used IIS Application Pool should have "Enable 32-bit
Applications" set to "False". Otherwise the isapi redirect will not be called
and returns an http code 404.
If you think, the 32bit version of isapi_redirect.dll would do the job instead,
you will get an http code 500, because the library is not loadable.

-- 
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: svn commit: r1132367 - in /tomcat/trunk: java/org/apache/coyote/http11/Http11AprProcessor.java webapps/docs/changelog.xml

2011-06-07 Thread Mark Thomas
On 06/06/2011 19:15, Mark Thomas wrote:
> On 06/06/2011 18:43, Caldarale, Charles R wrote:
>>> From: Mark Thomas [mailto:ma...@apache.org] 
>>> Subject: Re: svn commit: r1132367 - in /tomcat/trunk: 
>>> java/org/apache/coyote/http11/Http11AprProcessor.java 
>>> webapps/docs/changelog.xml
>>
>>> On 06/06/2011 09:01, Remy Maucherat wrote:
 I don't understand, the code reads:
 sendfileData = new AprEndpoint.SendfileData();
 sendfileData.fileName = fileName;
 sendfileData.start = ((Long) request.getAttribute(
"org.apache.tomcat.sendfile.start")).longValue();
 sendfileData.end = ((Long) request.getAttribute(
"org.apache.tomcat.sendfile.end")).longValue() - sendfileData.pos; 

 So how can sendfileData.pos not be 0 here ?
>>
>>> Because when the DefaultServlet handles a range request start may be
>>> non-zero. (line 1658 in trunk)
>>
>> That's not the issue; the question is how could sendFileData.pos be non-zero 
>> in an object that was just instantiated from a class that has no explicit 
>> constructor?
> 
> Doh. Got it. We do need to modify the length to handle range requests,
> but not like that.

I got confused between the APR SendfileData and the NIO SendfileData.
APR is fine - I'll revert this change and the changelog entry. Both are
currently working.

I will be making some further changes to align the two so I can reduce
the duplication.

Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1132920 - in /tomcat/trunk: java/org/apache/coyote/http11/Http11AprProcessor.java webapps/docs/changelog.xml

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 09:22:44 2011
New Revision: 1132920

URL: http://svn.apache.org/viewvc?rev=1132920&view=rev
Log:
Revert r1132367. There is no issue. I got confused between 
AprEndpoint.SendfileData and NioEndpoint.SendfileData

Modified:
tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java
tomcat/trunk/webapps/docs/changelog.xml

Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java?rev=1132920&r1=1132919&r2=1132920&view=diff
==
--- tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java 
(original)
+++ tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java Tue Jun  
7 09:22:44 2011
@@ -831,7 +831,7 @@ public class Http11AprProcessor extends 
 sendfileData.start = ((Long) request.getAttribute(
 "org.apache.tomcat.sendfile.start")).longValue();
 sendfileData.end = ((Long) request.getAttribute(
-"org.apache.tomcat.sendfile.end")).longValue() - 
sendfileData.pos;
+"org.apache.tomcat.sendfile.end")).longValue();
 return true;
 }
 return false;

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1132920&r1=1132919&r2=1132920&view=diff
==
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Tue Jun  7 09:22:44 2011
@@ -46,10 +46,6 @@
   
 
   
-Correctly handle range requests when using sendfile and the APR/native
-HTTP connector. (markt)
-  
-  
 When parsing the port in the HTTP host header, treat the port as a base
 10 integer rather than a hexadecimal one. (rjung/markt/kkolinko) 
   



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: Passive Requestor Profile WS-Federation contribution

2011-06-07 Thread Mark Thomas
On 07/06/2011 07:28, Oliver Wulff wrote:
> 
>  src="http://zdownload.zurich.com/mailimages/ZHP_MailHeader.gif"; />
> 
> Hi there
> 
> I'd like to extend Tomcat to support the Passive Requestor Profile of
> WS-Federation and contribute this to the community.
> 
> What is the approach I should proceed? Shall I log JIRA and apply the
> "patch" there?

Tomcat uses Bugzilla, not Jira but apart from that, that is the right
approach.

Based on a quick glance at Wikipedia, this looks like something that
belongs in a library that would be packaged with an application. On that
basis, it is unlikely to be included with Tomcat. It is prefectly
possible I have misunderstood the purpose of this so be sure so include
some info in the BZ ticket as to why it is a good idea to have this in
Tomcat by default.

Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: svn commit: r1131263 - in /tomcat/trunk: java/org/apache/catalina/session/JDBCStore.java java/org/apache/catalina/session/LocalStrings.properties webapps/docs/changelog.xml webapps/docs/config/man

2011-06-07 Thread Mark Thomas
On 06/06/2011 21:40, Felix Schumacher wrote:
> Am Montag, den 06.06.2011, 17:56 +0100 schrieb Mark Thomas:
>> On 06/06/2011 11:59, Keiichi Fujino wrote:
>>> When jdbc-pool or DBCP is used as DB connection pool and
>>> removeAbandoned is "true",
>>> dbConnection is closed because dbConnection is not returned to the
>>> connection pool.
>>> And then, dbConnection is acquired again because dbConnection has been
>>> already closed.
>>>
>>> Should I return the connection to the connection pool?
>>> Or, is the DB connection cached until removeAbandoned works?
>>
>> The connection should be returned to the pool. If you could take care of
>> that, that would be great. Sorry for missing that when I applied the patch.
> It was a conscious decision not to return the connection to the pool for
> the following reasons:
>  1. the original code didn't do it

The expected usage of pooled connections is that they are obtained from
the pool, used and then immediately returned. Removing a connection from
the pool and just keeping it defeats the point of having a pool.

>  2. we would have to close the prepared statements in case of pooled
> connections

Yes, although DBCP can pool those too (if appropriately configured). You
may wish to add something on that topic to the docs, if only a link the
the relevant DBCP config docs.

>  3. the connection is not really abandoned, so one could argue, that you
> should run the pool with removeAbandoned set to 'false'

Yep, but as per 1, it isn't really following the expected conventions
when using a connection pool.

> But I would gladly provide a patch where connections are returned to the
> pool. 

That would be great. Thanks.

Mark

> 
> Felix
>>
>> Mark
>>
>>>
>>>
>>> 2011/6/4  :
 Author: markt
 Date: Fri Jun  3 22:13:09 2011
 New Revision: 1131263

 URL: http://svn.apache.org/viewvc?rev=1131263&view=rev
 Log:
 Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=51264
 Allow the JDBC persistent session store to use a JNDI datasource to define 
 the database in which sessions are persisted.
 Patch provided by Felix Schumacher.

 Modified:
tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java
tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties
tomcat/trunk/webapps/docs/changelog.xml
tomcat/trunk/webapps/docs/config/manager.xml

 Modified: tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java
 URL: 
 http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java?rev=1131263&r1=1131262&r2=1131263&view=diff
 ==
 --- tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java (original)
 +++ tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java Fri Jun  
 3 22:13:09 2011
 @@ -33,6 +33,11 @@ import java.sql.SQLException;
  import java.util.ArrayList;
  import java.util.Properties;

 +import javax.naming.Context;
 +import javax.naming.InitialContext;
 +import javax.naming.NamingException;
 +import javax.sql.DataSource;
 +
  import org.apache.catalina.Container;
  import org.apache.catalina.LifecycleException;
  import org.apache.catalina.Loader;
 @@ -102,6 +107,16 @@ public class JDBCStore extends StoreBase
  */
 protected String driverName = null;

 +/**
 + * name of the JNDI resource
 + */
 +protected String dataSourceName = null;
 +
 +/**
 + * DataSource to use
 + */
 +protected DataSource dataSource = null;
 +
 // - Table 
 & cols

 /**
 @@ -436,6 +451,27 @@ public class JDBCStore extends StoreBase
 return (this.sessionLastAccessedCol);
 }

 +/**
 + * Set the JNDI name of a DataSource-factory to use for db access
 + *
 + * @param dataSourceName The JNDI name of the DataSource-factory
 + */
 +public void setDataSourceName(String dataSourceName) {
 +if (dataSourceName == null || "".equals(dataSourceName.trim())) {
 +manager.getContainer().getLogger().warn(
 +sm.getString(getStoreName() + 
 ".missingDataSourceName"));
 +return;
 +}
 +this.dataSourceName = dataSourceName;
 +}
 +
 +/**
 + * Return the name of the JNDI DataSource-factory
 + */
 +public String getDataSourceName() {
 +return this.dataSourceName;
 +}
 +
 // - Public 
 Methods

 /**
 @@ -866,6 +902,24 @@ public class JDBCStore extends StoreBase
 if (dbConnection != null)
 return (dbConnection);

 +

Antwort: Re: Passive Requestor Profile WS-Federation contribution

2011-06-07 Thread Oliver Wulff
Hi Mark

WS-Federation Passive Requestor Profile is part of the authentication
mechanism within a servlet engine/app server and not part of the web
application.
http://docs.oasis-open.org/wsfed/federation/v1.2/ws-federation.pdf
(section 13)

Tomcat provides builtin support for Form based authentication and different
kind of authentication backends (Realms). The described solution is just
another way for authentication and authorization support (roles).

Do you agree?

Thanks
Oliver



   
 Mark Thomas   
   An
Tomcat Developers List 
 06/07/2011 11:27   
 AM  Kopie
   
 Thema
  Bitte antworten   Re: Passive Requestor Profile  
an  WS-Federation contribution 
  "Tomcat  
 Developers List"  

   
   





On 07/06/2011 07:28, Oliver Wulff wrote:
>
>  src="http://zdownload.zurich.com/mailimages/ZHP_MailHeader.gif"; />
>
> Hi there
>
> I'd like to extend Tomcat to support the Passive Requestor Profile of
> WS-Federation and contribute this to the community.
>
> What is the approach I should proceed? Shall I log JIRA and apply the
> "patch" there?

Tomcat uses Bugzilla, not Jira but apart from that, that is the right
approach.

Based on a quick glance at Wikipedia, this looks like something that
belongs in a library that would be packaged with an application. On that
basis, it is unlikely to be included with Tomcat. It is prefectly
possible I have misunderstood the purpose of this so be sure so include
some info in the BZ ticket as to why it is a good idea to have this in
Tomcat by default.

Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org








*** BITTE BEACHTEN ***
Diese Nachricht (wie auch allfällige Anhänge dazu) beinhaltet
möglicherweise vertrauliche oder gesetzlich geschützte Daten oder
Informationen. Zum Empfang derselben ist (sind) ausschliesslich die
genannte(n) Person(en) bestimmt. Falls Sie diese Nachricht
irrtümlicherweise erreicht hat, sind Sie höflich gebeten, diese unter
Ausschluss jeder Reproduktion zu zerstören und die absendende Person
umgehend zu benachrichtigen. Vielen Dank für Ihre Hilfe.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[PROPOSAL] Enable session replication by default.

2011-06-07 Thread Keiichi Fujino
Hi All.

Tomcat7.0.15 can not replicate session if web application defines
 in WEB-INF/web.xml.
Tomcat7.0.14 can replicate session if web application defines
 in WEB-INF/web.xml.
The behavior of this default was changed by rev1130618.
The cause is conf/web.xml is not distributable.

To enable session replication by default,
I thought two plans.

PlanA:
Add WebXml#setDistributable(true) to ContextConfig#webConfig().

Index: java/org/apache/catalina/startup/ContextConfig.java
===
--- java/org/apache/catalina/startup/ContextConfig.java (revision 1132530)
+++ java/org/apache/catalina/startup/ContextConfig.java (working copy)
@@ -1195,6 +1195,7 @@
  */
 WebXml webXmlDefaultFragment = createWebXml();
 webXmlDefaultFragment.setOverridable(true);
+webXmlDefaultFragment.setDistributable(true);

 // Parse global web.xml if present
 InputSource globalWebXml = getGlobalWebXmlSource();


PlanB:
Add  to conf/web.xml

Index: conf/web.xml
===
--- conf/web.xml(revision 1127122)
+++ conf/web.xml(working copy)
@@ -4176,4 +4176,6 @@
 index.jsp
 

+  
+
 


I intend to commit planA.
Any objections or other ideas?

-- 
Keiichi.Fujino

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



DO NOT REPLY [Bug 51334] New: Web SSO support based on WS-Federation Passive Requestor Profile

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51334

 Bug #: 51334
   Summary: Web SSO support based on WS-Federation Passive
Requestor Profile
   Product: Tomcat 6
   Version: unspecified
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: Catalina
AssignedTo: dev@tomcat.apache.org
ReportedBy: oliver.wu...@zurich.ch
Classification: Unclassified


The specification WS-Federation describes the Web SSO solution in chapter 13:
http://docs.oasis-open.org/wsfed/federation/v1.2/ws-federation.pdf

Tomcat should support this standard to integrate with other SSO solutions
natively.

Initially, an unauthenticated request is redirected to an identity provider
(IP) which issues for instance a SAML token. The IP is an external system. The
SAML token is validated by Tomcat (Replying Party) and creates the security
context in Tomcat.

The idea is to write a custom Authenticator which triggers the redirect,
verifies the signed SAML token, reads the claims information (like Role), set
up a cookie and create the security context.

The authenticator must provide the following configuration options:
- URL of IDP (mandatory)
- audience URI (mandatory)
- trusted certificate (signed SAML token) (mandatory)
- service (RP) keystore to decrypt encrypted SAML tokens (optional)
- list of requested claims (firstname, lastname, email, ...  see
http://docs.oasis-open.org/imi/identity/v1.0/os/identity-1.0-spec-os.pdf)
- URI of the claim which contains the roles (needed for isUserInRole()...)
- token type, SAML 1.1, 2.0

-- 
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



Antwort: Re: Passive Requestor Profile WS-Federation contribution

2011-06-07 Thread Oliver Wulff
I've raised the following "bug" (enhancements):
https://issues.apache.org/bugzilla/show_bug.cgi?id=51334




   
 Mark Thomas   
   An
Tomcat Developers List 
 06/07/2011 11:27   
 AM  Kopie
   
 Thema
  Bitte antworten   Re: Passive Requestor Profile  
an  WS-Federation contribution 
  "Tomcat  
 Developers List"  

   
   





On 07/06/2011 07:28, Oliver Wulff wrote:
>
>  src="http://zdownload.zurich.com/mailimages/ZHP_MailHeader.gif"; />
>
> Hi there
>
> I'd like to extend Tomcat to support the Passive Requestor Profile of
> WS-Federation and contribute this to the community.
>
> What is the approach I should proceed? Shall I log JIRA and apply the
> "patch" there?

Tomcat uses Bugzilla, not Jira but apart from that, that is the right
approach.

Based on a quick glance at Wikipedia, this looks like something that
belongs in a library that would be packaged with an application. On that
basis, it is unlikely to be included with Tomcat. It is prefectly
possible I have misunderstood the purpose of this so be sure so include
some info in the BZ ticket as to why it is a good idea to have this in
Tomcat by default.

Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org








*** BITTE BEACHTEN ***
Diese Nachricht (wie auch allfällige Anhänge dazu) beinhaltet
möglicherweise vertrauliche oder gesetzlich geschützte Daten oder
Informationen. Zum Empfang derselben ist (sind) ausschliesslich die
genannte(n) Person(en) bestimmt. Falls Sie diese Nachricht
irrtümlicherweise erreicht hat, sind Sie höflich gebeten, diese unter
Ausschluss jeder Reproduktion zu zerstören und die absendende Person
umgehend zu benachrichtigen. Vielen Dank für Ihre Hilfe.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: svn commit: r1131263 - in /tomcat/trunk: java/org/apache/catalina/session/JDBCStore.java java/org/apache/catalina/session/LocalStrings.properties webapps/docs/changelog.xml webapps/docs/config/man

2011-06-07 Thread Felix Schumacher
Am Dienstag, den 07.06.2011, 10:34 +0100 schrieb Mark Thomas:
> On 06/06/2011 21:40, Felix Schumacher wrote:
> > Am Montag, den 06.06.2011, 17:56 +0100 schrieb Mark Thomas:
> >> On 06/06/2011 11:59, Keiichi Fujino wrote:
> >>> When jdbc-pool or DBCP is used as DB connection pool and
> >>> removeAbandoned is "true",
> >>> dbConnection is closed because dbConnection is not returned to the
> >>> connection pool.
> >>> And then, dbConnection is acquired again because dbConnection has been
> >>> already closed.
> >>>
> >>> Should I return the connection to the connection pool?
> >>> Or, is the DB connection cached until removeAbandoned works?
> >>
> >> The connection should be returned to the pool. If you could take care of
> >> that, that would be great. Sorry for missing that when I applied the patch.
> > It was a conscious decision not to return the connection to the pool for
> > the following reasons:
> >  1. the original code didn't do it
> 
> The expected usage of pooled connections is that they are obtained from
> the pool, used and then immediately returned. Removing a connection from
> the pool and just keeping it defeats the point of having a pool.
There would be one other usage of jndi-resources, that would be to hide
password and db-user from the context.

> 
> >  2. we would have to close the prepared statements in case of pooled
> > connections
> 
> Yes, although DBCP can pool those too (if appropriately configured). You
> may wish to add something on that topic to the docs, if only a link the
> the relevant DBCP config docs.
done.

> 
> >  3. the connection is not really abandoned, so one could argue, that you
> > should run the pool with removeAbandoned set to 'false'
> 
> Yep, but as per 1, it isn't really following the expected conventions
> when using a connection pool.
> 
> > But I would gladly provide a patch where connections are returned to the
> > pool. 
> 
> That would be great. Thanks.
I have attached it, but I could also upload it to the original bugzilla
entry.

I also corrected one of my previous error messages, which contained a
single-tick, which was not so good.

Felix
> 
> Mark
> 
> > 
> > Felix
> >>
> >> Mark
> >>
> >>>
> >>>
> >>> 2011/6/4  :
>  Author: markt
>  Date: Fri Jun  3 22:13:09 2011
>  New Revision: 1131263
> 
>  URL: http://svn.apache.org/viewvc?rev=1131263&view=rev
>  Log:
>  Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=51264
>  Allow the JDBC persistent session store to use a JNDI datasource to 
>  define the database in which sessions are persisted.
>  Patch provided by Felix Schumacher.
> 
>  Modified:
> tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java
> tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties
> tomcat/trunk/webapps/docs/changelog.xml
> tomcat/trunk/webapps/docs/config/manager.xml
> 
>  Modified: tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java
>  URL: 
>  http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java?rev=1131263&r1=1131262&r2=1131263&view=diff
>  ==
>  --- tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java 
>  (original)
>  +++ tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java Fri Jun 
>   3 22:13:09 2011
>  @@ -33,6 +33,11 @@ import java.sql.SQLException;
>   import java.util.ArrayList;
>   import java.util.Properties;
> 
>  +import javax.naming.Context;
>  +import javax.naming.InitialContext;
>  +import javax.naming.NamingException;
>  +import javax.sql.DataSource;
>  +
>   import org.apache.catalina.Container;
>   import org.apache.catalina.LifecycleException;
>   import org.apache.catalina.Loader;
>  @@ -102,6 +107,16 @@ public class JDBCStore extends StoreBase
>   */
>  protected String driverName = null;
> 
>  +/**
>  + * name of the JNDI resource
>  + */
>  +protected String dataSourceName = null;
>  +
>  +/**
>  + * DataSource to use
>  + */
>  +protected DataSource dataSource = null;
>  +
>  // - 
>  Table & cols
> 
>  /**
>  @@ -436,6 +451,27 @@ public class JDBCStore extends StoreBase
>  return (this.sessionLastAccessedCol);
>  }
> 
>  +/**
>  + * Set the JNDI name of a DataSource-factory to use for db access
>  + *
>  + * @param dataSourceName The JNDI name of the DataSource-factory
>  + */
>  +public void setDataSourceName(String dataSourceName) {
>  +if (dataSourceName == null || "".equals(dataSourceName.trim())) 
>  {
>  +manager.getContainer().getLogger().warn(
>  +sm.getString

Re: svn commit: r1131263 - in /tomcat/trunk: java/org/apache/catalina/session/JDBCStore.java java/org/apache/catalina/session/LocalStrings.properties webapps/docs/changelog.xml webapps/docs/config/man

2011-06-07 Thread Mark Thomas
On 07/06/2011 13:22, Felix Schumacher wrote:
> Am Dienstag, den 07.06.2011, 10:34 +0100 schrieb Mark Thomas:
>> On 06/06/2011 21:40, Felix Schumacher wrote:



>>> But I would gladly provide a patch where connections are returned to the
>>> pool. 
>>
>> That would be great. Thanks.
> I have attached it, but I could also upload it to the original bugzilla
> entry.

Please do. It is easy to forget stuff attached to messages on the dev
list. Also, please re-open the issue - that way it won't get forgotten.

> I also corrected one of my previous error messages, which contained a
> single-tick, which was not so good.

Great.

Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



DO NOT REPLY [Bug 51264] Context/Manager/Store configuration proposal

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51264

Felix Schumacher  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|FIXED   |

--- Comment #5 from Felix Schumacher  
2011-06-07 13:26:37 UTC ---
Pooled connections should be released as early as possible. Otherwise
"removeAbandoned" will likely cause havoc.

-- 
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



DO NOT REPLY [Bug 51264] Context/Manager/Store configuration proposal

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51264

--- Comment #6 from Felix Schumacher  
2011-06-07 13:28:44 UTC ---
Created attachment 27125
  --> https://issues.apache.org/bugzilla/attachment.cgi?id=27125
return pooled connections as early as poosible

-- 
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: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Mark Thomas
On 07/06/2011 12:37, Keiichi Fujino wrote:
> Hi All.
> 
> Tomcat7.0.15 can not replicate session if web application defines
>  in WEB-INF/web.xml.
> Tomcat7.0.14 can replicate session if web application defines
>  in WEB-INF/web.xml.
> The behavior of this default was changed by rev1130618.
> The cause is conf/web.xml is not distributable.

That is enough to stop the 7.0.15 release in my view.

> To enable session replication by default,
> I thought two plans.
> 
> PlanA:
> Add WebXml#setDistributable(true) to ContextConfig#webConfig().
> 
> Index: java/org/apache/catalina/startup/ContextConfig.java
> ===
> --- java/org/apache/catalina/startup/ContextConfig.java   (revision 
> 1132530)
> +++ java/org/apache/catalina/startup/ContextConfig.java   (working copy)
> @@ -1195,6 +1195,7 @@
>   */
>  WebXml webXmlDefaultFragment = createWebXml();
>  webXmlDefaultFragment.setOverridable(true);
> +webXmlDefaultFragment.setDistributable(true);
> 
>  // Parse global web.xml if present
>  InputSource globalWebXml = getGlobalWebXmlSource();



> I intend to commit planA.
> Any objections or other ideas?

None here.

Mark

-
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.15

2011-06-07 Thread Mark Thomas
On 04/06/2011 21:21, Mark Thomas wrote:
> The proposed Apache Tomcat 7.0.15 release is now available for voting.
> 
> It can be obtained from:
> http://people.apache.org/~markt/dev/tomcat-7/v7.0.15/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_15/
> 
> The proposed 7.0.15 release is:
> 
> [X] Broken - do not release

As per the distributable issue raised by kfujino

> [ ] Alpha  - go ahead and release as 7.0.15 Alpha
> [ ] Beta   - go ahead and release as 7.0.15 Beta
> [ ] Stable - go ahead and release as 7.0.15 Stable

Unit tests pass on 64-bit Windows.

EL 2.2 TCK passes on 64-bit linux
JSP 2.2 TCK passes with all 3 HTTP connectors on 64-bit linux
Servlet 3.0 TCK passes with all combinations of Tomcat connector
(HTTP/AJP, BIO/NIO/APR) and httpd module (none, mod_jk, mod_proxy_ajp,
mod_proxy_http)

There are a few Javadoc errors (already fixed in svn for next version)

ASF Jira is running on 7.0.15 without issue.

Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



DO NOT REPLY [Bug 51324] When OutputBuffer.doFlush gets Exception, doFlush gets stuck to true

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51324

Mark Thomas  changed:

   What|Removed |Added

  Attachment #27122|0   |1
   is patch||
  Attachment #27122|application/octet-stream|text/plain
  mime type||

-- 
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: r1133014 - in /tomcat/trunk: java/org/apache/catalina/connector/OutputBuffer.java webapps/docs/changelog.xml

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 14:00:16 2011
New Revision: 1133014

URL: http://svn.apache.org/viewvc?rev=1133014&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=51324
Improve handling of exceptions when flushing the response buffer to ensure that 
the doFlush flag does not get stuck in the enabled state.
Patch provided by Jeremy Norris.

Modified:
tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java
tomcat/trunk/webapps/docs/changelog.xml

Modified: tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java?rev=1133014&r1=1133013&r2=1133014&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java (original)
+++ tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java Tue Jun  
7 14:00:16 2011
@@ -228,6 +228,7 @@ public class OutputBuffer extends Writer
 
 bb.recycle(); 
 closed = false;
+doFlush = false;
 suspended = false;
 
 if (conv!= null) {
@@ -310,15 +311,18 @@ public class OutputBuffer extends Writer
 if (suspended)
 return;
 
-doFlush = true;
-if (initial) {
-coyoteResponse.sendHeaders();
-initial = false;
-}
-if (bb.getLength() > 0) {
-bb.flushBuffer();
+try {
+doFlush = true;
+if (initial) {
+coyoteResponse.sendHeaders();
+initial = false;
+}
+if (bb.getLength() > 0) {
+bb.flushBuffer();
+}
+} finally {
+doFlush = false;
 }
-doFlush = false;
 
 if (realFlush) {
 coyoteResponse.action(ActionCode.CLIENT_FLUSH, 

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1133014&r1=1133013&r2=1133014&view=diff
==
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Tue Jun  7 14:00:16 2011
@@ -43,6 +43,15 @@
   Other
 -->
 
+  
+
+  
+51324: Improve handling of exceptions when flushing the
+response buffer to ensure that the doFlush flag does not get stuck in
+the enabled state. Patch provided by Jeremy Norris. (markt)
+  
+
+  
   
 
   



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



DO NOT REPLY [Bug 51324] When OutputBuffer.doFlush gets Exception, doFlush gets stuck to true

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51324

Mark Thomas  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED

--- Comment #3 from Mark Thomas  2011-06-07 14:00:47 UTC ---
Thanks for the patch. This has been fixed in 7.0.x and will be included in
7.0.16 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



DO NOT REPLY [Bug 51334] Web SSO support based on WS-Federation Passive Requestor Profile

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51334

Mark Thomas  changed:

   What|Removed |Added

  Component|Catalina|Catalina
Version|unspecified |trunk
Product|Tomcat 6|Tomcat 7
   Target Milestone|default |---
   Severity|normal  |enhancement

--- Comment #1 from Mark Thomas  2011-06-07 14:59:36 UTC ---
If implemented, I don't see this being back-ported to 6 so moving to Tomcat 7.

Marking as an enhancement. As with any enhancement, providing a patch greatly
increases the chances of it getting into the code base. Without a patch or a
committer interested in implementing the feature it will eventually get
resolved as WONTFIX.

-- 
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



DO NOT REPLY [Bug 38546] Google bot sends invalid If-Modifed-Since Header, Tomcat throws exception

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=38546

Mark Thomas  changed:

   What|Removed |Added

 Status|NEEDINFO|RESOLVED
 Resolution||WONTFIX

--- Comment #6 from Mark Thomas  2011-06-07 15:01:26 UTC ---
No patch, no interest from committers so resolove as WONTFIX.

-- 
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



DO NOT REPLY [Bug 51264] Context/Manager/Store configuration proposal

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51264

Felix Schumacher  changed:

   What|Removed |Added

   Platform|PC  |All
Version|unspecified |trunk
 OS/Version|Windows XP  |All

-- 
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: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Konstantin Kolinko
2011/6/7 Keiichi Fujino :
> Hi All.
>
> Tomcat7.0.15 can not replicate session if web application defines
>  in WEB-INF/web.xml.
> Tomcat7.0.14 can replicate session if web application defines
>  in WEB-INF/web.xml.
> The behavior of this default was changed by rev1130618.
> The cause is conf/web.xml is not distributable.
>
> To enable session replication by default,
> I thought two plans.
>
> PlanA:
> PlanB:

-1

IIRC configuring the webapp as  has observable
consequence that each attribute assigned to a session will be checked
whether it implements of the Serializable interface. It will mean that
some webapps will stop working in the default configuration.

Thus we cannot assume that "distributable" flag is true by default.  I
suspect that specification implies that "distributable" flag defaults
to false. I have not checked the text though.


Best regards,
Konstantin Kolinko

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



DO NOT REPLY [Bug 51264] Context/Manager/Store configuration proposal

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51264

Felix Schumacher  changed:

   What|Removed |Added

  Attachment #27125|0   |1
is obsolete||

--- Comment #7 from Felix Schumacher  
2011-06-07 15:21:51 UTC ---
Created attachment 27127
  --> https://issues.apache.org/bugzilla/attachment.cgi?id=27127
return pooled connections as early as poosible

remove can now reuse a connection.

-- 
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: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Mark Thomas
On 07/06/2011 16:21, Konstantin Kolinko wrote:
> 2011/6/7 Keiichi Fujino :
>> Hi All.
>>
>> Tomcat7.0.15 can not replicate session if web application defines
>>  in WEB-INF/web.xml.
>> Tomcat7.0.14 can replicate session if web application defines
>>  in WEB-INF/web.xml.
>> The behavior of this default was changed by rev1130618.
>> The cause is conf/web.xml is not distributable.
>>
>> To enable session replication by default,
>> I thought two plans.
>>
>> PlanA:
>> PlanB:
> 
> -1
> 
> IIRC configuring the webapp as  has observable
> consequence that each attribute assigned to a session will be checked
> whether it implements of the Serializable interface. It will mean that
> some webapps will stop working in the default configuration.
> 
> Thus we cannot assume that "distributable" flag is true by default.  I
> suspect that specification implies that "distributable" flag defaults
> to false. I have not checked the text though.

The proposed patch doesn't do that. It marks the defaultFragment as
distributable which means that the main web.xml file still determines
the final state of distributable.

Without marking the defaultFragment as distributable, a web-app can
never be distributable.

Mark



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133112 - /tomcat/trunk/conf/catalina.properties

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 17:51:43 2011
New Revision: 1133112

URL: http://svn.apache.org/viewvc?rev=1133112&view=rev
Log:
Add a few more exclusions

Modified:
tomcat/trunk/conf/catalina.properties

Modified: tomcat/trunk/conf/catalina.properties
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/conf/catalina.properties?rev=1133112&r1=1133111&r2=1133112&view=diff
==
--- tomcat/trunk/conf/catalina.properties (original)
+++ tomcat/trunk/conf/catalina.properties Tue Jun  7 17:51:43 2011
@@ -92,12 +92,14 @@ catalina.jar,catalina-ant.jar,catalina-h
 jasper.jar,jasper-el.jar,ecj-*.jar,\
 tomcat-api.jar,tomcat-util.jar,tomcat-coyote.jar,tomcat-dbcp.jar,\
 tomcat-i18n-en.jar,tomcat-i18n-es.jar,tomcat-i18n-fr.jar,tomcat-i18n-ja.jar,\
-commons-beanutils*.jar,commons-collections*.jar,commons-dbcp*.jar,\
-commons-digester*.jar,commons-fileupload*.jar,commons-io*.jar,\
-commons-logging*.jar,commons-math*.jar,commons-pool*.jar,\
+commons-beanutils*.jar,commons-codec*.jar,commons-collections*.jar,\
+commons-dbcp*.jar,commons-digester*.jar,commons-fileupload*.jar,\
+commons-httpclient*.jar,commons-io*.jar,commons-lang*.jar,commons-logging*.jar,\
+commons-math*.jar,commons-pool*.jar,\
 jstl.jar,\
 geronimo-spec-jaxrpc*.jar,wsdl4j*.jar,\
-ant.jar,jmx.jar,hibernate*.jar,jmx-tools.jar,jta*.jar,log4j*.jar,slf4j*.jar\
+ant.jar,aspectj*.jar,jmx.jar,h2*.jar,hibernate*.jar,httpclient*.jar,\
+jmx-tools.jar,jta*.jar,log4j*.jar,mail*.jar,slf4j*.jar,\
 xercesImpl.jar,xmlParserAPIs.jar,xml-apis.jar,\
 
dnsns.jar,ldapsec.jar,localedata.jar,sunjce_provider.jar,sunpkcs11.jar,tools.jar,\
 apple_provider.jar,AppleScriptEngine.jar,CoreAudio.jar,dns_sd.jar,\



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133122 - in /tomcat/trunk: java/org/apache/jasper/compiler/TldLocationsCache.java java/org/apache/jasper/resources/LocalStrings.properties webapps/docs/changelog.xml

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 18:18:06 2011
New Revision: 1133122

URL: http://svn.apache.org/viewvc?rev=1133122&view=rev
Log:
Don't overwhelm logs with TLD scanning messages but make users aware there is 
room for improvement and tell them how to get at the detail.

Modified:
tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java
tomcat/trunk/java/org/apache/jasper/resources/LocalStrings.properties
tomcat/trunk/webapps/docs/changelog.xml

Modified: tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java?rev=1133122&r1=1133121&r2=1133122&view=diff
==
--- tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java 
(original)
+++ tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java Tue Jun 
 7 18:18:06 2011
@@ -96,6 +96,10 @@ public class TldLocationsCache {
 // Names of JARs that are known not to contain any TLDs
 private static Set noTldJars = null;
 
+// Flag that indicates that an INFO level message has been provided that
+// there are JARs that could be skipped
+private static volatile boolean showTldScanWarning = true;
+
 /**
  * The mapping of the 'global' tag library URI to the location (resource
  * path) of the TLD associated with that tag library. The location is
@@ -438,8 +442,15 @@ public class TldLocationsCache {
 }
 
 if (!foundTld) {
-log.info(Localizer.getMessage("jsp.tldCache.noTldInJar",
-resourcePath));
+if (log.isDebugEnabled()) {
+log.debug(Localizer.getMessage("jsp.tldCache.noTldInJar",
+resourcePath));
+} else if (showTldScanWarning) {
+// Not entirely thread-safe but a few duplicate log messages 
are
+// not a huge issue
+showTldScanWarning = true;
+log.info(Localizer.getMessage("jsp.tldCache.noTldSummary"));
+}
 }
 }
 

Modified: tomcat/trunk/java/org/apache/jasper/resources/LocalStrings.properties
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/resources/LocalStrings.properties?rev=1133122&r1=1133121&r2=1133122&view=diff
==
--- tomcat/trunk/java/org/apache/jasper/resources/LocalStrings.properties 
(original)
+++ tomcat/trunk/java/org/apache/jasper/resources/LocalStrings.properties Tue 
Jun  7 18:18:06 2011
@@ -491,3 +491,4 @@ jsp.message.jsp_unload_check=Checking JS
 xmlParser.skipBomFail=Failed to skip BOM when parsing XML input stream
 
 jsp.tldCache.noTldInJar=No TLD files were found in [{0}]. Consider adding the 
JAR to to the tomcat.util.scan.DefaultJarScanner.jarsToSkip in 
CATALINA_BASE/catalina.properties
+jsp.tldCache.noTldSummary=At least one JAR was scanned for TLDs yet contained 
no TLDs. Enable debug logging for this logger for a complete list of JARs that 
were scanned where no TLDs were found. Skipping JAR scanning can improve 
startup time and JSP compilation time.
\ No newline at end of file

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1133122&r1=1133121&r2=1133122&view=diff
==
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Tue Jun  7 18:18:06 2011
@@ -60,6 +60,16 @@
   
 
   
+  
+
+  
+Change JAR scanning log messages where no TLDs are found to DEBUG level
+and replace the multiple messages with a single INFO level message that
+indicates that at least one JAR was scanned needlessly and how to 
obtain
+more info. (markt)
+  
+
+  
   
 
   



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Christopher Schultz
Keiichi,

On 6/7/2011 7:37 AM, Keiichi Fujino wrote:
> Index: conf/web.xml
> ===
> --- conf/web.xml  (revision 1127122)
> +++ conf/web.xml  (working copy)
> @@ -4176,4 +4176,6 @@
>  index.jsp
>  
> 
> +  
> +
>  

-1

This will cause web applications to fail when adding session attributes
that are not Serializable.

-chris



signature.asc
Description: OpenPGP digital signature


Re: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Mark Thomas
On 07/06/2011 19:30, Christopher Schultz wrote:
> Keiichi,
> 
> On 6/7/2011 7:37 AM, Keiichi Fujino wrote:
>> Index: conf/web.xml
>> ===
>> --- conf/web.xml (revision 1127122)
>> +++ conf/web.xml (working copy)
>> @@ -4176,4 +4176,6 @@
>>  index.jsp
>>  
>>
>> +  
>> +
>>  
> 
> -1
> 
> This will cause web applications to fail when adding session attributes
> that are not Serializable.

Not it won't. This is *not* changing the default value of distributable.

Mark



-
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.15

2011-06-07 Thread Christopher Schultz
Mark,

On 6/4/2011 4:21 PM, Mark Thomas wrote:
> The proposed Apache Tomcat 7.0.15 release is now available for voting.
>
> The proposed 7.0.15 release is:
> 
> [X] Broken - do not release

Based upon broken  capability.

:(

-chris



signature.asc
Description: OpenPGP digital signature


svn commit: r1133127 - /tomcat/trunk/webapps/docs/changelog.xml

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 18:42:36 2011
New Revision: 1133127

URL: http://svn.apache.org/viewvc?rev=1133127&view=rev
Log:
Prep for 7.0.16 tag

Modified:
tomcat/trunk/webapps/docs/changelog.xml

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1133127&r1=1133126&r2=1133127&view=diff
==
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Tue Jun  7 18:42:36 2011
@@ -58,6 +58,10 @@
 When parsing the port in the HTTP host header, treat the port as a base
 10 integer rather than a hexadecimal one. (rjung/markt/kkolinko) 
   
+  
+Various refactorings to reduce code duplication and unnecessary code in
+the connectors. (markt)
+  
 
   
   



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133128 - /tomcat/trunk/webapps/docs/changelog.xml

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 18:43:03 2011
New Revision: 1133128

URL: http://svn.apache.org/viewvc?rev=1133128&view=rev
Log:
7.0.15 was broken

Modified:
tomcat/trunk/webapps/docs/changelog.xml

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1133128&r1=1133127&r2=1133128&view=diff
==
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Tue Jun  7 18:43:03 2011
@@ -83,7 +83,7 @@
 
   
 
-
+
   
 
   



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



DO NOT REPLY [Bug 51337] New: java.lang.NullPointerException org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createPackage(LookupEnvironment.java:639)

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51337

 Bug #: 51337
   Summary: java.lang.NullPointerException
org.eclipse.jdt.internal.compiler.lookup.LookupEnviron
ment.createPackage(LookupEnvironment.java:639)
   Product: Tomcat 7
   Version: 7.0.2
  Platform: PC
OS/Version: Windows Vista
Status: NEW
  Severity: blocker
  Priority: P2
 Component: Jasper
AssignedTo: dev@tomcat.apache.org
ReportedBy: mgai...@hotmail.com
Classification: Unclassified


http://localhost:8080/examples/jsp/jsp2/el/basic-arithmetic.jsp

causes:

org.apache.jasper.JasperException: java.lang.NullPointerException   
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:528)
  
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:359)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

root cause
java.lang.NullPointerException   
org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createPackage(LookupEnvironment.java:639)
   
org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.buildTypeBindings(CompilationUnitScope.java:86)
  
org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.buildTypeBindings(LookupEnvironment.java:147)
  
org.eclipse.jdt.internal.compiler.Compiler.internalBeginToCompile(Compiler.java:590)
   org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:357)
org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:371)
org.apache.jasper.compiler.JDTCompiler.(JDTCompiler.java:193)   
org.apache.jasper.JspCompilationContext.createCompiler(JspCompilationContext.java:326)
  
org.apache.jasper.JspCompilationContext.createCompiler(JspCompilationContext.java:244)
  
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:673)
  
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:316)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

TC 7.02
java -version
java version "1.6.0_16"
Java(TM) SE Runtime Environment (build 1.6.0_16-b01)
Java HotSpot(TM) Client VM (build 14.2-b01, mixed mode)

-- 
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



DO NOT REPLY [Bug 51337] java.lang.NullPointerException org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createPackage(LookupEnvironment.java:639)

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51337

Martin Gainty  changed:

   What|Removed |Added

 CC||mgai...@hotmail.com

-- 
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: r1133131 - /tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 19:04:41 2011
New Revision: 1133131

URL: http://svn.apache.org/viewvc?rev=1133131&view=rev
Log:
Don't use a single quote in the message

Modified:
tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties

Modified: tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties?rev=1133131&r1=1133130&r2=1133131&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties 
(original)
+++ tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties Tue 
Jun  7 19:04:41 2011
@@ -27,7 +27,7 @@ JDBCStore.checkConnectionDBClosed=The da
 JDBCStore.checkConnectionDBReOpenFail=The re-open on the database failed. The 
database could be down.
 JDBCStore.checkConnectionSQLException=A SQL exception occurred {0}
 JDBCStore.checkConnectionClassNotFoundException=JDBC driver class not found {0}
-JDBCStore.wrongDataSource=Can't open JNDI DataSource [{0}]
+JDBCStore.wrongDataSource=Cannot open JNDI DataSource [{0}]
 JDBCStore.missingDataSourceName=No valid JNDI name was given.
 managerBase.createRandom=Created random number generator for session ID 
generation in {0}ms.
 managerBase.createSession.ise=createSession: Too many active sessions



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Christopher Schultz
Mark,

On 6/7/2011 2:36 PM, Mark Thomas wrote:
> On 07/06/2011 19:30, Christopher Schultz wrote:
>> Keiichi,
>>
>> On 6/7/2011 7:37 AM, Keiichi Fujino wrote:
>>> Index: conf/web.xml
>>> ===
>>> --- conf/web.xml(revision 1127122)
>>> +++ conf/web.xml(working copy)
>>> @@ -4176,4 +4176,6 @@
>>>  index.jsp
>>>  
>>>
>>> +  
>>> +
>>>  
>>
>> -1
>>
>> This will cause web applications to fail when adding session attributes
>> that are not Serializable.
> 
> Not it won't. This is *not* changing the default value of distributable.

That  flag is in conf/web.xml, which I assumed set
defaults for all web applications. Is  handled
differently than, say,  or anything else we put into
conf/web.xml?

I apologize for not having read the code at this point.

-chris



signature.asc
Description: OpenPGP digital signature


DO NOT REPLY [Bug 51337] java.lang.NullPointerException org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createPackage(LookupEnvironment.java:639)

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51337

--- Comment #1 from Christopher Schultz  
2011-06-07 19:09:51 UTC ---
How about with TC 7.0.14?

-- 
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



DO NOT REPLY [Bug 51337] java.lang.NullPointerException org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.createPackage(LookupEnvironment.java:639)

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51337

Mark Thomas  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||INVALID

--- Comment #2 from Mark Thomas  2011-06-07 19:19:57 UTC ---
Old version, no steps to reproduce. The users list is the place to seek help in
the first instance.

-- 
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: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Mark Thomas
On 07/06/2011 20:08, Christopher Schultz wrote:
> Mark,
> 
> On 6/7/2011 2:36 PM, Mark Thomas wrote:
>> On 07/06/2011 19:30, Christopher Schultz wrote:
>>> Keiichi,
>>>
>>> On 6/7/2011 7:37 AM, Keiichi Fujino wrote:
 Index: conf/web.xml
 ===
 --- conf/web.xml   (revision 1127122)
 +++ conf/web.xml   (working copy)
 @@ -4176,4 +4176,6 @@
  index.jsp
  

 +  
 +
  
>>>
>>> -1
>>>
>>> This will cause web applications to fail when adding session attributes
>>> that are not Serializable.
>>
>> Not it won't. This is *not* changing the default value of distributable.
> 
> That  flag is in conf/web.xml, which I assumed set
> defaults for all web applications. Is  handled
> differently than, say,  or anything else we put into
> conf/web.xml?

Yes. The defaults are now treated as a fragment. When merging the main
web.xml with fragments, all the fragments and the main web.xml have to
have to be distributable for the result to be distributable.

The default distributable setting for main web.xml is false.
The default distributable setting for web-fragment.xml in JARs is false.

By default, distributable is therefore false.
Only if the main web.xml and all of the fragments are marked as
distributable will the application be distributable.

The defaults are marked as distributable (in code) so they do not
prevent an app from being distributable.

> I apologize for not having read the code at this point.

I forgive you. This time. :)

Mark

> 
> -chris
> 




-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133134 - in /tomcat/trunk: java/org/apache/catalina/session/JDBCStore.java webapps/docs/changelog.xml webapps/docs/config/manager.xml

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 19:28:42 2011
New Revision: 1133134

URL: http://svn.apache.org/viewvc?rev=1133134&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=51264
Improve fix to return connections to the pool when not in use.
Patch provided by Felix Schumacher.

Modified:
tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java
tomcat/trunk/webapps/docs/changelog.xml
tomcat/trunk/webapps/docs/config/manager.xml

Modified: tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java?rev=1133134&r1=1133133&r2=1133134&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java (original)
+++ tomcat/trunk/java/org/apache/catalina/session/JDBCStore.java Tue Jun  7 
19:28:42 2011
@@ -711,16 +711,7 @@ public class JDBCStore extends StoreBase
 }
 
 try {
-if (preparedRemoveSql == null) {
-String removeSql = "DELETE FROM " + sessionTable
-+ " WHERE " + sessionIdCol + " = ?  AND "
-+ sessionAppCol + " = ?";
-preparedRemoveSql = _conn.prepareStatement(removeSql);
-}
-
-preparedRemoveSql.setString(1, id);
-preparedRemoveSql.setString(2, getName());
-preparedRemoveSql.execute();
+remove(id, _conn);
 // Break out after the finally block
 numberOfTries = 0;
 } catch (SQLException e) {
@@ -740,6 +731,28 @@ public class JDBCStore extends StoreBase
 }
 
 /**
+ * Remove the Session with the specified session identifier from
+ * this Store, if present.  If no such Session is present, this method
+ * takes no action.
+ * 
+ * @param id Session identifier of the Session to be removed
+ * @param _conn open connection to be used
+ * @throws SQLException if an error occurs while talking to the database
+ */
+private void remove(String id, Connection _conn) throws SQLException {
+if (preparedRemoveSql == null) {
+String removeSql = "DELETE FROM " + sessionTable
++ " WHERE " + sessionIdCol + " = ?  AND "
++ sessionAppCol + " = ?";
+preparedRemoveSql = _conn.prepareStatement(removeSql);
+}
+
+preparedRemoveSql.setString(1, id);
+preparedRemoveSql.setString(2, getName());
+preparedRemoveSql.execute();
+}
+
+/**
  * Remove all of the Sessions in this Store.
  *
  * @exception IOException if an input/output error occurs
@@ -799,12 +812,12 @@ public class JDBCStore extends StoreBase
 return;
 }
 
-// If sessions already exist in DB, remove and insert again.
-// TODO:
-// * Check if ID exists in database and if so use UPDATE.
-remove(session.getIdInternal());
-
 try {
+// If sessions already exist in DB, remove and insert 
again.
+// TODO:
+// * Check if ID exists in database and if so use UPDATE.
+remove(session.getIdInternal(), _conn);
+
 bos = new ByteArrayOutputStream();
 oos = new ObjectOutputStream(new 
BufferedOutputStream(bos));
 
@@ -874,11 +887,13 @@ public class JDBCStore extends StoreBase
  * @return Connection if the connection succeeded
  */
 protected Connection getConnection() {
+Connection conn = null;
 try {
-if (dbConnection == null || dbConnection.isClosed()) {
+conn = open();
+if (conn == null || conn.isClosed()) {
 
manager.getContainer().getLogger().info(sm.getString(getStoreName() + 
".checkConnectionDBClosed"));
-open();
-if (dbConnection == null || dbConnection.isClosed()) {
+conn = open();
+if (conn == null || conn.isClosed()) {
 
manager.getContainer().getLogger().info(sm.getString(getStoreName() + 
".checkConnectionDBReOpenFail"));
 }
 }
@@ -887,7 +902,7 @@ public class JDBCStore extends StoreBase
 ex.toString()));
 }
 
-return dbConnection;
+return conn;
 }
 
 /**
@@ -916,8 +931,7 @@ public class JDBCStore extends StoreBase
 }
 
 if (dataSource != null) {
-dbConnection = dataSource.getConnection();
-return dbConnection;
+return dataSource.getConnection();
 }
 
 // Instantiate our database driver if necessary
@@ -1014,13 +1028,15 @@ public

DO NOT REPLY [Bug 51264] Context/Manager/Store configuration proposal

2011-06-07 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51264

Mark Thomas  changed:

   What|Removed |Added

 Status|REOPENED|RESOLVED
 Resolution||FIXED

--- Comment #8 from Mark Thomas  2011-06-07 19:29:10 UTC ---
Fixed in 7.0.x (with some minor tweaks) and will be in 7.0.16 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



Re: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Jess Holle
web apps whose web.xml does not specify distributable should certainly 
not be treated as such -- that would be a spec violation and break lots 
of web apps.


On 6/7/2011 2:08 PM, Christopher Schultz wrote:

Mark,

On 6/7/2011 2:36 PM, Mark Thomas wrote:

On 07/06/2011 19:30, Christopher Schultz wrote:

Keiichi,

On 6/7/2011 7:37 AM, Keiichi Fujino wrote:

Index: conf/web.xml
===
--- conf/web.xml(revision 1127122)
+++ conf/web.xml(working copy)
@@ -4176,4 +4176,6 @@
  index.jsp
  

+
+
  

-1

This will cause web applications to fail when adding session attributes
that are not Serializable.

Not it won't. This is *not* changing the default value of distributable.

That  flag is in conf/web.xml, which I assumed set
defaults for all web applications. Is  handled
differently than, say,  or anything else we put into
conf/web.xml?

I apologize for not having read the code at this point.

-chris




-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Mark Thomas
On 07/06/2011 20:24, Jess Holle wrote:
> web apps whose web.xml does not specify distributable should certainly
> not be treated as such -- that would be a spec violation and break lots
> of web apps.

How many times do I have to write this? This is NOT what is being
proposed. All the proposed change does is fix a regression that prevents
*any* web application for declaring itself as distributable.

Mark

> 
> On 6/7/2011 2:08 PM, Christopher Schultz wrote:
>> Mark,
>>
>> On 6/7/2011 2:36 PM, Mark Thomas wrote:
>>> On 07/06/2011 19:30, Christopher Schultz wrote:
 Keiichi,

 On 6/7/2011 7:37 AM, Keiichi Fujino wrote:
> Index: conf/web.xml
> ===
> --- conf/web.xml(revision 1127122)
> +++ conf/web.xml(working copy)
> @@ -4176,4 +4176,6 @@
>   index.jsp
>   
>
> +
> +
>   
 -1

 This will cause web applications to fail when adding session attributes
 that are not Serializable.
>>> Not it won't. This is *not* changing the default value of distributable.
>> That  flag is in conf/web.xml, which I assumed set
>> defaults for all web applications. Is  handled
>> differently than, say,  or anything else we put into
>> conf/web.xml?
>>
>> I apologize for not having read the code at this point.
>>
>> -chris
>>
> 
> 
> -
> 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: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Rainer Jung
On 07.06.2011 21:39, Mark Thomas wrote:
> On 07/06/2011 20:24, Jess Holle wrote:
>> web apps whose web.xml does not specify distributable should certainly
>> not be treated as such -- that would be a spec violation and break lots
>> of web apps.
> 
> How many times do I have to write this? This is NOT what is being
> proposed. All the proposed change does is fix a regression that prevents
> *any* web application for declaring itself as distributable.

+1 to that change and to 7.0.15 is broken.

Regards,

Rainer


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Mark Thomas
On 07/06/2011 21:54, Rainer Jung wrote:
> On 07.06.2011 21:39, Mark Thomas wrote:
>> On 07/06/2011 20:24, Jess Holle wrote:
>>> web apps whose web.xml does not specify distributable should certainly
>>> not be treated as such -- that would be a spec violation and break lots
>>> of web apps.
>>
>> How many times do I have to write this? This is NOT what is being
>> proposed. All the proposed change does is fix a regression that prevents
>> *any* web application for declaring itself as distributable.
> 
> +1 to that change and to 7.0.15 is broken.

I've confirmed with testing that the proposed fix does exactly what is
intended and fixes the regression. I'll be committing it shortly.

Mark




-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Konstantin Kolinko
2011/6/8 Mark Thomas :
> On 07/06/2011 21:54, Rainer Jung wrote:
>> On 07.06.2011 21:39, Mark Thomas wrote:
>>> On 07/06/2011 20:24, Jess Holle wrote:
 web apps whose web.xml does not specify distributable should certainly
 not be treated as such -- that would be a spec violation and break lots
 of web apps.
>>>
>>> How many times do I have to write this? This is NOT what is being
>>> proposed. All the proposed change does is fix a regression that prevents
>>> *any* web application for declaring itself as distributable.
>>
>> +1 to that change and to 7.0.15 is broken.
>
> I've confirmed with testing that the proposed fix does exactly what is
> intended and fixes the regression. I'll be committing it shortly.
>

I reviewed it and am revoking my veto wrt. Plan A.
+1 to the change to ContextConfig.java,

BTW, two minor thoughts wrt. o.a.c.startup.ContextConfig#webConfig()
1) Line 1208

// Parse host level web.xml if present
// Additive apart from welcome pages
webXml.setReplaceWelcomeFiles(true);
InputSource hostWebXml = getHostWebXmlSource();
parseWebXml(hostWebXml, webXmlDefaultFragment, false);

The "webXml.setReplaceWelcomeFiles(true);" call is needed, but from
the comment it seems to me that
webXmlDefaultFragment.setReplaceWelcomeFiles(true); is also needed
here,
because webXmlDefaultFragment is the argument to parseWebXml() call
and not webXml.

2)
Line 1223:
All of the code below
// Assuming 0 is safe for what is required in this case
double webXmlVersion = 0;
if (webXml.getVersion() != null) {
webXmlVersion = Double.parseDouble(webXml.getVersion());
}

if (webXmlVersion >= 3) {
 Just can be replaced with one line
if (webXml.getMajorVersion() >= 3) {

Note, that webXml.getVersion() never returns null.

Best regards,
Konstantin Kolinko

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133170 - /tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java

2011-06-07 Thread kkolinko
Author: kkolinko
Date: Tue Jun  7 21:56:16 2011
New Revision: 1133170

URL: http://svn.apache.org/viewvc?rev=1133170&view=rev
Log:
Followup to r1133122
if(flag) set flag:=false

Modified:
tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java

Modified: tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java?rev=1133170&r1=1133169&r2=1133170&view=diff
==
--- tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java 
(original)
+++ tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java Tue Jun 
 7 21:56:16 2011
@@ -448,7 +448,7 @@ public class TldLocationsCache {
 } else if (showTldScanWarning) {
 // Not entirely thread-safe but a few duplicate log messages 
are
 // not a huge issue
-showTldScanWarning = true;
+showTldScanWarning = false;
 log.info(Localizer.getMessage("jsp.tldCache.noTldSummary"));
 }
 }



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133172 - /tomcat/trunk/java/org/apache/catalina/valves/CrawlerSessionManagerValve.java

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 22:04:44 2011
New Revision: 1133172

URL: http://svn.apache.org/viewvc?rev=1133172&view=rev
Log:
Enable for async requests

Modified:
tomcat/trunk/java/org/apache/catalina/valves/CrawlerSessionManagerValve.java

Modified: 
tomcat/trunk/java/org/apache/catalina/valves/CrawlerSessionManagerValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/CrawlerSessionManagerValve.java?rev=1133172&r1=1133171&r2=1133172&view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/valves/CrawlerSessionManagerValve.java 
(original)
+++ 
tomcat/trunk/java/org/apache/catalina/valves/CrawlerSessionManagerValve.java 
Tue Jun  7 22:04:44 2011
@@ -55,6 +55,14 @@ public class CrawlerSessionManagerValve 
 
 
 /**
+ * Specifies a default constructor so async support can be configured.
+ */
+public CrawlerSessionManagerValve() {
+super(true);
+}
+
+
+/**
  * Specify the regular expression (using {@link Pattern}) that will be used
  * to identify crawlers based in the User-Agent header provided. The 
default
  * is ".*GoogleBot.*|.*bingbot.*|.*Yahoo! Slurp.*"



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133173 - /tomcat/trunk/java/org/apache/catalina/valves/JDBCAccessLogValve.java

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 22:05:31 2011
New Revision: 1133173

URL: http://svn.apache.org/viewvc?rev=1133173&view=rev
Log:
Enable for async requests (invoke just passes the request through so no issues 
with async)

Modified:
tomcat/trunk/java/org/apache/catalina/valves/JDBCAccessLogValve.java

Modified: tomcat/trunk/java/org/apache/catalina/valves/JDBCAccessLogValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/JDBCAccessLogValve.java?rev=1133173&r1=1133172&r2=1133173&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/valves/JDBCAccessLogValve.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/valves/JDBCAccessLogValve.java Tue 
Jun  7 22:05:31 2011
@@ -140,7 +140,7 @@ public final class JDBCAccessLogValve ex
  * 
  */
 public JDBCAccessLogValve() {
-super(false);
+super(true);
 driverName = null;
 connectionURL = null;
 tableName = "access";



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: svn commit: r1133170 - /tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java

2011-06-07 Thread Mark Thomas
On 07/06/2011 22:56, kkoli...@apache.org wrote:
> Author: kkolinko
> Date: Tue Jun  7 21:56:16 2011
> New Revision: 1133170
> 
> URL: http://svn.apache.org/viewvc?rev=1133170&view=rev
> Log:
> Followup to r1133122
> if(flag) set flag:=false

Thanks for the catch. I inverted the logic and forget that one.

Mark

> 
> Modified:
> tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java
> 
> Modified: tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java
> URL: 
> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java?rev=1133170&r1=1133169&r2=1133170&view=diff
> ==
> --- tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java 
> (original)
> +++ tomcat/trunk/java/org/apache/jasper/compiler/TldLocationsCache.java Tue 
> Jun  7 21:56:16 2011
> @@ -448,7 +448,7 @@ public class TldLocationsCache {
>  } else if (showTldScanWarning) {
>  // Not entirely thread-safe but a few duplicate log messages 
> are
>  // not a huge issue
> -showTldScanWarning = true;
> +showTldScanWarning = false;
>  log.info(Localizer.getMessage("jsp.tldCache.noTldSummary"));
>  }
>  }
> 
> 
> 
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
> 




-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133177 - /tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 22:14:52 2011
New Revision: 1133177

URL: http://svn.apache.org/viewvc?rev=1133177&view=rev
Log:
Enable for async requests
Only look for a change on non-async requests. There will always be one of these 
before any async processing on a request so no need to check if the current 
request is in the middle of async processing

Modified:
tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java

Modified: 
tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java?rev=1133177&r1=1133176&r2=1133177&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java 
Tue Jun  7 22:14:52 2011
@@ -102,7 +102,7 @@ public class JvmRouteBinderValve extends
 
 //-- Constructor
 public JvmRouteBinderValve() {
-super(false);
+super(true);
 }
 
 /*--Instance Variables--*/
@@ -199,9 +199,10 @@ public class JvmRouteBinderValve extends
 public void invoke(Request request, Response response) throws IOException,
 ServletException {
 
- if (getEnabled() 
- && request.getContext() != null
- && request.getContext().getDistributable() ) {
+ if (getEnabled() &&
+ request.getContext() != null &&
+ request.getContext().getDistributable() &&
+ !request.isAsyncDispatching()) {
  // valve cluster can access manager - other cluster handle 
turnover 
  // at host level - hopefully!
  Manager manager = request.getContext().getManager();



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133182 - /tomcat/trunk/webapps/docs/logging.xml

2011-06-07 Thread kkolinko
Author: kkolinko
Date: Tue Jun  7 22:28:45 2011
New Revision: 1133182

URL: http://svn.apache.org/viewvc?rev=1133182&view=rev
Log:
Align log4j configuration example with log4j documentation: start property 
names with an uppercase character.
It is just a question of style: it should work either way.

Modified:
tomcat/trunk/webapps/docs/logging.xml

Modified: tomcat/trunk/webapps/docs/logging.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/logging.xml?rev=1133182&r1=1133181&r2=1133182&view=diff
==
--- tomcat/trunk/webapps/docs/logging.xml (original)
+++ tomcat/trunk/webapps/docs/logging.xml Tue Jun  7 22:28:45 2011
@@ -415,42 +415,42 @@ log4j.rootLogger=INFO, CATALINA
 
 # Define all the appenders
 log4j.appender.CATALINA=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.CATALINA.file=${catalina.base}/logs/catalina.
-log4j.appender.CATALINA.encoding=UTF-8
+log4j.appender.CATALINA.File=${catalina.base}/logs/catalina.
+log4j.appender.CATALINA.Append=true
+log4j.appender.CATALINA.Encoding=UTF-8
 # Roll-over the log once per day
 log4j.appender.CATALINA.DatePattern='.'-MM-dd'.log'
 log4j.appender.CATALINA.layout = org.apache.log4j.PatternLayout
-log4j.appender.CATALINA.layout.conversionPattern = %d [%t] %-5p %c- %m%n
-log4j.appender.CATALINA.append=true
+log4j.appender.CATALINA.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
 
 log4j.appender.LOCALHOST=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.LOCALHOST.file=${catalina.base}/logs/localhost.
-log4j.appender.LOCALHOST.encoding=UTF-8
+log4j.appender.LOCALHOST.File=${catalina.base}/logs/localhost.
+log4j.appender.LOCALHOST.Append=true
+log4j.appender.LOCALHOST.Encoding=UTF-8
 log4j.appender.LOCALHOST.DatePattern='.'-MM-dd'.log'
 log4j.appender.LOCALHOST.layout = org.apache.log4j.PatternLayout
-log4j.appender.LOCALHOST.layout.conversionPattern = %d [%t] %-5p %c- %m%n
-log4j.appender.LOCALHOST.append=true
+log4j.appender.LOCALHOST.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
 
 log4j.appender.MANAGER=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.MANAGER.file=${catalina.base}/logs/manager.
-log4j.appender.MANAGER.encoding=UTF-8
+log4j.appender.MANAGER.File=${catalina.base}/logs/manager.
+log4j.appender.MANAGER.Append=true
+log4j.appender.MANAGER.Encoding=UTF-8
 log4j.appender.MANAGER.DatePattern='.'-MM-dd'.log'
 log4j.appender.MANAGER.layout = org.apache.log4j.PatternLayout
-log4j.appender.MANAGER.layout.conversionPattern = %d [%t] %-5p %c- %m%n
-log4j.appender.MANAGER.append=true
+log4j.appender.MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
 
 log4j.appender.HOST-MANAGER=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.HOST-MANAGER.file=${catalina.base}/logs/host-manager.
-log4j.appender.HOST-MANAGER.encoding=UTF-8
+log4j.appender.HOST-MANAGER.File=${catalina.base}/logs/host-manager.
+log4j.appender.HOST-MANAGER.Append=true
+log4j.appender.HOST-MANAGER.Encoding=UTF-8
 log4j.appender.HOST-MANAGER.DatePattern='.'-MM-dd'.log'
 log4j.appender.HOST-MANAGER.layout = org.apache.log4j.PatternLayout
-log4j.appender.HOST-MANAGER.layout.conversionPattern = %d [%t] %-5p %c- 
%m%n
-log4j.appender.HOST-MANAGER.append=true
+log4j.appender.HOST-MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- 
%m%n
 
 log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
-log4j.appender.CONSOLE.encoding=UTF-8
+log4j.appender.CONSOLE.Encoding=UTF-8
 log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout
-log4j.appender.CONSOLE.layout.conversionPattern = %d [%t] %-5p %c- %m%n
+log4j.appender.CONSOLE.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
 
 # Configure which loggers log to which appenders
 
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=INFO,
 LOCALHOST



-
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.15

2011-06-07 Thread Rainer Jung
Update:

I ran org/apache/tomcat/util/http/mapper/TestMapperWelcomeFiles.java in
a loop. The crash happens in about 5-10% of all runs. I'm not saying the
crsh is specific to this test, I just tried to reproduce it with the
test for which I noticed it first.

The good thing:

- I checked without r1130539 (BZ 51310, added a destroy cal) and the
problem still occurs

- I checked with 7.0.14 and the problem still occurs.

So it is not a regression.

- Even better: very rarely instead of a crash I get and unterminated
loop in apr_allocator_destroy because of circular pointer chains. And
that - crashes and rare untrminated loops in apr_allocator_destroy -
makes it exactly the same kind of fault I occasionally notice when
testing apr using its own test suite. We (APR) still do not know the
root cause for this, last time there was speculation about the test
being borked. I might use our often failing little TC test to
investigate the APR problem :)

Regards,

Rainer

On 05.06.2011 18:33, Rainer Jung wrote:
> Not a vote yet:
> 
> I get a test failure:
> 
> Testcase: testWelcomeFileStrict took 0.005 sec
>   Caused an ERROR
> Forked Java VM exited abnormally. Please note the time in the report
> does not reflect the time until the VM exit.
> junit.framework.AssertionFailedError: Forked Java VM exited abnormally.
> Please note the time in the report does not reflect the time until the
> VM exit.
> 
> 
> And indeed there is a core file and a hotspot error file. The crash
> happens in tcnative, more precisely in apr_allocator_destroy(). Could it
> have to do with the recent addition of server.destroy() (BZ 51310)?
> 
> Note that I only recently added the APR tests to my standard checks.
> Furthermore I could not reproduce it during a second test. So the root
> cause could be older.
> 
> 
> C  [libapr-1.so.0+0x13f00]  apr_allocator_destroy+0x10
> C  [libapr-1.so.0+0x14c20]  apr_pool_terminate+0x4c
> j  org.apache.tomcat.jni.Library.terminate()V+-2499892
> j  org.apache.tomcat.jni.Library.terminate()V+0
> v  ~StubRoutines::call_stub
> V  [libjvm.so+0x16b1a4]
> V  [libjvm.so+0x7c5a04]
> V  [libjvm.so+0x22579c]
> V  [libjvm.so+0x223eb4]
> C  [libjava.so+0x10be4]
> Java_sun_reflect_NativeMethodAccessorImpl_invoke0+0x18
> j
> sun.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+-1751180
> j
> sun.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+0
> j
> sun.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+87
> j
> sun.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+6
> j
> java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+161
> j  org.apache.catalina.core.AprLifecycleListener.terminateAPR()V+23
> j
> org.apache.catalina.core.AprLifecycleListener.lifecycleEvent(Lorg/apache/catalina/LifecycleEvent;)V+96
> j
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(Ljava/lang/String;Ljava/lang/Object;)V+37
> j
> org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(Ljava/lang/String;Ljava/lang/Object;)V+6
> j
> org.apache.catalina.util.LifecycleBase.setStateInternal(Lorg/apache/catalina/LifecycleState;Ljava/lang/Object;Z)V+140
> j  org.apache.catalina.util.LifecycleBase.destroy()V+194
> j  org.apache.catalina.startup.Tomcat.destroy()V+9
> j  org.apache.catalina.startup.TomcatBaseTest.tearDown()V+57
> j  junit.framework.TestCase.runBare()V+34
> j  junit.framework.TestResult$1.protect()V+4
> j
> junit.framework.TestResult.runProtected(Ljunit/framework/Test;Ljunit/framework/Protectable;)V+1
> j  junit.framework.TestResult.run(Ljunit/framework/TestCase;)V+18
> j  junit.framework.TestCase.run(Ljunit/framework/TestResult;)V+2
> j
> junit.framework.TestSuite.runTest(Ljunit/framework/Test;Ljunit/framework/TestResult;)V+2
> j  junit.framework.TestSuite.run(Ljunit/framework/TestResult;)V+37
> j  org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run()V+693
> j
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(Lorg/apache/tools/ant/taskdefs/optional/junit/JUnitTest;[Ljava/lang/String;ZZ)I+41
> j
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main([Ljava/lang/String;)V+918
> v  ~StubRoutines::call_stub
> V  [libjvm.so+0x16b1a4]
> V  [libjvm.so+0x20f4fc]
> C  [java+0x3ab8]
> 

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133185 - /tomcat/trunk/webapps/docs/logging.xml

2011-06-07 Thread kkolinko
Author: kkolinko
Date: Tue Jun  7 22:40:56 2011
New Revision: 1133185

URL: http://svn.apache.org/viewvc?rev=1133185&view=rev
Log:
Simplify markup: remove s from the end of lines. They are not needed 
inside the  tag.

Modified:
tomcat/trunk/webapps/docs/logging.xml

Modified: tomcat/trunk/webapps/docs/logging.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/logging.xml?rev=1133185&r1=1133184&r2=1133185&view=diff
==
--- tomcat/trunk/webapps/docs/logging.xml (original)
+++ tomcat/trunk/webapps/docs/logging.xml Tue Jun  7 22:40:56 2011
@@ -414,50 +414,50 @@ java.util.logging.ConsoleHandler.formatt
 log4j.rootLogger=INFO, CATALINA
 
 # Define all the appenders
-log4j.appender.CATALINA=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.CATALINA.File=${catalina.base}/logs/catalina.
-log4j.appender.CATALINA.Append=true
-log4j.appender.CATALINA.Encoding=UTF-8
-# Roll-over the log once per day
-log4j.appender.CATALINA.DatePattern='.'-MM-dd'.log'
+log4j.appender.CATALINA=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.CATALINA.File=${catalina.base}/logs/catalina.
+log4j.appender.CATALINA.Append=true
+log4j.appender.CATALINA.Encoding=UTF-8
+# Roll-over the log once per day
+log4j.appender.CATALINA.DatePattern='.'-MM-dd'.log'
 log4j.appender.CATALINA.layout = org.apache.log4j.PatternLayout
-log4j.appender.CATALINA.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
-
-log4j.appender.LOCALHOST=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.LOCALHOST.File=${catalina.base}/logs/localhost.
-log4j.appender.LOCALHOST.Append=true
-log4j.appender.LOCALHOST.Encoding=UTF-8
-log4j.appender.LOCALHOST.DatePattern='.'-MM-dd'.log'
+log4j.appender.CATALINA.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
+
+log4j.appender.LOCALHOST=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.LOCALHOST.File=${catalina.base}/logs/localhost.
+log4j.appender.LOCALHOST.Append=true
+log4j.appender.LOCALHOST.Encoding=UTF-8
+log4j.appender.LOCALHOST.DatePattern='.'-MM-dd'.log'
 log4j.appender.LOCALHOST.layout = org.apache.log4j.PatternLayout
-log4j.appender.LOCALHOST.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
+log4j.appender.LOCALHOST.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
 
-log4j.appender.MANAGER=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.MANAGER.File=${catalina.base}/logs/manager.
-log4j.appender.MANAGER.Append=true
-log4j.appender.MANAGER.Encoding=UTF-8
-log4j.appender.MANAGER.DatePattern='.'-MM-dd'.log'
+log4j.appender.MANAGER=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.MANAGER.File=${catalina.base}/logs/manager.
+log4j.appender.MANAGER.Append=true
+log4j.appender.MANAGER.Encoding=UTF-8
+log4j.appender.MANAGER.DatePattern='.'-MM-dd'.log'
 log4j.appender.MANAGER.layout = org.apache.log4j.PatternLayout
-log4j.appender.MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
+log4j.appender.MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
 
-log4j.appender.HOST-MANAGER=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.HOST-MANAGER.File=${catalina.base}/logs/host-manager.
-log4j.appender.HOST-MANAGER.Append=true
-log4j.appender.HOST-MANAGER.Encoding=UTF-8
-log4j.appender.HOST-MANAGER.DatePattern='.'-MM-dd'.log'
+log4j.appender.HOST-MANAGER=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.HOST-MANAGER.File=${catalina.base}/logs/host-manager.
+log4j.appender.HOST-MANAGER.Append=true
+log4j.appender.HOST-MANAGER.Encoding=UTF-8
+log4j.appender.HOST-MANAGER.DatePattern='.'-MM-dd'.log'
 log4j.appender.HOST-MANAGER.layout = org.apache.log4j.PatternLayout
-log4j.appender.HOST-MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- 
%m%n
+log4j.appender.HOST-MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
 
-log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
-log4j.appender.CONSOLE.Encoding=UTF-8
+log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
+log4j.appender.CONSOLE.Encoding=UTF-8
 log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout
-log4j.appender.CONSOLE.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
-
-# Configure which loggers log to which appenders
-log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=INFO,
 LOCALHOST
-log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager]=\
-  INFO, MANAGER
-log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager]=\
-  INFO, HOST-MANAGER
+log4j.appender.CONSOLE.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
+
+# Configure which loggers log to which appenders
+log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=INFO,
 LOCALHOST
+log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager]=\
+  INFO, MANAGER
+log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager]=\
+  INFO, HOST-MANAGER
 

svn commit: r1133188 - /tomcat/tc6.0.x/trunk/webapps/docs/logging.xml

2011-06-07 Thread kkolinko
Author: kkolinko
Date: Tue Jun  7 22:49:42 2011
New Revision: 1133188

URL: http://svn.apache.org/viewvc?rev=1133188&view=rev
Log:
Align log4j configuration example with log4j documentation: start property 
names with an uppercase character.
Remove s from the end of lines. They are not needed inside the  tag.
CTR: docs

Modified:
tomcat/tc6.0.x/trunk/webapps/docs/logging.xml

Modified: tomcat/tc6.0.x/trunk/webapps/docs/logging.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/logging.xml?rev=1133188&r1=1133187&r2=1133188&view=diff
==
--- tomcat/tc6.0.x/trunk/webapps/docs/logging.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/logging.xml Tue Jun  7 22:49:42 2011
@@ -417,50 +417,50 @@ java.util.logging.ConsoleHandler.formatt
 log4j.rootLogger=INFO, CATALINA
 
 # Define all the appenders
-log4j.appender.CATALINA=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.CATALINA.file=${catalina.base}/logs/catalina.
-log4j.appender.CATALINA.encoding=UTF-8
-# Roll-over the log once per day
-log4j.appender.CATALINA.DatePattern='.'-MM-dd'.log'
+log4j.appender.CATALINA=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.CATALINA.File=${catalina.base}/logs/catalina.
+log4j.appender.CATALINA.Append=true
+log4j.appender.CATALINA.Encoding=UTF-8
+# Roll-over the log once per day
+log4j.appender.CATALINA.DatePattern='.'-MM-dd'.log'
 log4j.appender.CATALINA.layout = org.apache.log4j.PatternLayout
-log4j.appender.CATALINA.layout.conversionPattern = %d [%t] %-5p %c- %m%n
-log4j.appender.CATALINA.append=true
-
-log4j.appender.LOCALHOST=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.LOCALHOST.file=${catalina.base}/logs/localhost.
-log4j.appender.LOCALHOST.encoding=UTF-8
-log4j.appender.LOCALHOST.DatePattern='.'-MM-dd'.log'
+log4j.appender.CATALINA.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
+
+log4j.appender.LOCALHOST=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.LOCALHOST.File=${catalina.base}/logs/localhost.
+log4j.appender.LOCALHOST.Append=true
+log4j.appender.LOCALHOST.Encoding=UTF-8
+log4j.appender.LOCALHOST.DatePattern='.'-MM-dd'.log'
 log4j.appender.LOCALHOST.layout = org.apache.log4j.PatternLayout
-log4j.appender.LOCALHOST.layout.conversionPattern = %d [%t] %-5p %c- %m%n
-log4j.appender.LOCALHOST.append=true
+log4j.appender.LOCALHOST.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
 
-log4j.appender.MANAGER=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.MANAGER.file=${catalina.base}/logs/manager.
-log4j.appender.MANAGER.encoding=UTF-8
-log4j.appender.MANAGER.DatePattern='.'-MM-dd'.log'
+log4j.appender.MANAGER=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.MANAGER.File=${catalina.base}/logs/manager.
+log4j.appender.MANAGER.Append=true
+log4j.appender.MANAGER.Encoding=UTF-8
+log4j.appender.MANAGER.DatePattern='.'-MM-dd'.log'
 log4j.appender.MANAGER.layout = org.apache.log4j.PatternLayout
-log4j.appender.MANAGER.layout.conversionPattern = %d [%t] %-5p %c- %m%n
-log4j.appender.MANAGER.append=true
+log4j.appender.MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
 
-log4j.appender.HOST-MANAGER=org.apache.log4j.DailyRollingFileAppender
-log4j.appender.HOST-MANAGER.file=${catalina.base}/logs/host-manager.
-log4j.appender.HOST-MANAGER.encoding=UTF-8
-log4j.appender.HOST-MANAGER.DatePattern='.'-MM-dd'.log'
+log4j.appender.HOST-MANAGER=org.apache.log4j.DailyRollingFileAppender
+log4j.appender.HOST-MANAGER.File=${catalina.base}/logs/host-manager.
+log4j.appender.HOST-MANAGER.Append=true
+log4j.appender.HOST-MANAGER.Encoding=UTF-8
+log4j.appender.HOST-MANAGER.DatePattern='.'-MM-dd'.log'
 log4j.appender.HOST-MANAGER.layout = org.apache.log4j.PatternLayout
-log4j.appender.HOST-MANAGER.layout.conversionPattern = %d [%t] %-5p %c- 
%m%n
-log4j.appender.HOST-MANAGER.append=true
+log4j.appender.HOST-MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
 
-log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
-log4j.appender.CONSOLE.encoding=UTF-8
+log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
+log4j.appender.CONSOLE.Encoding=UTF-8
 log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout
-log4j.appender.CONSOLE.layout.conversionPattern = %d [%t] %-5p %c- %m%n
-
-# Configure which loggers log to which appenders
-log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=INFO,
 LOCALHOST
-log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager]=\
-  INFO, MANAGER
-log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager]=\
-  INFO, HOST-MANAGER
+log4j.appender.CONSOLE.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
+
+# Configure which loggers log to which appenders
+log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=INFO,
 LOCALHOST
+log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager

svn commit: r1133193 - /tomcat/trunk/java/org/apache/catalina/valves/PersistentValve.java

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 23:12:18 2011
New Revision: 1133193

URL: http://svn.apache.org/viewvc?rev=1133193&view=rev
Log:
Enable for async requests
Don't persist the session if processing an async request. Note: There may be 
some async states where the session could be safely persisted.

Modified:
tomcat/trunk/java/org/apache/catalina/valves/PersistentValve.java

Modified: tomcat/trunk/java/org/apache/catalina/valves/PersistentValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/PersistentValve.java?rev=1133193&r1=1133192&r2=1133193&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/valves/PersistentValve.java (original)
+++ tomcat/trunk/java/org/apache/catalina/valves/PersistentValve.java Tue Jun  
7 23:12:18 2011
@@ -50,7 +50,7 @@ public class PersistentValve extends Val
 
 //-- Constructor
 public PersistentValve() {
-super(false);
+super(true);
 }
 
 // - Instance Variables
@@ -146,45 +146,52 @@ public class PersistentValve extends Val
 // Ask the next valve to process the request.
 getNext().invoke(request, response);
 
-// Read the sessionid after the response.
-// HttpSession hsess = hreq.getSession(false);
-Session hsess;
-try {
-hsess = request.getSessionInternal();
-} catch (Exception ex) {
-hsess = null;
-}
-String newsessionId = null;
-if (hsess!=null)
-newsessionId = hsess.getIdInternal();
-
-if (container.getLogger().isDebugEnabled())
-container.getLogger().debug("newsessionId: " + newsessionId);
-if (newsessionId!=null) {
-/* store the session in the store and remove it from the manager */
-if (manager instanceof PersistentManager) {
-Session session = manager.findSession(newsessionId);
-Store store = ((PersistentManager) manager).getStore();
-if (store != null && session!=null &&
-session.isValid() &&
-!isSessionStale(session, System.currentTimeMillis())) {
-// ((StandardSession)session).passivate();
-store.save(session);
-((PersistentManager) manager).removeSuper(session);
-session.recycle();
+// If still processing async, don't try to store the session
+// TODO: Are there some async states where it is would be safe to store
+// the session?
+if (!request.isAsync()) {
+// Read the sessionid after the response.
+// HttpSession hsess = hreq.getSession(false);
+Session hsess;
+try {
+hsess = request.getSessionInternal();
+} catch (Exception ex) {
+hsess = null;
+}
+String newsessionId = null;
+if (hsess!=null)
+newsessionId = hsess.getIdInternal();
+
+if (container.getLogger().isDebugEnabled())
+container.getLogger().debug("newsessionId: " + newsessionId);
+if (newsessionId!=null) {
+/* store the session and remove it from the manager */
+if (manager instanceof PersistentManager) {
+Session session = manager.findSession(newsessionId);
+Store store = ((PersistentManager) manager).getStore();
+if (store != null && session!=null &&
+session.isValid() &&
+!isSessionStale(session, System.currentTimeMillis())) {
+// ((StandardSession)session).passivate();
+store.save(session);
+((PersistentManager) manager).removeSuper(session);
+session.recycle();
+} else {
+if (container.getLogger().isDebugEnabled())
+container.getLogger().debug("newsessionId store: " 
+
+store + " session: " + session +
+" valid: " +
+(session == null ? "N/A" : 
Boolean.toString(
+session.isValid())) +
+" stale: " + isSessionStale(session,
+System.currentTimeMillis()));
+
+}
 } else {
 if (container.getLogger().isDebugEnabled())
-container.getLogger().debug("newsessionId store: " +
-store + " session: " + session + " valid: " +
-(session == null ? "

svn commit: r1133197 - /tomcat/trunk/java/org/apache/catalina/ha/tcp/ReplicationValve.java

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 23:37:29 2011
New Revision: 1133197

URL: http://svn.apache.org/viewvc?rev=1133197&view=rev
Log:
Enable for async requests.
Depending on how async is used, may see multiple replication requests for a 
single async request.

Modified:
tomcat/trunk/java/org/apache/catalina/ha/tcp/ReplicationValve.java

Modified: tomcat/trunk/java/org/apache/catalina/ha/tcp/ReplicationValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/tcp/ReplicationValve.java?rev=1133197&r1=1133196&r2=1133197&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/ha/tcp/ReplicationValve.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/ha/tcp/ReplicationValve.java Tue Jun  
7 23:37:29 2011
@@ -121,7 +121,7 @@ public class ReplicationValve
 // - Properties
 
 public ReplicationValve() {
-super(false);
+super(true);
 }
 
 /**
@@ -556,11 +556,13 @@ public class ReplicationValve
 }
 
 /**
- * protocol cluster replications stats
+ * Protocol cluster replications stats
  * @param requestTime
  * @param clusterTime
  */
 protected  void updateStats(long requestTime, long clusterTime) {
+// TODO: Async requests may trigger multiple replication requests. How,
+//   if at all, should the stats handle this?
 synchronized(this) {
 lastSendTime=System.currentTimeMillis();
 totalSendTime+=lastSendTime - clusterTime;



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133199 - /tomcat/trunk/java/org/apache/catalina/valves/SemaphoreValve.java

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 23:43:31 2011
New Revision: 1133199

URL: http://svn.apache.org/viewvc?rev=1133199&view=rev
Log:
Enable for async requests.
Async requests should appear as serial requests when requiring multiple 
internal requests so concurrency should behave as expected.

Modified:
tomcat/trunk/java/org/apache/catalina/valves/SemaphoreValve.java

Modified: tomcat/trunk/java/org/apache/catalina/valves/SemaphoreValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/SemaphoreValve.java?rev=1133199&r1=1133198&r2=1133199&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/valves/SemaphoreValve.java (original)
+++ tomcat/trunk/java/org/apache/catalina/valves/SemaphoreValve.java Tue Jun  7 
23:43:31 2011
@@ -31,7 +31,9 @@ import org.apache.catalina.connector.Res
  * Implementation of a Valve that limits concurrency.
  *
  * This Valve may be attached to any Container, depending on the granularity
- * of the concurrency control you wish to perform.
+ * of the concurrency control you wish to perform. Note that internally, some
+ * async requests may require multiple serial requests to complete what - to 
the
+ * user - appears as a single request.
  *
  * @author Remy Maucherat
  * @version $Id$
@@ -41,7 +43,7 @@ public class SemaphoreValve extends Valv
 
 //-- Constructor
 public SemaphoreValve() {
-super(false); //TODO - is this async aware
+super(true);
 }
 
 // - Instance Variables



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133200 - /tomcat/trunk/java/org/apache/catalina/valves/StuckThreadDetectionValve.java

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 23:47:16 2011
New Revision: 1133200

URL: http://svn.apache.org/viewvc?rev=1133200&view=rev
Log:
Enable for async requests.
Looking for stuck threads - no special async support required here.
When the asycn timeout is infinite requests may get stuck but that'll need a 
different detection mechanism.

Modified:
tomcat/trunk/java/org/apache/catalina/valves/StuckThreadDetectionValve.java

Modified: 
tomcat/trunk/java/org/apache/catalina/valves/StuckThreadDetectionValve.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/StuckThreadDetectionValve.java?rev=1133200&r1=1133199&r2=1133200&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/valves/StuckThreadDetectionValve.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/valves/StuckThreadDetectionValve.java 
Tue Jun  7 23:47:16 2011
@@ -1,302 +1,311 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *  http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.catalina.valves;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Queue;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentLinkedQueue;
-import java.util.concurrent.atomic.AtomicInteger;
-
-import javax.servlet.ServletException;
-
-import org.apache.catalina.LifecycleException;
-import org.apache.catalina.connector.Request;
-import org.apache.catalina.connector.Response;
-import org.apache.juli.logging.Log;
-import org.apache.juli.logging.LogFactory;
-import org.apache.tomcat.util.res.StringManager;
-
-/**
- * This valve allows to detect requests that take a long time to process, 
which might
- * indicate that the thread that is processing it is stuck.
- * Based on code proposed by TomLu in Bugzilla entry #50306
- * 
- * @author slaurent
- *
- */
-public class StuckThreadDetectionValve extends ValveBase {
-
-/**
- * The descriptive information related to this implementation.
- */
-private static final String info =
-"org.apache.catalina.valves.StuckThreadDetectionValve/1.0";
-/**
- * Logger
- */
-private static final Log log = 
LogFactory.getLog(StuckThreadDetectionValve.class);
-
-/**
- * The string manager for this package.
- */
-private static final StringManager sm =
-StringManager.getManager(Constants.Package);
-
-/**
- * Keeps count of the number of stuck threads detected
- */
-private final AtomicInteger stuckCount = new AtomicInteger(0);
-
-/**
- * In seconds. Default 600 (10 minutes).
- */
-private int threshold = 600;
-
-/**
- * The only references we keep to actual running Thread objects are in
- * this Map (which is automatically cleaned in invoke()s finally clause).
- * That way, Threads can be GC'ed, eventhough the Valve still thinks they
- * are stuck (caused by a long monitor interval)
- */
-private ConcurrentHashMap activeThreads =
-new ConcurrentHashMap();
-/**
- *
- */
-private Queue completedStuckThreadsQueue =
-new ConcurrentLinkedQueue();
-
-/**
- * Specify the threshold (in seconds) used when checking for stuck threads.
- * If <=0, the detection is disabled. The default is 600 seconds.
- * 
- * @param threshold
- *The new threshold in seconds
- */
-public void setThreshold(int threshold) {
-this.threshold = threshold;
-}
-
-/**
- * @see #setThreshold(int)
- * @return The current threshold in seconds
- */
-public int getThreshold() {
-return threshold;
-}
-
-@Override
-protected void initInternal() throws LifecycleException {
-super.initInternal();
-
-if (log.isDebugEnabled()) {
-log.debug("Monitoring stuck threads with threshold = "
-+ threshold
-+ " sec");
-}
-}
-
-/**
- * Return descriptive information about this Valve implementation.
- */
-@Override
-public String getInfo() {
-return info;
-}
-
-private void notifyStu

svn commit: r1133201 - in /tomcat/trunk: java/org/apache/catalina/startup/ContextConfig.java webapps/docs/changelog.xml

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 23:48:17 2011
New Revision: 1133201

URL: http://svn.apache.org/viewvc?rev=1133201&view=rev
Log:
Correct a regression in the fix for bug 51278 that prevented any web 
application from being marked as distributable. (kfujino)

Modified:
tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java
tomcat/trunk/webapps/docs/changelog.xml

Modified: tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java?rev=1133201&r1=1133200&r2=1133201&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java (original)
+++ tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java Tue Jun  7 
23:48:17 2011
@@ -1195,6 +1195,10 @@ public class ContextConfig
  */ 
 WebXml webXmlDefaultFragment = createWebXml();
 webXmlDefaultFragment.setOverridable(true);
+// Set to distributable else every app will be prevented from being
+// distributable when the default fragment is merged with the main
+// web.xml
+webXmlDefaultFragment.setDistributable(true);
 
 // Parse global web.xml if present
 InputSource globalWebXml = getGlobalWebXmlSource();

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1133201&r1=1133200&r2=1133201&view=diff
==
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Tue Jun  7 23:48:17 2011
@@ -55,6 +55,10 @@
 response buffer to ensure that the doFlush flag does not get stuck in
 the enabled state. Patch provided by Jeremy Norris. (markt)
   
+  
+Correct a regression in the fix for 51278 that prevented any
+web application from being marked as distributable. (kfujino/mark)
+  
 
   
   



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133202 - /tomcat/trunk/webapps/docs/changelog.xml

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 23:50:55 2011
New Revision: 1133202

URL: http://svn.apache.org/viewvc?rev=1133202&view=rev
Log:
Update changelog post valve changes

Modified:
tomcat/trunk/webapps/docs/changelog.xml

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1133202&r1=1133201&r2=1133202&view=diff
==
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Tue Jun  7 23:50:55 2011
@@ -59,6 +59,10 @@
 Correct a regression in the fix for 51278 that prevented any
 web application from being marked as distributable. (kfujino/mark)
   
+  
+Enable remaining valves for Servlet 3 asynchronous processing support.
+(markt)
+  
 
   
   
@@ -83,6 +87,14 @@
   
 
   
+  
+
+  
+Enable Servlet 3 asynchronous processing support when using clustering.
+(markt)
+  
+
+  
   
 
   



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133204 - /tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java

2011-06-07 Thread markt
Author: markt
Date: Tue Jun  7 23:56:14 2011
New Revision: 1133204

URL: http://svn.apache.org/viewvc?rev=1133204&view=rev
Log:
Simplify as per kkolinko's review

Modified:
tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java

Modified: tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java?rev=1133204&r1=1133203&r2=1133204&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java (original)
+++ tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java Tue Jun  7 
23:56:14 2011
@@ -1222,13 +1222,7 @@ public class ContextConfig
 InputSource contextWebXml = getContextWebXmlSource();
 parseWebXml(contextWebXml, webXml, false);
 
-// Assuming 0 is safe for what is required in this case
-double webXmlVersion = 0;
-if (webXml.getVersion() != null) {
-webXmlVersion = Double.parseDouble(webXml.getVersion());
-}
-
-if (webXmlVersion >= 3) {
+if (webXml.getMajorVersion() >= 3) {
 // Ordering is important here
 
 // Step 1. Identify all the JARs packaged with the application



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [PROPOSAL] Enable session replication by default.

2011-06-07 Thread Mark Thomas
On 07/06/2011 22:42, Konstantin Kolinko wrote:
> BTW, two minor thoughts wrt. o.a.c.startup.ContextConfig#webConfig()
> 1) Line 1208
> 
> // Parse host level web.xml if present
> // Additive apart from welcome pages
> webXml.setReplaceWelcomeFiles(true);
> InputSource hostWebXml = getHostWebXmlSource();
> parseWebXml(hostWebXml, webXmlDefaultFragment, false);
> 
> The "webXml.setReplaceWelcomeFiles(true);" call is needed,

I don't think it is since webXml is now empty when the main web.xml is
parsed into it.

> but from the comment it seems to me that
> webXmlDefaultFragment.setReplaceWelcomeFiles(true); is also needed
> here,
> because webXmlDefaultFragment is the argument to parseWebXml() call
> and not webXml.

Yep, that does look to be required. Hmm. Looks like it is no longer
possible to override the welcome files in an app's web.xml. That'll need
fixing too.

> 2)
> Line 1223:
> All of the code below
> // Assuming 0 is safe for what is required in this case
> double webXmlVersion = 0;
> if (webXml.getVersion() != null) {
> webXmlVersion = Double.parseDouble(webXml.getVersion());
> }
> 
> if (webXmlVersion >= 3) {
>  Just can be replaced with one line
> if (webXml.getMajorVersion() >= 3) {
> 
> Note, that webXml.getVersion() never returns null.

Fixed. Thanks.

Mark



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1133221 - in /tomcat/trunk: java/org/apache/catalina/deploy/WebXml.java java/org/apache/catalina/startup/ContextConfig.java webapps/docs/changelog.xml

2011-06-07 Thread markt
Author: markt
Date: Wed Jun  8 00:44:14 2011
New Revision: 1133221

URL: http://svn.apache.org/viewvc?rev=1133221&view=rev
Log:
Fix regression in welcome file processing

Modified:
tomcat/trunk/java/org/apache/catalina/deploy/WebXml.java
tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java
tomcat/trunk/webapps/docs/changelog.xml

Modified: tomcat/trunk/java/org/apache/catalina/deploy/WebXml.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/deploy/WebXml.java?rev=1133221&r1=1133220&r2=1133221&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/deploy/WebXml.java (original)
+++ tomcat/trunk/java/org/apache/catalina/deploy/WebXml.java Wed Jun  8 
00:44:14 2011
@@ -346,13 +346,25 @@ public class WebXml {
 }
 public Map getMimeMappings() { return mimeMappings; }
 
-// welcome-file-list
-// When merging web.xml files it may be necessary for any new welcome files
-// to completely replace the current set
+// welcome-file-list merge control
 private boolean replaceWelcomeFiles = false;
+private boolean alwaysAddWelcomeFiles = true;
+/**
+ * When merging/parsing web.xml files into this web.xml should the current
+ * set be completely replaced?
+ */
 public void setReplaceWelcomeFiles(boolean replaceWelcomeFiles) {
 this.replaceWelcomeFiles = replaceWelcomeFiles;
 }
+/**
+ * When merging from this web.xml, should the welcome files be added to the
+ * target web.xml even if it already contains welcome file definitions.
+ */
+public void setAlwaysAddWelcomeFiles(boolean alwaysAddWelcomeFiles) {
+this.alwaysAddWelcomeFiles = alwaysAddWelcomeFiles;
+}
+
+// welcome-file-list
 private Set welcomeFiles = new LinkedHashSet();
 public void addWelcomeFile(String welcomeFile) {
 if (replaceWelcomeFiles) {
@@ -1322,7 +1334,16 @@ public class WebXml {
 // Context doesn't use version directly
 
 for (String welcomeFile : welcomeFiles) {
-context.addWelcomeFile(welcomeFile);
+/*
+ * The following will result in a welcome file of "" so don't add
+ * that to the context 
+ * 
+ *   
+ * 
+ */
+if (welcomeFile != null && welcomeFile.length() > 0) {
+context.addWelcomeFile(welcomeFile);
+}
 }
 
 // Do this last as it depends on servlets
@@ -1848,9 +1869,10 @@ public class WebXml {
 taglibs.putAll(temp.getTaglibs());
 
 for (WebXml fragment : fragments) {
-for (String welcomeFile : fragment.getWelcomeFiles()) {
-// Always additive
-addWelcomeFile(welcomeFile);
+if (fragment.alwaysAddWelcomeFiles || welcomeFiles.size() == 0) {
+for (String welcomeFile : fragment.getWelcomeFiles()) {
+addWelcomeFile(welcomeFile);
+}
 }
 }
 

Modified: tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java?rev=1133221&r1=1133220&r2=1133221&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java (original)
+++ tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java Wed Jun  8 
00:44:14 2011
@@ -1199,6 +1199,9 @@ public class ContextConfig
 // distributable when the default fragment is merged with the main
 // web.xml
 webXmlDefaultFragment.setDistributable(true);
+// When merging, the default welcome files are only used if the app has
+// not defined any welcomes files.
+webXmlDefaultFragment.setAlwaysAddWelcomeFiles(false);
 
 // Parse global web.xml if present
 InputSource globalWebXml = getGlobalWebXmlSource();
@@ -1211,7 +1214,7 @@ public class ContextConfig
 
 // Parse host level web.xml if present
 // Additive apart from welcome pages
-webXml.setReplaceWelcomeFiles(true);
+webXmlDefaultFragment.setReplaceWelcomeFiles(true);
 InputSource hostWebXml = getHostWebXmlSource();
 parseWebXml(hostWebXml, webXmlDefaultFragment, false);
 

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1133221&r1=1133220&r2=1133221&view=diff
==
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Wed Jun  8 00:44:14 2011
@@ -60,6 +60,10 @@
 web application from being marked as distributable. (kfujino/mark)
   
   
+Correct a regression in the fix for 51278 t

Tagging 7.0.16

2011-06-07 Thread Mark Thomas
I think all the fixes required for 7.0.16 are in place. I plan to run
the unit and TCK tests tomorrow and tag tomorrow evening if they all pass.

Mark



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org