Author: ltheussl Date: Mon May 1 11:08:53 2006 New Revision: 398659 URL: http://svn.apache.org/viewcvs?rev=398659&view=rev Log: PR: MPWAR-37 Submitted by: Troy Poppe Reviewed by: Stephane Nicoll Added ability to expand properties when copying war resources.
Added: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/ maven/maven-1/plugins/trunk/war/src/plugin-test/test03/LICENSE.txt (with props) maven/maven-1/plugins/trunk/war/src/plugin-test/test03/maven.xml (with props) maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.properties (with props) maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.xml (with props) maven/maven-1/plugins/trunk/war/src/plugin-test/test03/src/ maven/maven-1/plugins/trunk/war/src/plugin-test/test03/src/webapp/ maven/maven-1/plugins/trunk/war/src/plugin-test/test03/src/webapp/index.html (with props) maven/maven-1/plugins/trunk/war/src/plugin-test/test04/ maven/maven-1/plugins/trunk/war/src/plugin-test/test04/LICENSE.txt (with props) maven/maven-1/plugins/trunk/war/src/plugin-test/test04/maven.xml (with props) maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.properties (with props) maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.xml (with props) maven/maven-1/plugins/trunk/war/src/plugin-test/test04/src/ maven/maven-1/plugins/trunk/war/src/plugin-test/test04/src/webapp/ maven/maven-1/plugins/trunk/war/src/plugin-test/test04/src/webapp/index.html (with props) Modified: maven/maven-1/plugins/trunk/war/plugin.jelly maven/maven-1/plugins/trunk/war/plugin.properties maven/maven-1/plugins/trunk/war/xdocs/changes.xml maven/maven-1/plugins/trunk/war/xdocs/properties.xml Modified: maven/maven-1/plugins/trunk/war/plugin.jelly URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/plugin.jelly?rev=398659&r1=398658&r2=398659&view=diff ============================================================================== --- maven/maven-1/plugins/trunk/war/plugin.jelly (original) +++ maven/maven-1/plugins/trunk/war/plugin.jelly Mon May 1 11:08:53 2006 @@ -117,6 +117,11 @@ includes="${maven.war.src.includes}" excludes="${maven.war.src.excludes}"> </ant:fileset> + <j:if test="${maven.war.property.expansion}" > + <ant:filterchain> + <ant:expandproperties/> + </ant:filterchain> + </j:if> </ant:copy> </j:if> Modified: maven/maven-1/plugins/trunk/war/plugin.properties URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/plugin.properties?rev=398659&r1=398658&r2=398659&view=diff ============================================================================== --- maven/maven-1/plugins/trunk/war/plugin.properties (original) +++ maven/maven-1/plugins/trunk/war/plugin.properties Mon May 1 11:08:53 2006 @@ -31,6 +31,10 @@ maven.war.src.includes=** maven.war.src.excludes= +# Whether to perform property expansion for +# copied resources. +maven.war.property.expansion=false + # Location of web.xml file maven.war.webxml=${maven.war.src}/WEB-INF/web.xml Added: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/LICENSE.txt URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/src/plugin-test/test03/LICENSE.txt?rev=398659&view=auto ============================================================================== --- maven/maven-1/plugins/trunk/war/src/plugin-test/test03/LICENSE.txt (added) +++ maven/maven-1/plugins/trunk/war/src/plugin-test/test03/LICENSE.txt Mon May 1 11:08:53 2006 @@ -0,0 +1 @@ +Sample license \ No newline at end of file Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/LICENSE.txt ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/LICENSE.txt ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/maven.xml URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/src/plugin-test/test03/maven.xml?rev=398659&view=auto ============================================================================== --- maven/maven-1/plugins/trunk/war/src/plugin-test/test03/maven.xml (added) +++ maven/maven-1/plugins/trunk/war/src/plugin-test/test03/maven.xml Mon May 1 11:08:53 2006 @@ -0,0 +1,38 @@ +<!-- +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + --> +<project xmlns:j="jelly:core" + xmlns:assert="assert" + xmlns:u="jelly:util"> + + <goal name="testPlugin" prereqs="test-war"/> + + <goal name="test-war" prereqs="clean"> + <attainGoal name="war"/> + <j:set var="warFile" value="${maven.build.dir}/${pom.artifactId}.war"/> + <j:set var="warDir" value="${maven.build.dir}/${pom.artifactId}"/> + <assert:assertFileExists file="${warFile}"/> + <assert:assertFileExists file="${warDir}/WEB-INF/lib/commons-logging-1.0.4.jar"/> + + <!-- check for index.html content--> + <j:set var="unzipDir" value="${maven.build.dir}/unzippedWar"/> + <mkdir dir="${unzipDir}"/> + <unzip src="${warFile}" dest="${unzipDir}"/> + + <assert:assertFileContains file="${unzipDir}/index.html" match="pom.artifactId"/> + </goal> +</project> \ No newline at end of file Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/maven.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/maven.xml ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.properties URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.properties?rev=398659&view=auto ============================================================================== --- maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.properties (added) +++ maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.properties Mon May 1 11:08:53 2006 @@ -0,0 +1 @@ +maven.war.property.expansion=true Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.properties ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.properties ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.xml URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.xml?rev=398659&view=auto ============================================================================== --- maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.xml (added) +++ maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.xml Mon May 1 11:08:53 2006 @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + --> + + +<project> + <pomVersion>3</pomVersion> + <id>test-maven-war-plugin-expand-properties-false</id> + <name>Maven War Plugin 03</name> + <groupId>maven</groupId> + <currentVersion>1.0</currentVersion> + <organization> + <name>Apache Software Foundation</name> + <url>http://www.apache.org/</url> + <logo>http://maven.apache.org/images/apache-maven-project.png</logo> + </organization> + <inceptionYear>2001</inceptionYear> + <package>org.apache.maven</package> + <logo>http://maven.apache.org/images/maven.gif</logo> + <description>Test for Maven War plugin, tests maven.war.property.expansion if false</description> + <shortDescription>test for maven.war.property.expansion</shortDescription> + <url>http://maven.apache.org/maven-1.x/plugins/war/</url> + <siteDirectory>/www/maven.apache.org/maven-1.x/plugins/war/</siteDirectory> + <repository> + <connection>scm:svn:http://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/war/</connection> + <url>http://svn.apache.org/viewcvs.cgi/maven/maven-1/plugins/trunk/war/</url> + </repository> + <dependencies> + <dependency> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + <version>1.0.4</version> + <url>http://jakarta.apache.org/commons/logging.html</url> + <properties> + <war.bundle>true</war.bundle> + <war.manifest.classpath>true</war.manifest.classpath> + </properties> + </dependency> + </dependencies> +</project> Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/project.xml ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/src/webapp/index.html URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/src/plugin-test/test03/src/webapp/index.html?rev=398659&view=auto ============================================================================== --- maven/maven-1/plugins/trunk/war/src/plugin-test/test03/src/webapp/index.html (added) +++ maven/maven-1/plugins/trunk/war/src/plugin-test/test03/src/webapp/index.html Mon May 1 11:08:53 2006 @@ -0,0 +1,25 @@ +<!-- +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + --> +<html> + <body> + <h1>Simple WebApp Home</h1> + <p> + This is a html page for ${pom.artifactId} + </p> + </body> +</html> \ No newline at end of file Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/src/webapp/index.html ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test03/src/webapp/index.html ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/LICENSE.txt URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/src/plugin-test/test04/LICENSE.txt?rev=398659&view=auto ============================================================================== --- maven/maven-1/plugins/trunk/war/src/plugin-test/test04/LICENSE.txt (added) +++ maven/maven-1/plugins/trunk/war/src/plugin-test/test04/LICENSE.txt Mon May 1 11:08:53 2006 @@ -0,0 +1 @@ +Sample license \ No newline at end of file Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/LICENSE.txt ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/LICENSE.txt ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/maven.xml URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/src/plugin-test/test04/maven.xml?rev=398659&view=auto ============================================================================== --- maven/maven-1/plugins/trunk/war/src/plugin-test/test04/maven.xml (added) +++ maven/maven-1/plugins/trunk/war/src/plugin-test/test04/maven.xml Mon May 1 11:08:53 2006 @@ -0,0 +1,39 @@ +<!-- +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + --> +<project xmlns:j="jelly:core" + xmlns:assert="assert" + xmlns:u="jelly:util"> + + <goal name="testPlugin" prereqs="test-war"/> + + <goal name="test-war" prereqs="clean"> + <attainGoal name="war"/> + <j:set var="warFile" value="${maven.build.dir}/${pom.artifactId}.war"/> + <j:set var="warDir" value="${maven.build.dir}/${pom.artifactId}"/> + <assert:assertFileExists file="${warFile}"/> + <assert:assertFileExists file="${warDir}/WEB-INF/lib/commons-logging-1.0.4.jar"/> + + <!-- check for index.html content--> + <j:set var="unzipDir" value="${maven.build.dir}/unzippedWar"/> + <mkdir dir="${unzipDir}"/> + <unzip src="${warFile}" dest="${unzipDir}"/> + + <assert:assertFileContains file="${unzipDir}/index.html" + match="test-maven-war-plugin-expand-properties-true"/> + </goal> +</project> \ No newline at end of file Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/maven.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/maven.xml ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.properties URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.properties?rev=398659&view=auto ============================================================================== --- maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.properties (added) +++ maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.properties Mon May 1 11:08:53 2006 @@ -0,0 +1,8 @@ + +# +# Expand properties +maven.war.property.expansion=true + +# +# Property being replaced +my.cool.property=${pom.artifactId} Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.properties ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.properties ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.xml URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.xml?rev=398659&view=auto ============================================================================== --- maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.xml (added) +++ maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.xml Mon May 1 11:08:53 2006 @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + --> + + +<project> + <pomVersion>3</pomVersion> + <id>test-maven-war-plugin-expand-properties-true</id> + <name>Maven War Plugin 04</name> + <groupId>maven</groupId> + <currentVersion>1.0</currentVersion> + <organization> + <name>Apache Software Foundation</name> + <url>http://www.apache.org/</url> + <logo>http://maven.apache.org/images/apache-maven-project.png</logo> + </organization> + <inceptionYear>2001</inceptionYear> + <package>org.apache.maven</package> + <logo>http://maven.apache.org/images/maven.gif</logo> + <description>Test for Maven War plugin, tests maven.war.property.expansion if true</description> + <shortDescription>test for maven.war.property.expansion</shortDescription> + <url>http://maven.apache.org/maven-1.x/plugins/war/</url> + <siteDirectory>/www/maven.apache.org/maven-1.x/plugins/war/</siteDirectory> + <repository> + <connection>scm:svn:http://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk/war/</connection> + <url>http://svn.apache.org/viewcvs.cgi/maven/maven-1/plugins/trunk/war/</url> + </repository> + <dependencies> + <dependency> + <groupId>commons-logging</groupId> + <artifactId>commons-logging</artifactId> + <version>1.0.4</version> + <url>http://jakarta.apache.org/commons/logging.html</url> + <properties> + <war.bundle>true</war.bundle> + <war.manifest.classpath>true</war.manifest.classpath> + </properties> + </dependency> + </dependencies> +</project> Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/project.xml ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/src/webapp/index.html URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/src/plugin-test/test04/src/webapp/index.html?rev=398659&view=auto ============================================================================== --- maven/maven-1/plugins/trunk/war/src/plugin-test/test04/src/webapp/index.html (added) +++ maven/maven-1/plugins/trunk/war/src/plugin-test/test04/src/webapp/index.html Mon May 1 11:08:53 2006 @@ -0,0 +1,25 @@ +<!-- +/* + * Copyright 2001-2004 The Apache Software Foundation. + * + * Licensed 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. + */ + --> +<html> + <body> + <h1>Simple WebApp Home</h1> + <p> + This is a html page for ${my.cool.property} + </p> + </body> +</html> \ No newline at end of file Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/src/webapp/index.html ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/maven-1/plugins/trunk/war/src/plugin-test/test04/src/webapp/index.html ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Modified: maven/maven-1/plugins/trunk/war/xdocs/changes.xml URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/xdocs/changes.xml?rev=398659&r1=398658&r2=398659&view=diff ============================================================================== --- maven/maven-1/plugins/trunk/war/xdocs/changes.xml (original) +++ maven/maven-1/plugins/trunk/war/xdocs/changes.xml Mon May 1 11:08:53 2006 @@ -25,6 +25,7 @@ </properties> <body> <release version="1.6.2-SNAPSHOT" date="in SVN"> + <action dev="snicoll" type="update" issue="MPWAR-37" due-to="Troy Poppe">Added ability to expand properties when copying war resources.</action> <action dev="snicoll" type="update" issue="MPWAR-39">Updated wrong documentation regarding web.xml filtering.</action> <action dev="snicoll" type="update" issue="MPWAR-46">Now filtering when copying resources.</action> <action dev="snicoll" type="add" issue="MPWAR-52">Added property <code>maven.war.webxml.overwrite</code> to control if the source web.xml overwrite the one in the generated webapp directory.</action> Modified: maven/maven-1/plugins/trunk/war/xdocs/properties.xml URL: http://svn.apache.org/viewcvs/maven/maven-1/plugins/trunk/war/xdocs/properties.xml?rev=398659&r1=398658&r2=398659&view=diff ============================================================================== --- maven/maven-1/plugins/trunk/war/xdocs/properties.xml (original) +++ maven/maven-1/plugins/trunk/war/xdocs/properties.xml Mon May 1 11:08:53 2006 @@ -60,6 +60,14 @@ </td> </tr> <tr> + <td>maven.war.property.expansion</td> + <td>Yes</td> + <td> + Whether to perform property expansion for copied + resources. Default to false. + </td> + </tr> + <tr> <td>maven.war.webxml</td> <td>Yes</td> <td>