svn commit: r1519346 - in /tomcat/maven-plugin/trunk: common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/ tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/

2013-09-02 Thread olamy
Author: olamy
Date: Mon Sep  2 06:08:03 2013
New Revision: 1519346

URL: http://svn.apache.org/r1519346
Log:
[MTOMCAT-165] http status 401 reported as success
Submitted by Emeric MARTINEAU

Modified:

tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties

tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployWarMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ListMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ReloadMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ResourcesMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/RolesMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ServerInfoMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/SessionsMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/StartMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/StopMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/UndeployMojo.java

Modified: 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties?rev=1519346r1=1519345r2=1519346view=diff
==
--- 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 (original)
+++ 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 Mon Sep  2 06:08:03 2013
@@ -105,3 +105,7 @@ UndeployMojo.undeployError = Cannot unde
 # ReloadMojo
 
 ReloadMojo.reloadingApp = Reloading application at {0}
+
+# AbstractI18NTomcat6Mojo
+
+AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat return http status error
\ No newline at end of file

Modified: 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties?rev=1519346r1=1519345r2=1519346view=diff
==
--- 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
 (original)
+++ 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
 Mon Sep  2 06:08:03 2013
@@ -105,3 +105,7 @@ UndeployMojo.undeployError = N'a pas pu 
 # ReloadMojo
 
 ReloadMojo.reloadingApp = Rechargement de l'application sur {0}
+
+# AbstractI18NTomcat6Mojo
+
+AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat a retourn\u00E9 un code 
HTTP en erreur
\ No newline at end of file

Modified: 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java?rev=1519346r1=1519345r2=1519346view=diff
==
--- 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java
 (original)
+++ 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java
 Mon Sep  2 06:08:03 2013
@@ -22,6 +22,7 @@ package org.apache.tomcat.maven.plugin.t
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.tomcat.maven.common.deployer.TomcatManagerException;
+import 

svn commit: r1519347 - /tomcat/maven-plugin/trunk/pom.xml

2013-09-02 Thread olamy
Author: olamy
Date: Mon Sep  2 06:08:14 2013
New Revision: 1519347

URL: http://svn.apache.org/r1519347
Log:
add contributor

Modified:
tomcat/maven-plugin/trunk/pom.xml

Modified: tomcat/maven-plugin/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/pom.xml?rev=1519347r1=1519346r2=1519347view=diff
==
--- tomcat/maven-plugin/trunk/pom.xml (original)
+++ tomcat/maven-plugin/trunk/pom.xml Mon Sep  2 06:08:14 2013
@@ -152,6 +152,9 @@
 contributor
   nameEugenio Santoboni/name
 /contributor
+contributor
+  nameEmeric MARTINEAU/name
+/contributor
   /contributors
 
   licenses



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



[jira] [Closed] (MTOMCAT-165) http status 401 reported as success

2013-09-02 Thread *$^¨%`£

 [ 
https://issues.apache.org/jira/browse/MTOMCAT-165?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Olivier Lamy (*$^¨%`£) closed MTOMCAT-165.
--

Resolution: Fixed

Patch applied.
Thanks!

 http status 401 reported as success
 ---

 Key: MTOMCAT-165
 URL: https://issues.apache.org/jira/browse/MTOMCAT-165
 Project: Apache Tomcat Maven Plugin
  Issue Type: Bug
Affects Versions: 2.0-beta-1
 Environment: Ubuntu/openjdk6
Reporter: Tim Pizey
Assignee: Olivier Lamy (*$^¨%`£)
 Fix For: 2.2

 Attachments: maven-plugin-tomcat.patch


 If tomcat.username and tomcat.password empty then the 401 response is 
 rendered as INFO and SUCCESS is reported.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

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



svn commit: r1519350 - /tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java

2013-09-02 Thread olamy
Author: olamy
Date: Mon Sep  2 06:09:24 2013
New Revision: 1519350

URL: http://svn.apache.org/r1519350
Log:
display more info only if users choose to use -e or -X maven option

Modified:

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java

Modified: 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java?rev=1519350r1=1519349r2=1519350view=diff
==
--- 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 (original)
+++ 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 Mon Sep  2 06:09:24 2013
@@ -35,7 +35,7 @@ public abstract class AbstractI18NTomcat
 extends AbstractMojo
 {
 
-@Component( role = MessagesProvider.class )
+@Component(role = MessagesProvider.class)
 protected MessagesProvider messagesProvider;
 
 // --
@@ -46,7 +46,7 @@ public abstract class AbstractI18NTomcat
  * The webapp context path to use for the web application being run. This 
must always start with a forward-slash
  * ('/').
  */
-@Parameter( property = maven.tomcat.path, defaultValue = 
/${project.artifactId}, required = true )
+@Parameter(property = maven.tomcat.path, defaultValue = 
/${project.artifactId}, required = true)
 protected String path;
 
 
@@ -54,23 +54,25 @@ public abstract class AbstractI18NTomcat
 {
 return path;
 }
-
+
 /**
  * Check response of Tomcat to know if ok or not.
- * 
+ *
  * @param tomcatResponse response of tomcat return by TomcatManager class
- * 
  * @throws MojoExecutionException if HTTP status code greater than 400 
(included)
  */
-protected void checkTomcatResponse(final TomcatManagerResponse 
tomcatResponse)
-   throws MojoExecutionException
+protected void checkTomcatResponse( final TomcatManagerResponse 
tomcatResponse )
+throws MojoExecutionException
 {
-   final int statusCode = tomcatResponse.getStatusCode() ;
-   
-   if (statusCode = 400) {
-   getLog().error(tomcatResponse.getHttpResponseBody()) ;
-   
-   throw new MojoExecutionException( 
messagesProvider.getMessage(AbstractI18NTomcat6Mojo.tomcatHttStatusError, 
statusCode)) ;
-   }
-}   
+final int statusCode = tomcatResponse.getStatusCode();
+
+if ( statusCode = 400 )
+{
+getLog().error( messagesProvider.getMessage( 
AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode ) );
+
+throw new MojoExecutionException(
+messagesProvider.getMessage( 
AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode ) + : 
++ tomcatResponse.getHttpResponseBody() );
+}
+}
 }



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



svn commit: r1519348 - in /tomcat/maven-plugin/trunk: common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/messages/ tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugi

2013-09-02 Thread olamy
Author: olamy
Date: Mon Sep  2 06:08:44 2013
New Revision: 1519348

URL: http://svn.apache.org/r1519348
Log:
simplify the wrapper on the top of MessageFormat

Modified:

tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/messages/DefaultMessagesProvider.java

tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/messages/MessagesProvider.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java

Modified: 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/messages/DefaultMessagesProvider.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/messages/DefaultMessagesProvider.java?rev=1519348r1=1519347r2=1519348view=diff
==
--- 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/messages/DefaultMessagesProvider.java
 (original)
+++ 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/messages/DefaultMessagesProvider.java
 Mon Sep  2 06:08:44 2013
@@ -83,36 +83,12 @@ public class DefaultMessagesProvider
  * Gets the message for the given key from this packages resource bundle 
and formats it with the given parameter.
  *
  * @param key   the key for the required message
- * @param param the parameter to be used to format the message with
- * @return the formatted message
- */
-public String getMessage( String key, Object param )
-{
-return MessageFormat.format( getMessage( key ), new Object[]{ param } 
);
-}
-
-/**
- * Gets the message for the given key from this packages resource bundle 
and formats it with the given parameters.
- *
- * @param keythe key for the required message
- * @param param1 the first parameter to be used to format the message with
- * @param param2 the second parameter to be used to format the message with
- * @return the formatted message
- */
-public String getMessage( String key, Object param1, Object param2 )
-{
-return MessageFormat.format( getMessage( key ), new Object[]{ param1, 
param2 } );
-}
-
-/**
- * Gets the message for the given key from this packages resource bundle 
and formats it with the given parameters.
- *
- * @param keythe key for the required message
  * @param params the parameters to be used to format the message with
  * @return the formatted message
  */
-public String getMessage( String key, Object[] params )
+public String getMessage( String key, Object... params )
 {
 return MessageFormat.format( getMessage( key ), params );
 }
+
 }

Modified: 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/messages/MessagesProvider.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/messages/MessagesProvider.java?rev=1519348r1=1519347r2=1519348view=diff
==
--- 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/messages/MessagesProvider.java
 (original)
+++ 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/java/org/apache/tomcat/maven/common/messages/MessagesProvider.java
 Mon Sep  2 06:08:44 2013
@@ -29,9 +29,6 @@ public interface MessagesProvider
 {
 String getMessage( String key );
 
-String getMessage( String key, Object param );
+String getMessage( String key, Object... param1 );
 
-String getMessage( String key, Object param1, Object param2 );
-
-String getMessage( String key, Object[] params );
 }

Modified: 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java?rev=1519348r1=1519347r2=1519348view=diff
==
--- 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 (original)
+++ 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 Mon Sep  2 06:08:44 2013
@@ -70,7 +70,7 @@ public abstract class AbstractI18NTomcat
if (statusCode = 400) {
getLog().error(tomcatResponse.getHttpResponseBody()) ;

-   throw new MojoExecutionException( 

svn commit: r1519349 - in /tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages: messages.properties messages_fr.properties

2013-09-02 Thread olamy
Author: olamy
Date: Mon Sep  2 06:09:05 2013
New Revision: 1519349

URL: http://svn.apache.org/r1519349
Log:
display the http error code

Modified:

tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties

tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties

Modified: 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties?rev=1519349r1=1519348r2=1519349view=diff
==
--- 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 (original)
+++ 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 Mon Sep  2 06:09:05 2013
@@ -108,4 +108,4 @@ ReloadMojo.reloadingApp = Reloading appl
 
 # AbstractI18NTomcat6Mojo
 
-AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat return http status error
\ No newline at end of file
+AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat return http status 
error: {0}
\ No newline at end of file

Modified: 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties?rev=1519349r1=1519348r2=1519349view=diff
==
--- 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
 (original)
+++ 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
 Mon Sep  2 06:09:05 2013
@@ -108,4 +108,4 @@ ReloadMojo.reloadingApp = Rechargement d
 
 # AbstractI18NTomcat6Mojo
 
-AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat a retourn\u00E9 un code 
HTTP en erreur
\ No newline at end of file
+AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat a retourn\u00E9 un code 
HTTP en erreur: {0}
\ No newline at end of file



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



svn commit: r1519351 - /tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/

2013-09-02 Thread olamy
Author: olamy
Date: Mon Sep  2 06:09:48 2013
New Revision: 1519351

URL: http://svn.apache.org/r1519351
Log:
fix formatting

Modified:

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployWarMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ListMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ReloadMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ResourcesMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/RolesMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ServerInfoMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/SessionsMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/StartMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/StopMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/UndeployMojo.java

Modified: 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java?rev=1519351r1=1519350r2=1519351view=diff
==
--- 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java
 (original)
+++ 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java
 Mon Sep  2 06:09:48 2013
@@ -169,10 +169,10 @@ public abstract class AbstractDeployMojo
 getLog().info( messagesProvider.getMessage( 
AbstractDeployMojo.deployingWar, getDeployedURL() ) );
 
 URL warURL = getWarFile().toURL();
-
-TomcatManagerResponse tomcatResponse = getManager().deploy( getPath(), 
warURL, isUpdate(), getTag() ) ;
-
-checkTomcatResponse(tomcatResponse) ;
+
+TomcatManagerResponse tomcatResponse = getManager().deploy( getPath(), 
warURL, isUpdate(), getTag() );
+
+checkTomcatResponse( tomcatResponse );
 }
 
 /**
@@ -214,8 +214,9 @@ public abstract class AbstractDeployMojo
 URL warURL = getWarFile().toURL();
 URL contextURL = getContextFile().toURL();
 
-TomcatManagerResponse tomcatResponse = getManager().deployContext( 
getPath(), contextURL, warURL, isUpdate(), getTag() ) ;
-  
-checkTomcatResponse(tomcatResponse) ;  
+TomcatManagerResponse tomcatResponse =
+getManager().deployContext( getPath(), contextURL, warURL, 
isUpdate(), getTag() );
+
+checkTomcatResponse( tomcatResponse );
 }
 }

Modified: 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployWarMojo.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployWarMojo.java?rev=1519351r1=1519350r2=1519351view=diff
==
--- 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployWarMojo.java
 (original)
+++ 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployWarMojo.java
 Mon Sep  2 06:09:48 2013
@@ -82,8 +82,9 @@ public class AbstractDeployWarMojo
 
 getLog().info( messagesProvider.getMessage( 
AbstractDeployMojo.deployingWar, getDeployedURL() ) );
 
-TomcatManagerResponse tomcatResponse = getManager().deploy(  
getPath(), warFile, isUpdate(), getTag(), warFile.length() ) ;
-
-checkTomcatResponse(tomcatResponse) ;  
+TomcatManagerResponse tomcatResponse =
+getManager().deploy( getPath(), warFile, isUpdate(), getTag(), 
warFile.length() );
+
+checkTomcatResponse( tomcatResponse );
 }
 }

Modified: 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ListMojo.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ListMojo.java?rev=1519351r1=1519350r2=1519351view=diff

svn commit: r1519352 - in /tomcat/maven-plugin/trunk: common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/ tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/

2013-09-02 Thread olamy
Author: olamy
Date: Mon Sep  2 06:10:32 2013
New Revision: 1519352

URL: http://svn.apache.org/r1519352
Log:
[MTOMCAT-165] http status 401 reported as success
report fix to tomcat 7 mojo.

Modified:

tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties

tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java

tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java

tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/deploy/AbstractDeployMojo.java

tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/deploy/AbstractDeployWarMojo.java

tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/deploy/UndeployMojo.java

Modified: 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties?rev=1519352r1=1519351r2=1519352view=diff
==
--- 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 (original)
+++ 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 Mon Sep  2 06:10:32 2013
@@ -108,4 +108,8 @@ ReloadMojo.reloadingApp = Reloading appl
 
 # AbstractI18NTomcat6Mojo
 
-AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat return http status 
error: {0}
\ No newline at end of file
+AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat return http status 
error: {0}
+
+#AbstractTomcat7Mojo
+
+AbstractTomcat7Mojo.tomcatHttStatusError = Tomcat return http status error: {0}

Modified: 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties?rev=1519352r1=1519351r2=1519352view=diff
==
--- 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
 (original)
+++ 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
 Mon Sep  2 06:10:32 2013
@@ -108,4 +108,8 @@ ReloadMojo.reloadingApp = Rechargement d
 
 # AbstractI18NTomcat6Mojo
 
-AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat a retourn\u00E9 un code 
HTTP en erreur: {0}
\ No newline at end of file
+AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat a retourn\u00E9 un code 
HTTP en erreur: {0}
+
+#AbstractTomcat7Mojo
+
+AbstractTomcat7Mojo.tomcatHttStatusError = Tomcat a retourn\u00E9 un code HTTP 
en erreur: {0}
\ No newline at end of file

Modified: 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java?rev=1519352r1=1519351r2=1519352view=diff
==
--- 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java
 (original)
+++ 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java
 Mon Sep  2 06:10:32 2013
@@ -190,10 +190,11 @@ public abstract class AbstractDeployMojo
 getLog().info( messagesProvider.getMessage( 
AbstractDeployMojo.deployingContext, getDeployedURL() ) );
 
 URL contextURL = getContextFile().toURL();
-
-TomcatManagerResponse tomcatResponse = getManager().deployContext( 
getPath(), contextURL, isUpdate(), getTag() ) ;
-
-checkTomcatResponse(tomcatResponse) ;  
+
+TomcatManagerResponse tomcatResponse =
+getManager().deployContext( getPath(), contextURL, isUpdate(), 
getTag() );
+
+checkTomcatResponse( tomcatResponse );
 }
 
 /**

Modified: 

svn commit: r1519353 - in /tomcat/maven-plugin/trunk: common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/ tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/

2013-09-02 Thread olamy
Author: olamy
Date: Mon Sep  2 06:11:10 2013
New Revision: 1519353

URL: http://svn.apache.org/r1519353
Log:
display the reason phrase too

Modified:

tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java

tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java

Modified: 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties?rev=1519353r1=1519352r2=1519353view=diff
==
--- 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 (original)
+++ 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 Mon Sep  2 06:11:10 2013
@@ -112,4 +112,4 @@ AbstractI18NTomcat6Mojo.tomcatHttStatusE
 
 #AbstractTomcat7Mojo
 
-AbstractTomcat7Mojo.tomcatHttStatusError = Tomcat return http status error: {0}
+AbstractTomcat7Mojo.tomcatHttStatusError = Tomcat return http status error: 
{0}, Reason Phrase: {1}

Modified: 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java?rev=1519353r1=1519352r2=1519353view=diff
==
--- 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 (original)
+++ 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 Mon Sep  2 06:11:10 2013
@@ -68,10 +68,12 @@ public abstract class AbstractI18NTomcat
 
 if ( statusCode = 400 )
 {
-getLog().error( messagesProvider.getMessage( 
AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode ) );
+getLog().error( messagesProvider.getMessage( 
AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode,
+ 
tomcatResponse.getReasonPhrase() ) );
 
 throw new MojoExecutionException(
-messagesProvider.getMessage( 
AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode ) + : 
+messagesProvider.getMessage( 
AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode,
+ tomcatResponse.getReasonPhrase() 
) + : 
 + tomcatResponse.getHttpResponseBody() );
 }
 }

Modified: 
tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java?rev=1519353r1=1519352r2=1519353view=diff
==
--- 
tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java
 (original)
+++ 
tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java
 Mon Sep  2 06:11:10 2013
@@ -43,7 +43,7 @@ public abstract class AbstractTomcat7Moj
  * The webapp context path to use for the web application being run. This 
must always start with a forward-slash
  * ('/').
  */
-@Parameter( defaultValue = /${project.artifactId}, property = 
maven.tomcat.path, required = true )
+@Parameter(defaultValue = /${project.artifactId}, property = 
maven.tomcat.path, required = true)
 protected String path;
 
 
@@ -56,7 +56,8 @@ public abstract class AbstractTomcat7Moj
  * Check response of Tomcat to know if ok or not.
  *
  * @param tomcatResponse response of tomcat return by TomcatManager class
- * @throws org.apache.maven.plugin.MojoExecutionException if HTTP status 
code greater than 400 (included)
+ * @throws org.apache.maven.plugin.MojoExecutionException
+ *  if HTTP status code greater than 400 (included)
  */
 protected void checkTomcatResponse( TomcatManagerResponse tomcatResponse )
 throws MojoExecutionException
@@ -65,10 +66,12 @@ public abstract class AbstractTomcat7Moj
 
 if ( statusCode = 400 )
   

[jira] [Commented] (MTOMCAT-165) http status 401 reported as success

2013-09-02 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/MTOMCAT-165?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13755920#comment-13755920
 ] 

Hudson commented on MTOMCAT-165:


FAILURE: Integrated in TomcatMavenPlugin-mvn3.x #253 (See 
[https://builds.apache.org/job/TomcatMavenPlugin-mvn3.x/253/])
[MTOMCAT-165] http status 401 reported as success
report fix to tomcat 7 mojo. (olamy: 
http://svn.apache.org/viewvc/?view=revrev=1519352)
* 
/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
* 
/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
* 
/tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java
* 
/tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/deploy/AbstractDeployMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/deploy/AbstractDeployWarMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/deploy/UndeployMojo.java
[MTOMCAT-165] http status 401 reported as success
Submitted by Emeric MARTINEAU (olamy: 
http://svn.apache.org/viewvc/?view=revrev=1519346)
* 
/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
* 
/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractDeployWarMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ListMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ReloadMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ResourcesMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/RolesMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/ServerInfoMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/SessionsMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/StartMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/StopMojo.java
* 
/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/UndeployMojo.java


 http status 401 reported as success
 ---

 Key: MTOMCAT-165
 URL: https://issues.apache.org/jira/browse/MTOMCAT-165
 Project: Apache Tomcat Maven Plugin
  Issue Type: Bug
Affects Versions: 2.0-beta-1
 Environment: Ubuntu/openjdk6
Reporter: Tim Pizey
Assignee: Olivier Lamy (*$^¨%`£)
 Fix For: 2.2

 Attachments: maven-plugin-tomcat.patch


 If tomcat.username and tomcat.password empty then the 401 response is 
 rendered as INFO and SUCCESS is reported.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

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



svn commit: r1519355 - /tomcat/maven-plugin/trunk/tomcat-maven-archetype/src/main/resources/archetype-resources/__rootArtifactId__-webapp-it/pom.xml

2013-09-02 Thread olamy
Author: olamy
Date: Mon Sep  2 06:23:06 2013
New Revision: 1519355

URL: http://svn.apache.org/r1519355
Log:
[MTOMCAT-236] tomcat-maven-archetype creates project with failing test
Submitted by Daniel Cassidy

Modified:

tomcat/maven-plugin/trunk/tomcat-maven-archetype/src/main/resources/archetype-resources/__rootArtifactId__-webapp-it/pom.xml

Modified: 
tomcat/maven-plugin/trunk/tomcat-maven-archetype/src/main/resources/archetype-resources/__rootArtifactId__-webapp-it/pom.xml
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat-maven-archetype/src/main/resources/archetype-resources/__rootArtifactId__-webapp-it/pom.xml?rev=1519355r1=1519354r2=1519355view=diff
==
--- 
tomcat/maven-plugin/trunk/tomcat-maven-archetype/src/main/resources/archetype-resources/__rootArtifactId__-webapp-it/pom.xml
 (original)
+++ 
tomcat/maven-plugin/trunk/tomcat-maven-archetype/src/main/resources/archetype-resources/__rootArtifactId__-webapp-it/pom.xml
 Mon Sep  2 06:23:06 2013
@@ -31,7 +31,7 @@
 
   properties
 seleniumPluginVersion2.3/seleniumPluginVersion
-selenium-server.version2.28.0/selenium-server.version
+selenium-server.version2.35.0/selenium-server.version
 selenium.port/selenium.port
 tomcat.port9898/tomcat.port
 serverUrlhttp://localhost:${tomcat.port}//serverUrl



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



svn commit: r1519356 - /tomcat/maven-plugin/trunk/pom.xml

2013-09-02 Thread olamy
Author: olamy
Date: Mon Sep  2 06:23:17 2013
New Revision: 1519356

URL: http://svn.apache.org/r1519356
Log:
add contributor

Modified:
tomcat/maven-plugin/trunk/pom.xml

Modified: tomcat/maven-plugin/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/pom.xml?rev=1519356r1=1519355r2=1519356view=diff
==
--- tomcat/maven-plugin/trunk/pom.xml (original)
+++ tomcat/maven-plugin/trunk/pom.xml Mon Sep  2 06:23:17 2013
@@ -155,6 +155,9 @@
 contributor
   nameEmeric MARTINEAU/name
 /contributor
+contributor
+  nameDaniel Cassidy/name
+/contributor
   /contributors
 
   licenses



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



[jira] [Closed] (MTOMCAT-236) tomcat-maven-archetype creates project with failing test

2013-09-02 Thread *$^¨%`£

 [ 
https://issues.apache.org/jira/browse/MTOMCAT-236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Olivier Lamy (*$^¨%`£) closed MTOMCAT-236.
--

   Resolution: Fixed
Fix Version/s: 2.2
 Assignee: Olivier Lamy (*$^¨%`£)

patch applied.
Thanks!

 tomcat-maven-archetype creates project with failing test
 

 Key: MTOMCAT-236
 URL: https://issues.apache.org/jira/browse/MTOMCAT-236
 Project: Apache Tomcat Maven Plugin
  Issue Type: Bug
Affects Versions: 2.1, 2.2
Reporter: Daniel Cassidy
Assignee: Olivier Lamy (*$^¨%`£)
 Fix For: 2.2


 tomcat-maven-archetype currently creates a project with a Selenium test that 
 fails with Firefox 22 later.
 The test fails as follows:
 ---
 Test set: fr.mypackage.webapp.test.SimpleTest
 ---
 Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 6.209 sec  
 FAILURE!
 testSimple(fr.mypackage.webapp.test.SimpleTest)  Time elapsed: 6.143 sec   
 ERROR!
 com.thoughtworks.selenium.SeleniumException: ERROR: Command execution 
 failure. Please search the user group at 
 https://groups.google.com/forum/#!forum/selenium-users for error details from 
 the log window.  The error message is: Value does not implement interface 
 Event.
   at 
 com.thoughtworks.selenium.HttpCommandProcessor.throwAssertionFailureExceptionOrError(HttpCommandProcessor.java:97)
   at 
 com.thoughtworks.selenium.HttpCommandProcessor.doCommand(HttpCommandProcessor.java:91)
   at 
 com.thoughtworks.selenium.DefaultSelenium.click(DefaultSelenium.java:167)
   at fr.mypackage.webapp.test.SimpleTest.testSimple(SimpleTest.java:42)
 As a consequence, mvn install currently fails for the whole 
 tomcat-maven-plugin project because, as part of the build, Maven creates and 
 tests a project based on tomcat-maven-archetype.
 Tested with:
 * Windows 7, Firefox 22.
 * Lubuntu 12.04, Firefox 23.
 The problem appears to be fixed by selenium-server 2.35.0.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

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



[jira] [Commented] (MTOMCAT-236) tomcat-maven-archetype creates project with failing test

2013-09-02 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/MTOMCAT-236?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13755927#comment-13755927
 ] 

Hudson commented on MTOMCAT-236:


SUCCESS: Integrated in TomcatMavenPlugin-mvn3.x #254 (See 
[https://builds.apache.org/job/TomcatMavenPlugin-mvn3.x/254/])
[MTOMCAT-236] tomcat-maven-archetype creates project with failing test
Submitted by Daniel Cassidy (olamy: 
http://svn.apache.org/viewvc/?view=revrev=1519355)
* 
/tomcat/maven-plugin/trunk/tomcat-maven-archetype/src/main/resources/archetype-resources/__rootArtifactId__-webapp-it/pom.xml


 tomcat-maven-archetype creates project with failing test
 

 Key: MTOMCAT-236
 URL: https://issues.apache.org/jira/browse/MTOMCAT-236
 Project: Apache Tomcat Maven Plugin
  Issue Type: Bug
Affects Versions: 2.1, 2.2
Reporter: Daniel Cassidy
Assignee: Olivier Lamy (*$^¨%`£)
 Fix For: 2.2


 tomcat-maven-archetype currently creates a project with a Selenium test that 
 fails with Firefox 22 later.
 The test fails as follows:
 ---
 Test set: fr.mypackage.webapp.test.SimpleTest
 ---
 Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 6.209 sec  
 FAILURE!
 testSimple(fr.mypackage.webapp.test.SimpleTest)  Time elapsed: 6.143 sec   
 ERROR!
 com.thoughtworks.selenium.SeleniumException: ERROR: Command execution 
 failure. Please search the user group at 
 https://groups.google.com/forum/#!forum/selenium-users for error details from 
 the log window.  The error message is: Value does not implement interface 
 Event.
   at 
 com.thoughtworks.selenium.HttpCommandProcessor.throwAssertionFailureExceptionOrError(HttpCommandProcessor.java:97)
   at 
 com.thoughtworks.selenium.HttpCommandProcessor.doCommand(HttpCommandProcessor.java:91)
   at 
 com.thoughtworks.selenium.DefaultSelenium.click(DefaultSelenium.java:167)
   at fr.mypackage.webapp.test.SimpleTest.testSimple(SimpleTest.java:42)
 As a consequence, mvn install currently fails for the whole 
 tomcat-maven-plugin project because, as part of the build, Maven creates and 
 tests a project based on tomcat-maven-archetype.
 Tested with:
 * Windows 7, Firefox 22.
 * Lubuntu 12.04, Firefox 23.
 The problem appears to be fixed by selenium-server 2.35.0.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

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



svn commit: r1519369 - /tomcat/trunk/webapps/docs/config/cluster-channel.xml

2013-09-02 Thread kfujino
Author: kfujino
Date: Mon Sep  2 09:17:45 2013
New Revision: 1519369

URL: http://svn.apache.org/r1519369
Log:
Add document for org.apache.catalina.tribes.group.GroupChannel.

Modified:
tomcat/trunk/webapps/docs/config/cluster-channel.xml

Modified: tomcat/trunk/webapps/docs/config/cluster-channel.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/cluster-channel.xml?rev=1519369r1=1519368r2=1519369view=diff
==
--- tomcat/trunk/webapps/docs/config/cluster-channel.xml (original)
+++ tomcat/trunk/webapps/docs/config/cluster-channel.xml Mon Sep  2 09:17:45 
2013
@@ -96,6 +96,30 @@
 
   /subsection
 
+  subsection name=org.apache.catalina.tribes.group.GroupChannel Attributes
+
+attributes
+
+  attribute name=heartbeat required=false
+ Flag whether the channel manages its own heartbeat.
+ If set to true,  the channel start a local thread for the heart beat.
+ If set this flag to false, you must set 
SimpleTcpCluster#heartbeatBackgroundEnabled
+ to true. default value is true.
+  /attribute
+
+  attribute name=heartbeatSleeptime required=false
+If heartbeat == true, specifies the interval of heartbeat thread in 
milliseconds.
+  /attribute
+
+  attribute name=optionCheck required=false
+If set to true, the GroupChannel will check the option flags that each
+interceptor is using. Reports an error if two interceptor share the 
same
+flag.
+  /attribute
+
+/attributes
+
+  /subsection
 
 /section
 



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



svn commit: r1519373 - in /tomcat/tc7.0.x/trunk/webapps/docs: changelog.xml config/cluster-channel.xml

2013-09-02 Thread kfujino
Author: kfujino
Date: Mon Sep  2 09:20:41 2013
New Revision: 1519373

URL: http://svn.apache.org/r1519373
Log:
Add document for org.apache.catalina.tribes.group.GroupChannel.

Modified:
tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
tomcat/tc7.0.x/trunk/webapps/docs/config/cluster-channel.xml

Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1519373r1=1519372r2=1519373view=diff
==
--- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Mon Sep  2 09:20:41 2013
@@ -305,6 +305,10 @@
 The WebSocket examples in the examples web application have been 
changed
 to use the new JSR-356 Java WebSocket 1.0 implementation. (markt)
   /update
+  add
+Add document for
+codeorg.apache.catalina.tribes.group.GroupChannel/code. (kfujino)
+  /add
 /changelog
   /subsection
   subsection name=Other

Modified: tomcat/tc7.0.x/trunk/webapps/docs/config/cluster-channel.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/config/cluster-channel.xml?rev=1519373r1=1519372r2=1519373view=diff
==
--- tomcat/tc7.0.x/trunk/webapps/docs/config/cluster-channel.xml (original)
+++ tomcat/tc7.0.x/trunk/webapps/docs/config/cluster-channel.xml Mon Sep  2 
09:20:41 2013
@@ -96,6 +96,30 @@
 
   /subsection
 
+  subsection name=org.apache.catalina.tribes.group.GroupChannel Attributes
+
+attributes
+
+  attribute name=heartbeat required=false
+ Flag whether the channel manages its own heartbeat.
+ If set to true,  the channel start a local thread for the heart beat.
+ If set this flag to false, you must set 
SimpleTcpCluster#heartbeatBackgroundEnabled
+ to true. default value is true.
+  /attribute
+
+  attribute name=heartbeatSleeptime required=false
+If heartbeat == true, specifies the interval of heartbeat thread in 
milliseconds.
+  /attribute
+
+  attribute name=optionCheck required=false
+If set to true, the GroupChannel will check the option flags that each
+interceptor is using. Reports an error if two interceptor share the 
same
+flag.
+  /attribute
+
+/attributes
+
+  /subsection
 
 /section
 



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



svn commit: r1519384 - in /tomcat/trunk/java/org/apache/catalina/tribes: group/interceptors/MessageDispatch15Interceptor.java util/TcclThreadFactory.java

2013-09-02 Thread kfujino
Author: kfujino
Date: Mon Sep  2 10:45:02 2013
New Revision: 1519384

URL: http://svn.apache.org/r1519384
Log:
More definite thread name for MessageDispatch15Interceptor.

Modified:

tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/MessageDispatch15Interceptor.java
tomcat/trunk/java/org/apache/catalina/tribes/util/TcclThreadFactory.java

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/MessageDispatch15Interceptor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/MessageDispatch15Interceptor.java?rev=1519384r1=1519383r2=1519384view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/MessageDispatch15Interceptor.java
 (original)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/MessageDispatch15Interceptor.java
 Mon Sep  2 10:45:02 2013
@@ -83,7 +83,8 @@ public class MessageDispatch15Intercepto
 public void startQueue() {
 if ( run ) return;
 executor = ExecutorFactory.newThreadPool(maxSpareThreads, maxThreads,
-keepAliveTime, TimeUnit.MILLISECONDS, new TcclThreadFactory());
+keepAliveTime, TimeUnit.MILLISECONDS,
+new 
TcclThreadFactory(MessageDispatch15Interceptor.MessageDispatchThread));
 run = true;
 }
 

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/util/TcclThreadFactory.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/util/TcclThreadFactory.java?rev=1519384r1=1519383r2=1519384view=diff
==
--- tomcat/trunk/java/org/apache/catalina/tribes/util/TcclThreadFactory.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/tribes/util/TcclThreadFactory.java 
Mon Sep  2 10:45:02 2013
@@ -39,15 +39,18 @@ public class TcclThreadFactory implement
 private final String namePrefix;
 
 public TcclThreadFactory() {
+this(pool- + poolNumber.getAndIncrement() + -thread-);
+}
+
+public TcclThreadFactory(String namePrefix) {
 SecurityManager s = System.getSecurityManager();
 group = (s != null) ? s.getThreadGroup() : 
Thread.currentThread().getThreadGroup();
-namePrefix = pool- + poolNumber.getAndIncrement() + -thread-;
+this.namePrefix = namePrefix;
 }
 
 @Override
 public Thread newThread(Runnable r) {
-final Thread t = new Thread(group, r, namePrefix +
-threadNumber.getAndIncrement());
+final Thread t = new Thread(group, r, namePrefix + 
threadNumber.getAndIncrement());
 
 if (IS_SECURITY_ENABLED) {
 AccessController.doPrivileged(new PrivilegedActionVoid() {



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



svn commit: r1519392 - in /tomcat/trunk/java/org/apache: catalina/connector/CoyoteAdapter.java coyote/ajp/AbstractAjpProcessor.java coyote/http11/AbstractHttp11Processor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 11:15:01 2013
New Revision: 1519392

URL: http://svn.apache.org/r1519392
Log:
Fix Gump failure (hopefully)
Move the log failure to the adapter so that the logging occurs before the 
request and response are recycled. This should improve the information that 
appears in the logs.
The failure was caused because Gump runs with access logs enabled so when the 
failure occurred the context had been set to null. This meant the the default 
access logging kicked in which found the standard host level log and logged the 
issue there rather than in the context level TesterAccessLog.

Modified:
tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java

Modified: tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java?rev=1519392r1=1519391r2=1519392view=diff
==
--- tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/connector/CoyoteAdapter.java Mon Sep  
2 11:15:01 2013
@@ -439,6 +439,14 @@ public class CoyoteAdapter implements Ad
 success = false;
 log.error(sm.getString(coyoteAdapter.asyncDispatch), t);
 } finally {
+if (!success) {
+res.setStatus(500);
+long time = 0;
+if (req.getStartTime() != -1) {
+time = System.currentTimeMillis() - req.getStartTime();
+}
+log(req, res, time);
+}
 req.getRequestProcessor().setWorkerThreadName(null);
 // Recycle the wrapper request and response
 if (!success || (!comet  !request.isAsync())) {

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java?rev=1519392r1=1519391r2=1519392view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java Mon Sep  
2 11:15:01 2013
@@ -554,12 +554,6 @@ public abstract class AbstractAjpProcess
 ExceptionUtils.handleThrowable(t);
 getLog().error(sm.getString(http11processor.request.process), t);
 error = true;
-} finally {
-if (error) {
-// 500 - Internal Server Error
-response.setStatus(500);
-getAdapter().log(request, response, 0);
-}
 }
 
 rp.setStage(org.apache.coyote.Constants.STAGE_ENDED);

Modified: 
tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java?rev=1519392r1=1519391r2=1519392view=diff
==
--- tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java 
(original)
+++ tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Processor.java Mon 
Sep  2 11:15:01 2013
@@ -1604,16 +1604,6 @@ public abstract class AbstractHttp11Proc
 ExceptionUtils.handleThrowable(t);
 getLog().error(sm.getString(http11processor.request.process), t);
 error = true;
-} finally {
-if (error) {
-// 500 - Internal Server Error
-response.setStatus(500);
-long time = 0;
-if (request.getStartTime() != -1) {
-time = System.currentTimeMillis() - request.getStartTime();
-}
-getAdapter().log(request, response, time);
-}
 }
 
 rp.setStage(org.apache.coyote.Constants.STAGE_ENDED);



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



svn commit: r1519403 - /tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 12:08:03 2013
New Revision: 1519403

URL: http://svn.apache.org/r1519403
Log:
Add the keptAlive flag to BIO. It is unused but adding it brings BIO closer to 
the other connectors which will aid refactoring.

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java?rev=1519403r1=1519402r2=1519403view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java Mon Sep  2 
12:08:03 2013
@@ -108,11 +108,13 @@ public class AjpProcessor extends Abstra
 // Error flag
 error = false;
 
+boolean keptAlive = false;
+
 while (!error  !endpoint.isPaused()) {
 // Parsing the request header
 try {
 // Get first message of the request
-if (!readMessage(requestHeaderMessage, true)) {
+if (!readMessage(requestHeaderMessage, !keptAlive)) {
 // This means a connection timeout
 break;
 }
@@ -144,6 +146,7 @@ public class AjpProcessor extends Abstra
 error = true;
 break;
 }
+keptAlive = true;
 request.setStartTime(System.currentTimeMillis());
 } catch (IOException e) {
 error = true;



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



svn commit: r1519409 - /tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 12:16:54 2013
New Revision: 1519409

URL: http://svn.apache.org/r1519409
Log:
Remove comment to align with BIO and NIO to aid future refactoring

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java?rev=1519409r1=1519408r2=1519409view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java Mon Sep  2 
12:16:54 2013
@@ -122,9 +122,6 @@ public class AjpAprProcessor extends Abs
 try {
 // Get first message of the request
 if (!readMessage(requestHeaderMessage, !keptAlive)) {
-// This means that no data is available right now
-// (long keepalive), so that the processor should be 
recycled
-// and the method should return true
 break;
 }
 // Set back timeout if keep alive timeout is enabled



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



svn commit: r1519411 - /tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 12:17:32 2013
New Revision: 1519411

URL: http://svn.apache.org/r1519411
Log:
Remove unnecessary call to recycle. recycle will be called by Ptoocol as part 
of releasing the connection.

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java?rev=1519411r1=1519410r2=1519411view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java Mon Sep  2 
12:17:32 2013
@@ -132,7 +132,6 @@ public class AjpNioProcessor extends Abs
 log.debug(Unexpected message:  + type);
 }
 error = true;
-recycle(true);
 break;
 }
 keptAlive = true;



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



svn commit: r1519413 - /tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 12:27:37 2013
New Revision: 1519413

URL: http://svn.apache.org/r1519413
Log:
Use output methods to write PONG packet. Aligns APR/native with BIO and NIO to 
aid future refactoring.

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java?rev=1519413r1=1519412r2=1519413view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java Mon Sep  2 
12:27:37 2013
@@ -137,10 +137,12 @@ public class AjpAprProcessor extends Abs
 break;
 }
 cping = true;
-if (Socket.send(socketRef, pongMessageArray, 0,
-pongMessageArray.length)  0) {
+try {
+output(pongMessageArray, 0, pongMessageArray.length);
+} catch (IOException e) {
 error = true;
 }
+recycle(false);
 continue;
 } else if(type != Constants.JK_AJP13_FORWARD_REQUEST) {
 // Unexpected packet type. Unread body packets should have



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



svn commit: r1519423 - in /tomcat/trunk/java/org/apache/coyote/ajp: AbstractAjpProcessor.java AjpAprProcessor.java AjpNioProcessor.java AjpProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 12:56:43 2013
New Revision: 1519423

URL: http://svn.apache.org/r1519423
Log:
Refactoring. Pull up process method.

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java
tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java
tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java?rev=1519423r1=1519422r2=1519423view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java Mon Sep  
2 12:56:43 2013
@@ -576,6 +576,165 @@ public abstract class AbstractAjpProcess
 }
 
 
+/**
+ * Process pipelined HTTP requests using the specified input and output
+ * streams.
+ *
+ * @throws IOException error during an I/O operation
+ */
+@Override
+public SocketState process(SocketWrapperS socket) throws IOException {
+
+RequestInfo rp = request.getRequestProcessor();
+rp.setStage(org.apache.coyote.Constants.STAGE_PARSE);
+
+// Setting up the socket
+this.socketWrapper = socket;
+
+setupSocket(socket);
+
+int soTimeout = endpoint.getSoTimeout();
+boolean cping = false;
+
+// Error flag
+error = false;
+
+boolean keptAlive = false;
+
+while (!error  !endpoint.isPaused()) {
+// Parsing the request header
+try {
+// Get first message of the request
+if (!readMessage(requestHeaderMessage, !keptAlive)) {
+break;
+}
+// Set back timeout if keep alive timeout is enabled
+if (keepAliveTimeout  0) {
+setTimeout(socketWrapper, soTimeout);
+}
+// Check message type, process right away and break if
+// not regular request processing
+int type = requestHeaderMessage.getByte();
+if (type == Constants.JK_AJP13_CPING_REQUEST) {
+if (endpoint.isPaused()) {
+recycle(true);
+break;
+}
+cping = true;
+try {
+output(pongMessageArray, 0, pongMessageArray.length);
+} catch (IOException e) {
+error = true;
+}
+recycle(false);
+continue;
+} else if(type != Constants.JK_AJP13_FORWARD_REQUEST) {
+// Unexpected packet type. Unread body packets should have
+// been swallowed in finish().
+if (getLog().isDebugEnabled()) {
+getLog().debug(Unexpected message:  + type);
+}
+error = true;
+break;
+}
+keptAlive = true;
+request.setStartTime(System.currentTimeMillis());
+} catch (IOException e) {
+error = true;
+break;
+} catch (Throwable t) {
+ExceptionUtils.handleThrowable(t);
+getLog().debug(sm.getString(ajpprocessor.header.error), t);
+// 400 - Bad Request
+response.setStatus(400);
+getAdapter().log(request, response, 0);
+error = true;
+}
+
+if (!error) {
+// Setting up filters, and parse some request headers
+rp.setStage(org.apache.coyote.Constants.STAGE_PREPARE);
+try {
+prepareRequest();
+} catch (Throwable t) {
+ExceptionUtils.handleThrowable(t);
+
getLog().debug(sm.getString(ajpprocessor.request.prepare), t);
+// 400 - Internal Server Error
+response.setStatus(400);
+getAdapter().log(request, response, 0);
+error = true;
+}
+}
+
+if (!error  !cping  endpoint.isPaused()) {
+// 503 - Service unavailable
+response.setStatus(503);
+getAdapter().log(request, response, 0);
+error = true;
+}
+cping = false;
+
+// Process the request in the adapter
+if (!error) {
+try {
+rp.setStage(org.apache.coyote.Constants.STAGE_SERVICE);
+getAdapter().service(request, response);
+} catch 

svn commit: r1519429 - /tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 13:16:31 2013
New Revision: 1519429

URL: http://svn.apache.org/r1519429
Log:
Fix spacing

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java?rev=1519429r1=1519428r2=1519429view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java Mon Sep  
2 13:16:31 2013
@@ -451,7 +451,6 @@ public abstract class AbstractAjpProcess
 // needs to be done here
 
 } else if (actionCode == ActionCode.REQ_LOCAL_ADDR_ATTRIBUTE) {
-
 // Copy from local name for now, which should simply be an address
 request.localAddr().setString(request.localName().toString());
 
@@ -466,7 +465,6 @@ public abstract class AbstractAjpProcess
 // needs to be done here
 
 } else if (actionCode == ActionCode.REQ_SET_BODY_REPLAY) {
-
 // Set the given bytes as the content
 ByteChunk bc = (ByteChunk) param;
 int length = bc.getLength();



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



svn commit: r1519431 - in /tomcat/trunk/java/org/apache/coyote/ajp: AjpNioProcessor.java AjpProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 13:17:26 2013
New Revision: 1519431

URL: http://svn.apache.org/r1519431
Log:
Aligning the readMessage() method implementation and the read() method 
signature between BIO and NIo to aid future refactoring

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java
tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java?rev=1519431r1=1519430r2=1519431view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java Mon Sep  2 
13:17:26 2013
@@ -141,7 +141,7 @@ public class AjpNioProcessor extends Abs
 /**
  * Read the specified amount of bytes, and place them in the input buffer.
  */
-protected int read(byte[] buf, int pos, int n, boolean blockFirstRead)
+protected boolean read(byte[] buf, int pos, int n, boolean blockFirstRead)
 throws IOException {
 
 int read = 0;
@@ -153,13 +153,13 @@ public class AjpNioProcessor extends Abs
 if (res  0) {
 read += res;
 } else if (res == 0  !block) {
-break;
+return false;
 } else {
 throw new IOException(sm.getString(ajpprocessor.failedread));
 }
 block = true;
 }
-return read;
+return true;
 }
 
 
@@ -205,13 +205,6 @@ public class AjpNioProcessor extends Abs
 }
 
 
-/**
- * Read an AJP message.
- *
- * @return codetrue/code if a message was read, otherwise false
- *
- * @throws IOException any other failure, including incomplete reads
- */
 @Override
 protected boolean readMessage(AjpMessage message, boolean blockFirstRead)
 throws IOException {
@@ -219,9 +212,7 @@ public class AjpNioProcessor extends Abs
 byte[] buf = message.getBuffer();
 int headerLength = message.getHeaderLength();
 
-int bytesRead = read(buf, 0, headerLength, blockFirstRead);
-
-if (bytesRead == 0) {
+if (!read(buf, 0, headerLength, blockFirstRead)) {
 return false;
 }
 

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java?rev=1519431r1=1519430r2=1519431view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java Mon Sep  2 
13:17:26 2013
@@ -124,8 +124,20 @@ public class AjpProcessor extends Abstra
 /**
  * Read at least the specified amount of bytes, and place them
  * in the input buffer.
+ *
+ * @param buf   Buffer to read data into
+ * @param pos   Start position
+ * @param n Number of bytes to read
+ * @param blockFirstReadShould the first read block?
+ *
+ * @return If blockFirstRead is false, the connector supports non-blocking
+ * IO and the first read does not return any data, this method
+ * reads no data into the buffer returns false. Otherwise, blocking
+ * reads are used read the specified number of bytes into the
+ * buffer.
+ * @throws IOException
  */
-protected boolean read(byte[] buf, int pos, int n)
+protected boolean read(byte[] buf, int pos, int n, boolean blockFirstRead)
 throws IOException {
 
 int read = 0;
@@ -143,23 +155,16 @@ public class AjpProcessor extends Abstra
 }
 
 
-/**
- * Read an AJP message.
- *
- * @param message   The message to populate
- * @param ignored   Not used in BIO
- * @return true if the message has been read, false if the short read
- * didn't return anything
- * @throws IOException any other failure, including incomplete reads
- */
 @Override
-protected boolean readMessage(AjpMessage message, boolean ignored)
+protected boolean readMessage(AjpMessage message, boolean block)
 throws IOException {
 
 byte[] buf = message.getBuffer();
 int headerLength = message.getHeaderLength();
 
-read(buf, 0, headerLength);
+if (!read(buf, 0, headerLength, block)) {
+return false;
+}
 
 int messageLength = message.processHeader(true);
 if (messageLength  0) {
@@ -180,7 +185,7 @@ public class AjpProcessor extends Abstra
 Integer.valueOf(messageLength),
 Integer.valueOf(buf.length)));
 }
-read(buf, headerLength, messageLength);
+read(buf, headerLength, messageLength, true);
 

svn commit: r1519432 - /tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 13:18:28 2013
New Revision: 1519432

URL: http://svn.apache.org/r1519432
Log:
Start to align the APR/native readMessage() method implementation with BIO and 
NIO to aid future refactoring.

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java?rev=1519432r1=1519431r2=1519432view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java Mon Sep  2 
13:18:28 2013
@@ -273,32 +273,23 @@ public class AjpAprProcessor extends Abs
 }
 
 
-/**
- * Read an AJP message.
- *
- * @param block If there is no data available to read when this method is
- *  called, should this call block until data becomes 
available?
-
- * @return true if the message has been read, false if no data was read
- *
- * @throws IOException any other failure, including incomplete reads
- */
 @Override
 protected boolean readMessage(AjpMessage message, boolean block)
 throws IOException {
 
+byte[] buf = message.getBuffer();
 int headerLength = message.getHeaderLength();
 
 if (!read(headerLength, block)) {
 return false;
 }
 
-inputBuffer.get(message.getBuffer(), 0, headerLength);
+inputBuffer.get(buf, 0, headerLength);
 int messageLength = message.processHeader(true);
 if (messageLength  0) {
 // Invalid AJP header signature
-// TODO: Throw some exception and close the connection to frontend.
-return false;
+throw new IOException(sm.getString(ajpmessage.invalidLength,
+Integer.valueOf(messageLength)));
 }
 else if (messageLength == 0) {
 // Zero length message.
@@ -311,10 +302,10 @@ public class AjpAprProcessor extends Abs
 throw new IllegalArgumentException(sm.getString(
 ajpprocessor.header.tooLong,
 Integer.valueOf(messageLength),
-Integer.valueOf(message.getBuffer().length)));
+Integer.valueOf(buf.length)));
 }
 read(messageLength, true);
-inputBuffer.get(message.getBuffer(), headerLength, messageLength);
+inputBuffer.get(buf, headerLength, messageLength);
 return true;
 }
 }



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



svn commit: r1519435 - /tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 13:24:10 2013
New Revision: 1519435

URL: http://svn.apache.org/r1519435
Log:
Move the copying from the inputBuffer to the message buffer into the read() 
method to align read() in APR/native with BIO and NIO.

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java?rev=1519435r1=1519434r2=1519435view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java Mon Sep  2 
13:24:10 2013
@@ -194,7 +194,8 @@ public class AjpAprProcessor extends Abs
  * @return
  * @throws IOException
  */
-protected boolean read(int n, boolean block) throws IOException {
+protected boolean read(byte[] buf, int pos, int n, boolean block)
+throws IOException {
 
 boolean nextReadBlocks = block;
 
@@ -224,6 +225,7 @@ public class AjpAprProcessor extends Abs
 }
 }
 
+inputBuffer.get(buf, pos, n);
 return true;
 }
 
@@ -280,11 +282,10 @@ public class AjpAprProcessor extends Abs
 byte[] buf = message.getBuffer();
 int headerLength = message.getHeaderLength();
 
-if (!read(headerLength, block)) {
+if (!read(buf, 0, headerLength, block)) {
 return false;
 }
 
-inputBuffer.get(buf, 0, headerLength);
 int messageLength = message.processHeader(true);
 if (messageLength  0) {
 // Invalid AJP header signature
@@ -304,8 +305,7 @@ public class AjpAprProcessor extends Abs
 Integer.valueOf(messageLength),
 Integer.valueOf(buf.length)));
 }
-read(messageLength, true);
-inputBuffer.get(buf, headerLength, messageLength);
+read(buf, headerLength, messageLength, true);
 return true;
 }
 }



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



svn commit: r1519453 - in /tomcat/trunk/java/org/apache/coyote/ajp: AbstractAjpProcessor.java AjpAprProcessor.java AjpNioProcessor.java AjpProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 14:35:31 2013
New Revision: 1519453

URL: http://svn.apache.org/r1519453
Log:
Refactoring. Pull up readMessage()

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java
tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java
tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java?rev=1519453r1=1519452r2=1519453view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java Mon Sep  
2 14:35:31 2013
@@ -800,13 +800,31 @@ public abstract class AbstractAjpProcess
 protected abstract void setupSocket(SocketWrapperS socketWrapper)
 throws IOException;
 
+protected abstract void setTimeout(SocketWrapperS socketWrapper,
+int timeout) throws IOException;
+
 // Methods called by prepareResponse()
 protected abstract void output(byte[] src, int offset, int length)
 throws IOException;
 
-// Methods used by process
-protected abstract void setTimeout(SocketWrapperS socketWrapper,
-int timeout) throws IOException;
+// Methods used by readMessage
+/**
+ * Read at least the specified amount of bytes, and place them
+ * in the input buffer. Note that if any data is available to read then 
this
+ * method will always block until at least the specified number of bytes
+ * have been read.
+ *
+ * @param buf   Buffer to read data into
+ * @param pos   Start position
+ * @param n The minimum number of bytes to read
+ * @param block If there is no data available to read when this method is
+ *  called, should this call block until data becomes 
available?
+ * @return  codetrue/code if the requested number of bytes were read
+ *  else codefalse/code
+ * @throws IOException
+ */
+protected abstract boolean read(byte[] buf, int pos, int n, boolean block)
+throws IOException;
 
 // Methods used by SocketInputBuffer
 /** Receive a chunk of data. Called to implement the
@@ -848,8 +866,40 @@ public abstract class AbstractAjpProcess
  *
  * @throws IOException any other failure, including incomplete reads
  */
-protected abstract boolean readMessage(AjpMessage message,
-boolean blockOnFirstRead) throws IOException;
+protected boolean readMessage(AjpMessage message, boolean block)
+throws IOException {
+
+byte[] buf = message.getBuffer();
+int headerLength = message.getHeaderLength();
+
+if (!read(buf, 0, headerLength, block)) {
+return false;
+}
+
+int messageLength = message.processHeader(true);
+if (messageLength  0) {
+// Invalid AJP header signature
+throw new IOException(sm.getString(ajpmessage.invalidLength,
+Integer.valueOf(messageLength)));
+}
+else if (messageLength == 0) {
+// Zero length message.
+return true;
+}
+else {
+if (messageLength  message.getBuffer().length) {
+// Message too long for the buffer
+// Need to trigger a 400 response
+throw new IllegalArgumentException(sm.getString(
+ajpprocessor.header.tooLong,
+Integer.valueOf(messageLength),
+Integer.valueOf(buf.length)));
+}
+read(buf, headerLength, messageLength, true);
+return true;
+}
+}
+
 
 @Override
 public final boolean isComet() {

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java?rev=1519453r1=1519452r2=1519453view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java Mon Sep  2 
14:35:31 2013
@@ -182,18 +182,7 @@ public class AjpAprProcessor extends Abs
 }
 
 
-/**
- * Read at least the specified amount of bytes, and place them
- * in the input buffer. Note that if any data is available to read then 
this
- * method will always block until at least the specified number of bytes
- * have been read.
- *
- * @param n The minimum number of bytes to read
- * @param block If there is no data available to read when this method is
- *  called, should this call block until data 

svn commit: r1519456 - /tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 14:56:00 2013
New Revision: 1519456

URL: http://svn.apache.org/r1519456
Log:
Researched the TODOs from the review of the AJP code against the list of 
actions.

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java?rev=1519456r1=1519455r2=1519456view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java Mon Sep  
2 14:56:00 2013
@@ -380,8 +380,6 @@ public abstract class AbstractAjpProcess
 
 } else if (actionCode == ActionCode.RESET) {
 // NO-OP
-// TODO Check if this is really a NO-OP for AJP or if something
-// needs to be done here
 
 } else if (actionCode == ActionCode.REQ_SSL_ATTRIBUTE ) {
 
@@ -429,7 +427,6 @@ public abstract class AbstractAjpProcess
 // AJP as the reverse proxy controls that connection.
 
 } else if (actionCode == ActionCode.REQ_HOST_ATTRIBUTE) {
-
 // Get remote host name using a DNS resolution
 if (request.remoteHost().isNull()) {
 try {
@@ -442,13 +439,11 @@ public abstract class AbstractAjpProcess
 
 } else if (actionCode == ActionCode.REQ_HOST_ADDR_ATTRIBUTE) {
 // NO-OP
-// TODO Check if this is really a NO-OP for AJP or if something
-// needs to be done here
+// Automatically populated during prepareRequest()
 
 } else if (actionCode == ActionCode.REQ_LOCAL_NAME_ATTRIBUTE) {
 // NO-OP
-// TODO Check if this is really a NO-OP for AJP or if something
-// needs to be done here
+// Automatically populated during prepareRequest()
 
 } else if (actionCode == ActionCode.REQ_LOCAL_ADDR_ATTRIBUTE) {
 // Copy from local name for now, which should simply be an address
@@ -456,13 +451,11 @@ public abstract class AbstractAjpProcess
 
 } else if (actionCode == ActionCode.REQ_REMOTEPORT_ATTRIBUTE) {
 // NO-OP
-// TODO Check if this is really a NO-OP for AJP or if something
-// needs to be done here
+// This information is not available when using the AJP protocol
 
 } else if (actionCode == ActionCode.REQ_LOCALPORT_ATTRIBUTE) {
 // NO-OP
-// TODO Check if this is really a NO-OP for AJP or if something
-// needs to be done here
+// Automatically populated during prepareRequest()
 
 } else if (actionCode == ActionCode.REQ_SET_BODY_REPLAY) {
 // Set the given bytes as the content



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



svn commit: r1519465 - /tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 15:44:31 2013
New Revision: 1519465

URL: http://svn.apache.org/r1519465
Log:
Enable AJP to work with Servlet 3.1 non-blocking reads. This is not a true 
non-blocking implementation. That requires further investigation marked by the 
TODOs in the code.

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java?rev=1519465r1=1519464r2=1519465view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java Mon Sep  
2 15:44:31 2013
@@ -44,6 +44,7 @@ import org.apache.tomcat.util.http.HttpM
 import org.apache.tomcat.util.http.MimeHeaders;
 import org.apache.tomcat.util.net.AbstractEndpoint;
 import org.apache.tomcat.util.net.AbstractEndpoint.Handler.SocketState;
+import org.apache.tomcat.util.net.DispatchType;
 import org.apache.tomcat.util.net.SSLSupport;
 import org.apache.tomcat.util.net.SocketStatus;
 import org.apache.tomcat.util.net.SocketWrapper;
@@ -515,17 +516,34 @@ public abstract class AbstractAjpProcess
 sm.getString(ajpprocessor.comet.notsupported));
 
 } else if (actionCode == ActionCode.AVAILABLE) {
-// TODO
+// Web Server only sends data when asked so unless end of stream 
has
+// been reached, there should be data available.
+// TODO Figure out if a 'true' non-blocking approach is possible
+//  for AJP and what changes would be required to support it.
+if (!endOfStream) {
+request.setAvailable(1);
+}
+
 } else if (actionCode == ActionCode.NB_WRITE_INTEREST) {
-// TODO
+// Assume it is always possible write data.
+// TODO Investigate 'true' non-blocking IO for AJP.
+AtomicBoolean isReady = (AtomicBoolean)param;
+isReady.set(true);
+
 } else if (actionCode == ActionCode.NB_READ_INTEREST) {
 // TODO
+System.out.println(AJP Non-blocking IO TODO: NB_READ_INTEREST);
+
 } else if (actionCode == ActionCode.REQUEST_BODY_FULLY_READ) {
-// TODO
+AtomicBoolean result = (AtomicBoolean) param;
+result.set(endOfStream);
+
 } else if (actionCode == ActionCode.DISPATCH_READ) {
-// TODO
+socketWrapper.addDispatch(DispatchType.NON_BLOCKING_READ);
+
 } else if (actionCode == ActionCode.DISPATCH_WRITE) {
-// TODO
+socketWrapper.addDispatch(DispatchType.NON_BLOCKING_WRITE);
+
 }  else {
 actionInternal(actionCode, param);
 }



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



[Bug 55383] Improve markup and design of Tomcat's HTML pages

2013-09-02 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=55383

--- Comment #27 from Konstantin Preißer prei...@web.de ---
Created attachment 30793
  -- https://issues.apache.org/bugzilla/attachment.cgi?id=30793action=edit
Part 3 of updated documentation XMLs

Hi,

here is another part of updated Documentation XMLs.

I modified the CSS so that a table with class=detail-table looks the same as
class=defaultTable. If you don't like it, you (or I) can change it so that a
detail-table has different colors.

When working through the documentation, I found the following page (and others
in appdev):
http://tomcat.apache.org/tomcat-8.0-doc/appdev/installation.html

which seemed a bit outdated, as it mentioned Tomcat 7 and Java 6 (I updated it
to Tomcat 8 and Java 7), but it also mentions CVS (I guess this was written
before SVN existed).

Furthermore, this example web.xml:
http://tomcat.apache.org/tomcat-8.0-doc/appdev/web.xml.txt
declares itself as Web Application 2.3 instead of 3.1.


Note, that I also modified the HTTP and AJP configuration pages so that the
Connector Comparison Chart is now using a table, instead of plain text, as it
is tabular data.

-- 
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: r1519478 - /tomcat/trunk/java/org/apache/coyote/http11/filters/VoidInputFilter.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 17:11:27 2013
New Revision: 1519478

URL: http://svn.apache.org/r1519478
Log:
Ensure available() is consistent with isFinished()

Modified:
tomcat/trunk/java/org/apache/coyote/http11/filters/VoidInputFilter.java

Modified: 
tomcat/trunk/java/org/apache/coyote/http11/filters/VoidInputFilter.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/filters/VoidInputFilter.java?rev=1519478r1=1519477r2=1519478view=diff
==
--- tomcat/trunk/java/org/apache/coyote/http11/filters/VoidInputFilter.java 
(original)
+++ tomcat/trunk/java/org/apache/coyote/http11/filters/VoidInputFilter.java Mon 
Sep  2 17:11:27 2013
@@ -123,7 +123,11 @@ public class VoidInputFilter implements 
 
 @Override
 public int available() {
-return 0;
+if (read) {
+return 0;
+} else {
+return 1;
+}
 }
 
 



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



svn commit: r1519481 - in /tomcat/trunk/webapps/examples: WEB-INF/classes/nonblocking/NumberWriter.java WEB-INF/web.xml servlets/index.html

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 17:31:15 2013
New Revision: 1519481

URL: http://svn.apache.org/r1519481
Log:
Simple non-blocking write example. Primarily written to have something to test 
AJP with. Sequential were chosen as it makes it easy to spot output corruption.

Added:
tomcat/trunk/webapps/examples/WEB-INF/classes/nonblocking/NumberWriter.java 
  (with props)
Modified:
tomcat/trunk/webapps/examples/WEB-INF/web.xml
tomcat/trunk/webapps/examples/servlets/index.html

Added: 
tomcat/trunk/webapps/examples/WEB-INF/classes/nonblocking/NumberWriter.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/examples/WEB-INF/classes/nonblocking/NumberWriter.java?rev=1519481view=auto
==
--- tomcat/trunk/webapps/examples/WEB-INF/classes/nonblocking/NumberWriter.java 
(added)
+++ tomcat/trunk/webapps/examples/WEB-INF/classes/nonblocking/NumberWriter.java 
Mon Sep  2 17:31:15 2013
@@ -0,0 +1,148 @@
+/*
+ * 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 nonblocking;
+
+import java.io.IOException;
+import java.nio.charset.StandardCharsets;
+import java.util.concurrent.atomic.AtomicInteger;
+
+import javax.servlet.AsyncContext;
+import javax.servlet.ReadListener;
+import javax.servlet.ServletException;
+import javax.servlet.ServletInputStream;
+import javax.servlet.ServletOutputStream;
+import javax.servlet.WriteListener;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * This doesn't do anything particularly useful - it just writes a series of
+ * numbers to the response body while demonstrating how to perform non-blocking
+ * writes.
+ */
+public class NumberWriter extends HttpServlet {
+
+private static final long serialVersionUID = 1L;
+
+@Override
+protected void doGet(HttpServletRequest req, HttpServletResponse resp)
+throws ServletException, IOException {
+
+resp.setContentType(text/plain);
+resp.setCharacterEncoding(UTF-8);
+
+// Non-blocking IO requires async
+AsyncContext ac = req.startAsync();
+
+// Use a single listener for read and write. Listeners often need to
+// share state to coordinate reads and writes and this is much easier 
as
+// a single object.
+@SuppressWarnings(unused)
+NumberWriterListener listener = new NumberWriterListener(
+ac, req.getInputStream(), resp.getOutputStream());
+
+}
+
+
+/**
+ * Keep in mind that each call may well be on a different thread to the
+ * previous call. Ensure that changes in values will be visible across
+ * threads. There should only ever be one container thread at a time 
calling
+ * the listener.
+ */
+private static class NumberWriterListener implements ReadListener,
+WriteListener {
+
+private static final int LIMIT =  1000;
+
+private final AsyncContext ac;
+private final ServletInputStream sis;
+private final ServletOutputStream sos;
+private final AtomicInteger counter = new AtomicInteger(0);
+
+private volatile boolean readFinished = false;
+private byte[] buffer = new byte[8192];
+
+private NumberWriterListener(AsyncContext ac, ServletInputStream sis,
+ServletOutputStream sos) {
+this.ac = ac;
+this.sis = sis;
+this.sos = sos;
+
+// In Tomcat, the order the listeners are set controls the order
+// that the first calls are made. In this case, the read listener
+// will be called before the write listener.
+sis.setReadListener(this);
+sos.setWriteListener(this);
+}
+
+@Override
+public void onDataAvailable() throws IOException {
+
+// There should be no data to read
+
+int read = 0;
+// Loop as long as there is data to read. If isReady() returns 
false
+// the socket will be added to the poller and onDataAvailable() 
will
+// be called again as soon as there is more data to read.
+while 

svn commit: r1519501 - /tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 19:23:49 2013
New Revision: 1519501

URL: http://svn.apache.org/r1519501
Log:
Prevent NPE if dispatch results in a nested call to process()

Modified:
tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java

Modified: tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java?rev=1519501r1=1519500r2=1519501view=diff
==
--- tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java (original)
+++ tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java Mon Sep  2 
19:23:49 2013
@@ -618,6 +618,9 @@ public abstract class AbstractProtocol i
 SocketState state = SocketState.CLOSED;
 do {
 if (wrapper.hasNextDispatch()) {
+// Associate with the processor with the connection as
+// these calls may result in a nested call to process()
+connections.put(socket, processor);
 DispatchType nextDispatch = wrapper.getNextDispatch();
 state = processor.asyncDispatch(
 nextDispatch.getSocketStatus());



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



Re: svn commit: r1519353 - in /tomcat/maven-plugin/trunk: common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/ tomcat6-maven-plugin/src/main/java/org/apache/tomcat/ma

2013-09-02 Thread Konstantin Kolinko
2013/9/2  ol...@apache.org:
 Author: olamy
 Date: Mon Sep  2 06:11:10 2013
 New Revision: 1519353

 URL: http://svn.apache.org/r1519353
 Log:
 display the reason phrase too

 Modified:
 
 tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 
 tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 
 tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java

 Modified: 
 tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 URL: 
 http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties?rev=1519353r1=1519352r2=1519353view=diff
 ==
 --- 
 tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
  (original)
 +++ 
 tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
  Mon Sep  2 06:11:10 2013
 @@ -112,4 +112,4 @@ AbstractI18NTomcat6Mojo.tomcatHttStatusE

  #AbstractTomcat7Mojo

 -AbstractTomcat7Mojo.tomcatHttStatusError = Tomcat return http status error: 
 {0}
 +AbstractTomcat7Mojo.tomcatHttStatusError = Tomcat return http status error: 
 {0}, Reason Phrase: {1}

1. Typo in message key:
s/ Htt / Http / ?

2. The file below references
AbstractI18NTomcat6Mojo.tomcatHttStatusError,

but the message above is Tomcat7 one.
Haven't you forgotten to change Tomcat6 message as well?

Best regards,
Konstantin Kolinko


 Modified: 
 tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 URL: 
 http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java?rev=1519353r1=1519352r2=1519353view=diff
 ==
 --- 
 tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
  (original)
 +++ 
 tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
  Mon Sep  2 06:11:10 2013
 @@ -68,10 +68,12 @@ public abstract class AbstractI18NTomcat

  if ( statusCode = 400 )
  {
 -getLog().error( messagesProvider.getMessage( 
 AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode ) );
 +getLog().error( messagesProvider.getMessage( 
 AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode,
 + 
 tomcatResponse.getReasonPhrase() ) );

  throw new MojoExecutionException(
 -messagesProvider.getMessage( 
 AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode ) + : 
 +messagesProvider.getMessage( 
 AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode,
 + 
 tomcatResponse.getReasonPhrase() ) + : 
  + tomcatResponse.getHttpResponseBody() );
  }
  }

 Modified: 
 tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java
 URL: 
 http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java?rev=1519353r1=1519352r2=1519353view=diff
 ==
 --- 
 tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java
  (original)
 +++ 
 tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java
  Mon Sep  2 06:11:10 2013
 @@ -43,7 +43,7 @@ public abstract class AbstractTomcat7Moj
   * The webapp context path to use for the web application being run. 
 This must always start with a forward-slash
   * ('/').
   */
 -@Parameter( defaultValue = /${project.artifactId}, property = 
 maven.tomcat.path, required = true )
 +@Parameter(defaultValue = /${project.artifactId}, property = 
 maven.tomcat.path, required = true)
  protected String path;


 @@ -56,7 +56,8 @@ public abstract class AbstractTomcat7Moj
   * Check response of Tomcat to know if ok or not.
   *
   * @param tomcatResponse response of tomcat return by TomcatManager class
 - * @throws org.apache.maven.plugin.MojoExecutionException if HTTP status 
 code greater than 400 

svn commit: r1519508 - in /tomcat/trunk/java/org/apache: coyote/ajp/ coyote/http11/ tomcat/util/net/

2013-09-02 Thread markt
Author: markt
Date: Mon Sep  2 19:47:14 2013
New Revision: 1519508

URL: http://svn.apache.org/r1519508
Log:
Ensure that when multiple dispatches are requested (e.g. one for write and one 
for read) if the first calls AsyncContext.complete() that the second dispatch 
is not processed.

Modified:
tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java
tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java
tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java
tomcat/trunk/java/org/apache/coyote/http11/Http11AprProcessor.java
tomcat/trunk/java/org/apache/coyote/http11/Http11NioProcessor.java
tomcat/trunk/java/org/apache/coyote/http11/Http11Processor.java
tomcat/trunk/java/org/apache/tomcat/util/net/SocketWrapper.java

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java?rev=1519508r1=1519507r2=1519508view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AbstractAjpProcessor.java Mon Sep  
2 19:47:14 2013
@@ -525,14 +525,13 @@ public abstract class AbstractAjpProcess
 }
 
 } else if (actionCode == ActionCode.NB_WRITE_INTEREST) {
-// Assume it is always possible write data.
-// TODO Investigate 'true' non-blocking IO for AJP.
+// Until 'true' non-blocking IO is implemented, assume it is always
+// possible write data.
 AtomicBoolean isReady = (AtomicBoolean)param;
 isReady.set(true);
 
 } else if (actionCode == ActionCode.NB_READ_INTEREST) {
-// TODO
-System.out.println(AJP Non-blocking IO TODO: NB_READ_INTEREST);
+// NO-OP. Not required until 'true' non-blocking IO is implemented.
 
 } else if (actionCode == ActionCode.REQUEST_BODY_FULLY_READ) {
 AtomicBoolean result = (AtomicBoolean) param;

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java?rev=1519508r1=1519507r2=1519508view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpAprProcessor.java Mon Sep  2 
19:47:14 2013
@@ -84,6 +84,7 @@ public class AjpAprProcessor extends Abs
 protected void actionInternal(ActionCode actionCode, Object param) {
 
 if (actionCode == ActionCode.ASYNC_COMPLETE) {
+socketWrapper.clearDispatches();
 if (asyncStateMachine.asyncComplete()) {
 ((AprEndpoint)endpoint).processSocketAsync(this.socketWrapper,
 SocketStatus.OPEN_READ);

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java?rev=1519508r1=1519507r2=1519508view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpNioProcessor.java Mon Sep  2 
19:47:14 2013
@@ -69,9 +69,10 @@ public class AjpNioProcessor extends Abs
 protected void actionInternal(ActionCode actionCode, Object param) {
 
 if (actionCode == ActionCode.ASYNC_COMPLETE) {
+socketWrapper.clearDispatches();
 if (asyncStateMachine.asyncComplete()) {
 ((NioEndpoint)endpoint).dispatchForEvent(
-socketWrapper.getSocket(), SocketStatus.OPEN_READ, 
false);
+socketWrapper.getSocket(), SocketStatus.OPEN_READ, 
true);
 }
 } else if (actionCode == ActionCode.ASYNC_SETTIMEOUT) {
 if (param == null) return;

Modified: tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java?rev=1519508r1=1519507r2=1519508view=diff
==
--- tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java (original)
+++ tomcat/trunk/java/org/apache/coyote/ajp/AjpProcessor.java Mon Sep  2 
19:47:14 2013
@@ -81,6 +81,7 @@ public class AjpProcessor extends Abstra
 protected void actionInternal(ActionCode actionCode, Object param) {
 
 if (actionCode == ActionCode.ASYNC_COMPLETE) {
+socketWrapper.clearDispatches();
 if (asyncStateMachine.asyncComplete()) {
 ((JIoEndpoint)endpoint).processSocketAsync(this.socketWrapper,
 

Re: Need a tc-native 1.1.28 release

2013-09-02 Thread Mark Thomas
On 27/08/2013 10:54, jean-frederic clere wrote:
 On 08/27/2013 10:00 AM, Mark Thomas wrote:
 On 27/08/2013 04:07, Violeta Georgieva wrote:
 2013/8/23 Mark Thomas wrote:

 Tomcat 8 needs tc-native with the fix for non-blocking IO [1]. Any
 takers for rolling the release?

 Mark,

 Do we need this for Tomcat 7 as well?

 Yes. It affects the JSR-356 WebSocket implementation.
 
 Mladen or I should be able to do that next week.

Great.

Do you have a better estimate than sometime this week?

Cheers,

Mark

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



[Bug 55511] Reduce contention on WebappClassLoader

2013-09-02 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=55511

Mark Thomas ma...@apache.org changed:

   What|Removed |Added

  Attachment #30789|0   |1
   is patch||

--- Comment #2 from Mark Thomas ma...@apache.org ---
Comment on attachment 30789
  -- https://issues.apache.org/bugzilla/attachment.cgi?id=30789
Patch diff to WebappClassLoader to enable concurrent read of cache

Mark as patch

-- 
You are receiving this mail because:
You are the assignee for the bug.

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



[Bug 55511] Reduce contention on WebappClassLoader

2013-09-02 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=55511

--- Comment #3 from Mark Thomas ma...@apache.org ---
The patch doesn't apply cleanly with either Eclipse (which can be fussy) or
TortoiseSVN (which is usually quite tolerant).

I'd like to see some performance numbers before considering this patch given
the problems any solution that didn't sync the whole method has demonstrated in
the past.

-- 
You are receiving this mail because:
You are the assignee for the bug.

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



[Bug 55511] Reduce contention on WebappClassLoader

2013-09-02 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=55511

--- Comment #4 from Konstantin Kolinko knst.koli...@gmail.com ---
   @Override
 - public synchronized Class? loadClass(String name, boolean resolve)
 + public Class? loadClass(String name, boolean resolve)

The method that is overridden here is marked as synchronized in
java.lang.ClassLoader in Java 6. Thus it is synchronized in Tomcat as well.

That method is not synchronized in Java 7, but as far as I remember, you need
to jump through some hoops such as registerAsParallelCapable() to make use of
parallel execution. See discussion in bug 48903 (esp. comments 2 and 6).

Discussion in issue 48903 was three years ago when Java 7 was still beta. I am
not aware of what is the current state of affairs in that API.

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



[jira] [Commented] (MTOMCAT-235) War file is being uploaded twice - Cookie rejected

2013-09-02 Thread *$^¨%`£

[ 
https://issues.apache.org/jira/browse/MTOMCAT-235?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13756290#comment-13756290
 ] 

Olivier Lamy (*$^¨%`£) commented on MTOMCAT-235:


using ProxyPassReverseCookiePath could help you?

 War file is being uploaded twice -  Cookie rejected
 ---

 Key: MTOMCAT-235
 URL: https://issues.apache.org/jira/browse/MTOMCAT-235
 Project: Apache Tomcat Maven Plugin
  Issue Type: Bug
  Components: tomcat6
Affects Versions: 2.1
 Environment: Linux
Reporter: George Smith
Assignee: Olivier Lamy (*$^¨%`£)

 When I run maven task for (re)deploy, the file is always being uploaded 
 twice. I think the problem is  related to manager path. 
 In front of Tomcat there is a Apache server (from security reasons), which 
 redirects requests from /manager-server-app to /manager on Tomcat server. 
 Plugin should deal with it.
 {code}
  [INFO] Deploying war to http://192.168.191.83/server-app
  Uploading: 
 http://192.168.191.83/manager-server-app//deploy?path=%2Fserver-app
  Uploaded: 
 http://192.168.191.83/manager-server-app//deploy?path=%2Fserver-app (13788 KB 
 at 468.1 KB/sec) 
 28.8.2013 8:44:35 org.apache.http.client.protocol.ResponseProcessCookies 
 processCookies
 WARNING: Cookie rejected: [version: 0][name: JSESSIONID][value: 
 7ACBBD27F97F86C3477C988006B02073][domain: 192.168.191.83][path: 
 /manager][expiry: null]. Illegal path attribute /manager. Path of origin: 
 /server-app//deploy
 Uploading: http://192.168.191.83/manager-server-app//deploy?path=%2Fserver-app
 Uploaded: http://192.168.191.83/manager-server-app//deploy?path=%2Fserver-app 
 (13788 KB at 332.8 KB/sec)
 {code}
 After second automatic upload it's deployed successfully.
 The htaccess file content:
 {code}
 RewriteEngine On
 RewriteRule ^manager-server-app/(.*)$ ajp://localhost:8010/manager/$1 [P,NE]
 RewriteRule ^manager-server-app$ /manager/ [L,R]
 {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

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



Re: svn commit: r1519353 - in /tomcat/maven-plugin/trunk: common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/ tomcat6-maven-plugin/src/main/java/org/apache/tomcat/ma

2013-09-02 Thread Olivier Lamy
On 3 September 2013 05:43, Konstantin Kolinko knst.koli...@gmail.com wrote:
 2013/9/2  ol...@apache.org:
 Author: olamy
 Date: Mon Sep  2 06:11:10 2013
 New Revision: 1519353

 URL: http://svn.apache.org/r1519353
 Log:
 display the reason phrase too

 Modified:
 
 tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 
 tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 
 tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java

 Modified: 
 tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 URL: 
 http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties?rev=1519353r1=1519352r2=1519353view=diff
 ==
 --- 
 tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
  (original)
 +++ 
 tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
  Mon Sep  2 06:11:10 2013
 @@ -112,4 +112,4 @@ AbstractI18NTomcat6Mojo.tomcatHttStatusE

  #AbstractTomcat7Mojo

 -AbstractTomcat7Mojo.tomcatHttStatusError = Tomcat return http status error: 
 {0}
 +AbstractTomcat7Mojo.tomcatHttStatusError = Tomcat return http status error: 
 {0}, Reason Phrase: {1}

 1. Typo in message key:
 s/ Htt / Http / ?

 2. The file below references
 AbstractI18NTomcat6Mojo.tomcatHttStatusError,

 but the message above is Tomcat7 one.
 Haven't you forgotten to change Tomcat6 message as well?

Yup I missed to move to only one key as it's the same message.
Just fixed.

Thanks for the review!

Olivier


 Best regards,
 Konstantin Kolinko


 Modified: 
 tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 URL: 
 http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java?rev=1519353r1=1519352r2=1519353view=diff
 ==
 --- 
 tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
  (original)
 +++ 
 tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
  Mon Sep  2 06:11:10 2013
 @@ -68,10 +68,12 @@ public abstract class AbstractI18NTomcat

  if ( statusCode = 400 )
  {
 -getLog().error( messagesProvider.getMessage( 
 AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode ) );
 +getLog().error( messagesProvider.getMessage( 
 AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode,
 + 
 tomcatResponse.getReasonPhrase() ) );

  throw new MojoExecutionException(
 -messagesProvider.getMessage( 
 AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode ) + : 
 +messagesProvider.getMessage( 
 AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode,
 + 
 tomcatResponse.getReasonPhrase() ) + : 
  + tomcatResponse.getHttpResponseBody() );
  }
  }

 Modified: 
 tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java
 URL: 
 http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java?rev=1519353r1=1519352r2=1519353view=diff
 ==
 --- 
 tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java
  (original)
 +++ 
 tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java
  Mon Sep  2 06:11:10 2013
 @@ -43,7 +43,7 @@ public abstract class AbstractTomcat7Moj
   * The webapp context path to use for the web application being run. 
 This must always start with a forward-slash
   * ('/').
   */
 -@Parameter( defaultValue = /${project.artifactId}, property = 
 maven.tomcat.path, required = true )
 +@Parameter(defaultValue = /${project.artifactId}, property = 
 maven.tomcat.path, required = true)
  protected String path;


 @@ -56,7 +56,8 @@ public abstract class AbstractTomcat7Moj
   * Check response of Tomcat to know if ok or not.
   

svn commit: r1519539 - in /tomcat/maven-plugin/trunk: common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/ tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/

2013-09-02 Thread olamy
Author: olamy
Date: Tue Sep  3 01:54:53 2013
New Revision: 1519539

URL: http://svn.apache.org/r1519539
Log:
unify error message key

Modified:

tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties

tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties

tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java

tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java

Modified: 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties?rev=1519539r1=1519538r2=1519539view=diff
==
--- 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 (original)
+++ 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages.properties
 Tue Sep  3 01:54:53 2013
@@ -106,10 +106,6 @@ UndeployMojo.undeployError = Cannot unde
 
 ReloadMojo.reloadingApp = Reloading application at {0}
 
-# AbstractI18NTomcat6Mojo
+#
 
-AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat return http status 
error: {0}
-
-#AbstractTomcat7Mojo
-
-AbstractTomcat7Mojo.tomcatHttStatusError = Tomcat return http status error: 
{0}, Reason Phrase: {1}
+tomcatHttpStatusError = Tomcat return http status error: {0}, Reason Phrase: 
{1}

Modified: 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties?rev=1519539r1=1519538r2=1519539view=diff
==
--- 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
 (original)
+++ 
tomcat/maven-plugin/trunk/common-tomcat-maven-plugin/src/main/resources/org/apache/tomcat/maven/common/messages/messages_fr.properties
 Tue Sep  3 01:54:53 2013
@@ -106,10 +106,4 @@ UndeployMojo.undeployError = N'a pas pu 
 
 ReloadMojo.reloadingApp = Rechargement de l'application sur {0}
 
-# AbstractI18NTomcat6Mojo
-
-AbstractI18NTomcat6Mojo.tomcatHttStatusError = Tomcat a retourn\u00E9 un code 
HTTP en erreur: {0}
-
-#AbstractTomcat7Mojo
-
-AbstractTomcat7Mojo.tomcatHttStatusError = Tomcat a retourn\u00E9 un code HTTP 
en erreur: {0}
\ No newline at end of file
+tomcatHttpStatusError = Tomcat a retourn\u00E9 un code HTTP en erreur: {0}, 
raison: {1}
\ No newline at end of file

Modified: 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
URL: 
http://svn.apache.org/viewvc/tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java?rev=1519539r1=1519538r2=1519539view=diff
==
--- 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 (original)
+++ 
tomcat/maven-plugin/trunk/tomcat6-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat6/AbstractI18NTomcat6Mojo.java
 Tue Sep  3 01:54:53 2013
@@ -68,11 +68,11 @@ public abstract class AbstractI18NTomcat
 
 if ( statusCode = 400 )
 {
-getLog().error( messagesProvider.getMessage( 
AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode,
+getLog().error( messagesProvider.getMessage( 
tomcatHttpStatusError, statusCode,
  
tomcatResponse.getReasonPhrase() ) );
 
 throw new MojoExecutionException(
-messagesProvider.getMessage( 
AbstractI18NTomcat6Mojo.tomcatHttStatusError, statusCode,
+messagesProvider.getMessage( tomcatHttpStatusError, 
statusCode,
  tomcatResponse.getReasonPhrase() 
) + : 
 + tomcatResponse.getHttpResponseBody() );
 }

Modified: 
tomcat/maven-plugin/trunk/tomcat7-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat7/AbstractTomcat7Mojo.java
URL: 

[GUMP@vmgump]: Project tomcat-trunk-test (in module tomcat-trunk) failed

2013-09-02 Thread Bill Barker
To whom it may engage...

This is an automated request, but not an unsolicited one. For 
more information please visit http://gump.apache.org/nagged.html, 
and/or contact the folk at gene...@gump.apache.org.

Project tomcat-trunk-test has an issue affecting its community integration.
This issue affects 1 projects,
 and has been outstanding for 74 runs.
The current state of this project is 'Failed', with reason 'Build Failed'.
For reference only, the following projects are affected by this:
- tomcat-trunk-test :  Tomcat 8.x, a web server implementing the Java 
Servlet 3.1,
...


Full details are available at:

http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-test/index.html

That said, some information snippets are provided here.

The following annotations (debug/informational/warning/error messages) were 
provided:
 -DEBUG- Dependency on junit exists, no need to add for property hamcrest.jar.
 -DEBUG- Dependency on commons-daemon exists, no need to add for property 
commons-daemon.native.src.tgz.
 -DEBUG- Dependency on commons-daemon exists, no need to add for property 
tomcat-native.tar.gz.
 -DEBUG- Dependency on tomcat-trunk exists, no need to add for property 
tomcat-dbcp.home.
 -INFO- Failed with reason build failed
 -INFO- Project Reports in: 
/srv/gump/public/workspace/tomcat-trunk/output/build/logs



The following work was performed:
http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-test/gump_work/build_tomcat-trunk_tomcat-trunk-test.html
Work Name: build_tomcat-trunk_tomcat-trunk-test (Type: Build)
Work ended in a state of : Failed
Elapsed: 53 mins 11 secs
Command Line: /usr/lib/jvm/java-7-oracle/bin/java -Djava.awt.headless=true 
-Dbuild.sysclasspath=only org.apache.tools.ant.Main 
-Dgump.merge=/srv/gump/public/gump/work/merge.xml 
-Djunit.jar=/srv/gump/public/workspace/junit/dist/junit-20130903.jar 
-Dobjenesis.jar=/srv/gump/public/workspace/objenesis/main/target/objenesis-2.1-SNAPSHOT.jar
 
-Dtomcat-native.tar.gz=/srv/gump/public/workspace/apache-commons/daemon/dist/bin/commons-daemon-20130903-native-src.tar.gz
 -Dexamples.sources.skip=true 
-Dtomcat-dbcp.home=/srv/gump/public/workspace/tomcat-trunk/tomcat-deps 
-Djdt.jar=/srv/gump/packages/eclipse/plugins/org.eclipse.jdt.core_3.4.2/jdtcore.jar
 
-Dcommons-daemon.jar=/srv/gump/public/workspace/apache-commons/daemon/dist/commons-daemon-20130903.jar
 
-Dcommons-daemon.native.src.tgz=/srv/gump/public/workspace/apache-commons/daemon/dist/bin/commons-daemon-20130903-native-src.tar.gz
 -Dtest.accesslog=true 
-Dcommons-pool.home=/srv/gump/public/workspace/apache-commons/pool 
-Dcommons-dbcp.home=/
 srv/gump/public/workspace/apache-commons/dbcp 
-Deasymock.jar=/srv/gump/public/workspace/easymock/easymock/target/easymock-3.3-SNAPSHOT.jar
 -Dhamcrest.jar=/srv/gump/public/workspace/junit/dist/junit-20130903.jar 
-Dcglib.jar=/srv/gump/packages/cglib/cglib-nodep-2.2.jar test 
[Working Directory: /srv/gump/public/workspace/tomcat-trunk]
CLASSPATH: 
/usr/lib/jvm/java-7-oracle/lib/tools.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/webapps/examples/WEB-INF/classes:/srv/gump/public/workspace/tomcat-trunk/output/testclasses:/srv/gump/public/workspace/ant/dist/lib/ant.jar:/srv/gump/public/workspace/ant/dist/lib/ant-launcher.jar:/srv/gump/public/workspace/ant/dist/lib/ant-jmf.jar:/srv/gump/public/workspace/ant/dist/lib/ant-junit.jar:/srv/gump/public/workspace/ant/dist/lib/ant-junit4.jar:/srv/gump/public/workspace/ant/dist/lib/ant-swing.jar:/srv/gump/public/workspace/ant/dist/lib/ant-apache-resolver.jar:/srv/gump/public/workspace/ant/dist/lib/ant-apache-xalan2.jar:/srv/gump/public/workspace/xml-commons/java/build/resolver.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/bin/bootstrap.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/bin/tomcat-juli.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/annotations-api.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/servle
 
t-api.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/jsp-api.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/el-api.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/websocket-api.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/catalina.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/catalina-ant.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/catalina-storeconfig.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/tomcat-coyote.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/jasper.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/jasper-el.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/catalina-tribes.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/catalina-ha.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/tomcat-api.jar:/srv/gump/public/workspace/tomcat-trunk/output/build/lib/tomcat-jni.jar:/srv/gump/public/workspace/tomcat