[
https://issues.apache.org/jira/browse/MTOMCAT-230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13701853#comment-13701853
]
Stanislav Grushevskiy commented on MTOMCAT-230:
-----------------------------------------------
tomcat/access_log
127.0.0.1 - - [08/Jul/2013:11:46:41 +0700] "PUT
/manager/text/deploy?path=%2F&update=true HTTP/1.1" 401 2474
127.0.0.1 - tomcat [08/Jul/2013:11:46:58 +0700] "PUT
/manager/text/deploy?path=%2F&update=true HTTP/1.1" 200 90
full jk_workers.properties
# 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.
# Note that the distributed version of this file requires modification
# before it is usable.
#
# Reference documentation:
http://tomcat.apache.org/connectors-doc/reference/workers.html
#
# As a general note, the characters $( and ) are used internally to define
# macros. Do not use them in your own configuration!!!
#
# Whenever you see a set of lines such as:
# x=value
# y=$(x)\something
#
# the final value for y will be value\something
# Define two status worker:
# - jk-status for read-only use
# - jk-manager for read/write use
worker.list=jk-status
worker.jk-status.type=status
worker.jk-status.read_only=true
worker.list=jk-manager
worker.jk-manager.type=status
# We define a load balancer worker
# with name "balancer"
worker.list=balancer
worker.balancer.type=lb
# error_escalation_time: seconds, default = recover_time/2 (=30)
# Determines, how fast a detected error should switch from
# local error state to global error state
# Since: 1.2.28
worker.balancer.error_escalation_time=0
# - max_reply_timeouts: number, default=0
# If there are to many reply timeouts, a worker
# is put into the error state, i.e. it will become
# unavailable for all sessions residing on the respective
# Tomcat. The number of tolerated reply timeouts is
# configured with max_reply_timeouts. The number of
# timeouts occuring is divided by 2 once a minute and the
# resulting counter is compared against max_reply_timeouts.
# If you set max_reply_timeouts to N and the errors are
# occuring equally distributed over time, you will
# tolerate N/2 errors per minute. If they occur in a burst
# you will tolerate N errors.
# Since: 1.2.24
worker.balancer.max_reply_timeouts=10
# Now we add members to the load balancer
# First member is "node1", most
# attributes are inherited from the
# template "worker.template".
worker.balancer.balance_workers=node1
worker.node1.reference=worker.template
worker.node1.host=localhost
worker.node1.port=8109
# Activation allows to configure
# whether this node should actually be used
# A: active (use node fully)
# D: disabled (only use, if sticky session needs this node)
# S: stopped (do not use)
# Since: 1.2.19
worker.node1.activation=A
# Second member is "node2", most
# attributes are inherited from the
# template "worker.template".
worker.balancer.balance_workers=node2
worker.node2.reference=worker.template
worker.node2.host=localhost
worker.node2.port=8209
# Activation allows to configure
# whether this node should actually be used
# A: active (use node fully)
# D: disabled (only use, if sticky session needs this node)
# S: stopped (do not use)
# Since: 1.2.19
worker.node2.activation=A
# Finally we put the parameters
# which should apply to all our ajp13
# workers into the referenced template
# - Type is ajp13
worker.template.type=ajp13
# - socket_connect_timeout: milliseconds, default=0
# Since: 1.2.27
worker.template.socket_connect_timeout=5000
# - socket_keepalive: boolean, default=false
# Should we send TCP keepalive packets
# when connection is idle (socket option)?
worker.template.socket_keepalive=true
# - ping_mode: Character, default=none
# When should we use cping/cpong connection probing?
# C = directly after establishing a new connection
# P = directly before sending each request
# I = in regular intervals for idle connections
# using the watchdog thread
# A = all of the above
# Since: 1.2.27
worker.template.ping_mode=A
# - ping_timeout: milliseconds, default=10000
# Wait timeout for cpong after cping
# Can be overwritten for modes C and P
# Using connect_timeout and prepost_timeout.
# Since: 1.2.27
worker.template.ping_timeout=10000
# - connection_pool_minsize: number, default=connection_pool_size
# Lower pool size when shrinking pool due
# to idle connections
# We want all connections to be closed when
# idle for a long time in order to prevent
# firewall problems.
# Since: 1.2.16
worker.template.connection_pool_minsize=0
# - connection_pool_timeout: seconds, default=0
# Idle time, before a connection is eligible
# for being closed (pool shrinking).
# This should be the same value as connectionTimeout
# in the Tomcat AJP connector, but there it is
# milliseconds, here seconds.
worker.template.connection_pool_timeout=600
# - reply_timeout: milliseconds, default=0
# Any pause longer than this timeout during waiting
# for a part of the reply will abort handling the request
# in mod_jk. The request will proceed running in
# Tomcat, but the web server resources will be freed
# and an error is send to the client.
# For individual requests, the timeout can be overwritten
# by the Apache environment variable JK_REPLY_TIMEOUT.
# JK_REPLY_TIMEOUT since: 1.2.27
worker.template.reply_timeout=300000
# - recovery_options: number, default=0
# Bit mask to configure, if a request, which was send
# to a backend successfully, should be retried on another backend
# in case there's a problem with the response.
# Value "3" disables retries, whenever a part of the request was
# successfully send to the backend.
worker.template.recovery_options=3
# Define 1 real worker using ajp13
worker.list=worker1
# Set properties for worker (ajp13)
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
> CLONE - Plugin uploads WAR file twice
> -------------------------------------
>
> Key: MTOMCAT-230
> URL: https://issues.apache.org/jira/browse/MTOMCAT-230
> Project: Apache Tomcat Maven Plugin
> Issue Type: Bug
> Components: tomcat6
> Affects Versions: 2.0
> Environment: Win7/64, Maven 3.0.4
> Reporter: Stanislav Grushevskiy
> Assignee: Olivier Lamy (*$^¨%`£)
>
> To reproduce this issue you need to install apache and mod_jk and deploy
> application to apache, mod_jk, tomcat.
> If you deploy just to tomcat you will not reproduce it.
> This situation is reproduced in tomcat 6, 7.
> When I deploy my WAR using maven, the target war (exact the same one) is
> being uploaded to the server twice. Can someone explain that?
> I am using this on my module:
> {code}clean install org.apache.tomcat.maven:tomcat6-maven-plugin:2.0:redeploy
> {code}
> From the Log file
> {code =xml}
> [INFO] --- maven-war-plugin:2.1.1:war (default-war) @ mobile-server ---
> [INFO] Packaging webapp
> [INFO] Assembling webapp [mobile-server] in
> [C:\develope\mobile\mobile-server\target\mobile-server]
> [INFO] Processing war project
> [INFO] Copying webapp resources
> [C:\develope\mobile\mobile-server\src\main\webapp]
> [INFO] Webapp assembled in [241 msecs]
> [INFO] Building war: C:\develope\mobile\mobile-server\target\mobile-server.war
> [INFO]
> [INFO] <<< tomcat6-maven-plugin:2.0:redeploy (default-cli) @ mobile-server <<<
> [INFO]
> [INFO] --- tomcat6-maven-plugin:2.0:redeploy (default-cli) @ mobile-server
> ---
> [INFO] Deploying war to http://myserver.eu/pra-mobile-server
> Uploading:
> http://myserver.eu/manager-test/deploy?path=%2Fmobile-server&update=true
> Uploaded:
> http://myserver.eu/manager-test/deploy?path=%2Fmobile-server&update=true
> (12678 KB at 49.3 KB/sec)
> Uploading:
> http://myserver.eu/manager-test/deploy?path=%2Fmobile-server&update=true
> Uploaded:
> http://myserver.eu/manager-test/deploy?path=%2Fmobile-server&update=true
> {code}
> <project xmlns="http://maven.apache.org/POM/4.0.0"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
> http://maven.apache.org/maven-v4_0_0.xsd">
> <modelVersion>4.0.0</modelVersion>
> <parent>
> <groupId>eu.company.prj.pramobile</groupId>
> <artifactId>mobile-parent</artifactId>
> <relativePath>../mobile-parent/pom.xml</relativePath>
> <version>1.0-SNAPSHOT</version>
> </parent>
> <artifactId>mobile-server</artifactId>
> <packaging>war</packaging>
> <name>mobile server</name>
> <properties>
> <version.standard.taglibs>1.1.2</version.standard.taglibs>
> </properties>
> <repositories>
> <repository>
> <id>com.springsource.repository.libs-milestone</id>
> <name>SpringSource Enterprise Bundle Repository - libs</name>
> <url>http://repo.springsource.org/libs-milestone/</url>
> </repository>
> </repositories>
> <dependencies>
> <dependency>
> <groupId>${project.groupId}</groupId>
> <artifactId>mobile-test</artifactId>
> <version>${project.version}</version>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>${project.groupId}</groupId>
> <artifactId>mobile-common</artifactId>
> <version>${project.version}</version>
> </dependency>
> <!-- Import Spring dependencies, these are either from community or
> versions
> certified in WFK2 -->
> <dependency>
> <groupId>org.springframework</groupId>
> <artifactId>spring-asm</artifactId>
> <version>${version.spring}</version>
> </dependency>
> <dependency>
> <groupId>org.springframework</groupId>
> <artifactId>spring-aop</artifactId>
> <version>${version.spring}</version>
> </dependency>
> <dependency>
> <groupId>org.springframework.security</groupId>
> <artifactId>spring-security-config</artifactId>
> <version>${version.spring}</version>
> </dependency>
> <dependency>
> <groupId>org.springframework</groupId>
> <artifactId>spring-web</artifactId>
> <version>${version.spring}</version>
> </dependency>
> <dependency>
> <groupId>org.springframework</groupId>
> <artifactId>spring-oxm</artifactId>
> <version>${version.spring}</version>
> </dependency>
> <dependency>
> <groupId>org.springframework</groupId>
> <artifactId>spring-webmvc</artifactId>
> <version>${version.spring}</version>
> </dependency>
> <dependency>
> <groupId>org.springframework.security</groupId>
> <artifactId>spring-security-web</artifactId>
> <version>${version.spring}</version>
> </dependency>
> <dependency>
> <groupId>commons-codec</groupId>
> <artifactId>commons-codec</artifactId>
> <version>1.7</version>
> </dependency>
> <dependency>
> <groupId>javax.servlet</groupId>
> <artifactId>jsp-api</artifactId>
> <version>2.0</version>
> <scope>provided</scope>
> </dependency>
> <dependency>
> <groupId>commons-io</groupId>
> <artifactId>commons-io</artifactId>
> <version>2.4</version>
> </dependency>
> <dependency>
> <groupId>commons-fileupload</groupId>
> <artifactId>commons-fileupload</artifactId>
> <version>1.2.2</version>
> </dependency>
> <dependency>
> <groupId>javax.servlet</groupId>
> <artifactId>servlet-api</artifactId>
> <version>2.5</version>
> <scope>provided</scope>
> </dependency>
> <dependency>
> <groupId>javax.servlet</groupId>
> <artifactId>jstl</artifactId>
> <version>1.1.2</version>
> <scope>provided</scope>
> </dependency>
> <dependency>
> <groupId>taglibs</groupId>
> <artifactId>standard</artifactId>
> <version>1.1.2</version>
> <scope>provided</scope>
> </dependency>
> <dependency>
> <groupId>commons-httpclient</groupId>
> <artifactId>commons-httpclient</artifactId>
> <version>3.1</version>
> </dependency>
> <dependency>
> <groupId>net.sf.ehcache</groupId>
> <artifactId>ehcache</artifactId>
> <version>1.6.1</version>
> </dependency>
> <dependency>
> <groupId>org.springmodules</groupId>
> <artifactId>spring-modules-cache</artifactId>
> <version>0.8a</version>
> <!-- Unfortunately design of spring cache module is not the best - we
> need to exclude not necessary dependencies -->
> <exclusions>
> <exclusion>
> <groupId>org.springframework</groupId>
> <artifactId>spring</artifactId>
> </exclusion>
> <exclusion>
> <groupId>gigaspaces</groupId>
> <artifactId>gigaspaces-ce</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jini</groupId>
> <artifactId>jsk-lib</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jini</groupId>
> <artifactId>jsk-platform</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jini</groupId>
> <artifactId>mahalo</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jini</groupId>
> <artifactId>reggie</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jini</groupId>
> <artifactId>start</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jini</groupId>
> <artifactId>boot</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jini</groupId>
> <artifactId>webster</artifactId>
> </exclusion>
> <exclusion>
> <groupId>commons-attributes</groupId>
> <artifactId>commons-attributes-api</artifactId>
> </exclusion>
> <exclusion>
> <groupId>commons-attributes</groupId>
> <artifactId>commons-attributes-compiler</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jboss</groupId>
> <artifactId>javassist</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jboss</groupId>
> <artifactId>jboss-cache</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jboss</groupId>
> <artifactId>jboss-common</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jboss</groupId>
> <artifactId>jboss-jmx</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jboss</groupId>
> <artifactId>jboss-minimal</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jboss</groupId>
> <artifactId>jboss-system</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jcs</groupId>
> <artifactId>jcs</artifactId>
> </exclusion>
> <exclusion>
> <groupId>jgroups</groupId>
> <artifactId>jgroups-all</artifactId>
> </exclusion>
> <exclusion>
> <groupId>geronimo-spec</groupId>
> <artifactId>geronimo-spec-jta</artifactId>
> </exclusion>
> <exclusion>
> <groupId>xpp3</groupId>
> <artifactId>xpp3_min</artifactId>
> </exclusion>
> <exclusion>
> <groupId>xjavadoc</groupId>
> <artifactId>xjavadoc</artifactId>
> </exclusion>
> <exclusion>
> <groupId>opensymphony</groupId>
> <artifactId>oscache</artifactId>
> </exclusion>
> <exclusion>
> <groupId>ehcache</groupId>
> <artifactId>ehcache</artifactId>
> </exclusion>
> </exclusions>
> </dependency>
> <dependency>
> <groupId>org.quartz-scheduler</groupId>
> <artifactId>quartz</artifactId>
> <version>${version.quartz}</version>
> </dependency>
> <dependency>
> <groupId>javax.mail</groupId>
> <artifactId>mail</artifactId>
> <version>1.4.5</version>
> </dependency>
> <dependency>
> <groupId>org.apache.commons</groupId>
> <artifactId>commons-lang3</artifactId>
> <version>3.1</version>
> </dependency>
> <!--mockito for test-->
> <dependency>
> <groupId>org.mockito</groupId>
> <artifactId>mockito-all</artifactId>
> <version>1.9.5</version>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.kubek2k</groupId>
> <artifactId>springockito</artifactId>
> <version>1.0.4</version>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.kubek2k</groupId>
> <artifactId>springockito-annotations</artifactId>
> <version>1.0.5</version>
> <scope>test</scope>
> </dependency>
> <!--testing MVC controllers-->
> <dependency>
> <groupId>org.springframework</groupId>
> <artifactId>spring-test-mvc</artifactId>
> <version>1.0.0.M2</version>
> <scope>test</scope>
> </dependency>
> <dependency>
> <groupId>org.springframework</groupId>
> <artifactId>spring-context</artifactId>
> <version>3.1.0.RELEASE</version>
> </dependency>
> </dependencies>
> <build>
> <finalName>mobile-server</finalName>
> <plugins>
> <plugin>
> <groupId>org.mortbay.jetty</groupId>
> <artifactId>maven-jetty-plugin</artifactId>
> <version>6.1.10</version>
> <configuration>
>
> <jettyEnvXml>${basedir}/src/test/resources/jetty-env.xml</jettyEnvXml>
> <!-- Solves locked problem for JSP while jetty is running -->
>
> <webDefaultXml>src/test/resources/webdefault.xml</webDefaultXml>
> <stopKey>0</stopKey>
> <stopPort>8001</stopPort>
> <scanIntervalSeconds>5</scanIntervalSeconds>
> <systemProperties>
> <systemProperty>
> <name>org.apache.commons.logging.Log</name>
>
> <value>org.apache.commons.logging.impl.SimpleLog</value>
> </systemProperty>
> <systemProperty>
> <name>log4j.configurationFile</name>
>
> <value>file:${project.basedir}/src/main/resources/log4j.xml</value>
> </systemProperty>
> </systemProperties>
> </configuration>
> <dependencies>
> <dependency>
> <groupId>mysql</groupId>
> <artifactId>mysql-connector-java</artifactId>
> <version>5.1.9</version>
> </dependency>
> </dependencies>
> </plugin>
> <!-- Surefire plugin before 2.9 version is buggy -->
> <plugin>
> <artifactId>maven-surefire-plugin</artifactId>
> <version>2.10</version>
> <configuration>
> <parallel>true</parallel>
> <threadCount>10</threadCount>
> <systemPropertyVariables>
> <java.awt.headless>true</java.awt.headless>
> </systemPropertyVariables>
> </configuration>
> </plugin>
> <plugin>
> <artifactId>maven-war-plugin</artifactId>
> <version>2.1.1</version>
> <!--to avoid maven error message-->
> <configuration>
> <packagingExcludes>WEB-INF/web.xml</packagingExcludes>
> </configuration>
> </plugin>
> <!--import objects from schema generation-->
> <plugin>
> <groupId>org.codehaus.mojo</groupId>
> <artifactId>jaxb2-maven-plugin</artifactId>
> <version>1.5</version>
> <executions>
> <execution>
> <goals>
> <goal>xjc</goal>
> </goals>
> </execution>
> </executions>
> <configuration>
> <encoding>UTF-8</encoding>
> <extension>true</extension>
>
> <packageName>eu.company.prj.pra.mobile.server.generated.place1</packageName>
>
> <schemaDirectory>src/main/resources/META-INF/schema</schemaDirectory>
> <outputDirectory>${basedir}/src/main/java/</outputDirectory>
> <failOnNoSchemas>true</failOnNoSchemas>
> <clearOutputDir>false</clearOutputDir>
> </configuration>
> </plugin>
> <!-- mvn tomcat plugin alternative - run -->
> <plugin>
> <groupId>org.apache.tomcat.maven</groupId>
> <artifactId>tomcat6-maven-plugin</artifactId>
> <version>2.0</version>
> <configuration>
>
> <systemProperties>-Dmaven.tomcat.uriEncoding=UTF-8</systemProperties>
> <url>${tomcat-maven-plugin.url}</url>
> <username>${tomcat-maven-plugin.username}</username>
> <password>${tomcat-maven-plugin.password}</password>
> </configuration>
> </plugin>
> <!-- mvn tomcat plugin alternative - run -->
> <!--<plugin>-->
> <!--<groupId>org.codehaus.mojo</groupId>-->
> <!--<artifactId>tomcat-maven-plugin</artifactId>-->
> <!--<configuration>-->
>
> <!--<contextFile>${basedir}/src/test/resources/tomcat-context.xml</contextFile>-->
> <!--<url>${tomcat-maven-plugin.url}</url>-->
> <!--<username>${tomcat-maven-plugin.username}</username>-->
> <!--<password>${tomcat-maven-plugin.password}</password>-->
> <!--</configuration>-->
> <!--<dependencies>-->
> <!--<dependency>-->
> <!--<groupId>mysql</groupId>-->
> <!--<artifactId>mysql-connector-java</artifactId>-->
> <!--<version>5.1.9</version>-->
> <!--</dependency>-->
> <!--</dependencies>-->
> <!--</plugin>-->
> </plugins>
> </build>
> {code}
> Parent pom:
> {code}
> <groupId>eu.company.prj.mobile</groupId>
> <artifactId>mobile-parent</artifactId>
> <version>1.0-SNAPSHOT</version>
> <packaging>pom</packaging>
> <name>mobile project parent</name>
> <properties>
> <version.spring>3.1.1.RELEASE</version.spring>
> <version.jackson>1.9.11</version.jackson>
> <version.commons.logging>1.1.1</version.commons.logging>
> <version.quartz>2.1.6</version.quartz>
> <slf4j.version>1.5.8</slf4j.version>
> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
> </properties>
> <build>
> <plugins>
> <!-- Force Java 6 -->
> <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-compiler-plugin</artifactId>
> <version>2.3.1</version>
> <configuration>
> <encoding>${project.build.sourceEncoding}</encoding>
> <source>1.6</source>
> <target>1.6</target>
> </configuration>
> </plugin>
> </plugins>
> </build>
> <profiles>
> just properties with u/p ...
> </profiles>
> {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: [email protected]
For additional commands, e-mail: [email protected]