Filtering resource don't work as expected
-----------------------------------------

                 Key: MWAR-200
                 URL: http://jira.codehaus.org/browse/MWAR-200
             Project: Maven 2.x WAR Plugin
          Issue Type: Bug
    Affects Versions: 2.1-beta-1, 2.1-alpha-1
         Environment: windows and unix
            Reporter: hugo lassiege
         Attachments: toto.txt

Hi,

I try to use maven war plugin and cargo however I have a problem with 
maven-war-plugin and the filtering.
I tried with 2.1-beta-1 and alpha1

My configuration for the maven-war-plugin is the following :

{code:xml}
                        <!-- pour tout les projets d'intégration, il faut 
ajouter un fichier context.xml qui sera filtré -->    
                <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
                        <version>2.1-beta-1</version>
            <configuration>
                <webResources>
                    <resource>
                        
<directory>${basedir}/src/main/webapp/META-INF</directory>
                        <filtering>true</filtering>
                        <includes>
                            <include>context.xml</include>
                        </includes>
                        <targetPath>META-INF/</targetPath>
                    </resource>
                </webResources>
            </configuration>
        </plugin>  
{code}

My goal is to filter the context.xml to modify the name of the datasource

My context.xml unfiltered is :

{code:xml}
<!-- Context configuration file for the Webintake services -->
<Context path="/myWebapp" debug="0" privileged="true" reloadable="false">
        <Resource auth="Container" name="jdbc/DATABASEHTTP" 
factory="org.apache.commons.dbcp.BasicDataSourceFactory"
                type="javax.sql.DataSource" 
driverClassName="${connection.driver_class}"
                url="${connection.url}" username="${connection.username}" 
password="${connection.password}" maxActive="50" maxIdle="2"
                maxWait="10000" />
</Context>
{code}

I use mvn clean install to launch the build
In DEBUG mode I have :

{code}
[DEBUG] Configuring mojo 
'org.apache.maven.plugins:maven-war-plugin:2.1-alpha-1:war' -->
[DEBUG]   (f) addDefaultSpecificationEntries = true
[DEBUG]   (f) addDefaultImplementationEntries = true
[DEBUG]   (s) manifest = org.apache.maven.archiver.manifestconfigurat...@1d50fd2
[DEBUG]   (f) archive = 
org.apache.maven.archiver.mavenarchiveconfigurat...@101ac1c
[DEBUG]   (s) archiveClasses = true
[DEBUG]   (s) cacheFile = 
E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration\target\war\work\webapp-cache.xml
[DEBUG]   (s) classesDirectory = 
E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration\target\classes
[DEBUG]   (s) filters = []
[DEBUG]   (f) outputDirectory = 
E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration\target
[DEBUG]   (f) primaryArtifact = true
[DEBUG]   (s) project = MavenProject: 
fr.sgf.wit:webintake-security-integration:3.5.0-alpha3-SNAPSHOT @ 
E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration\pom.xml
[DEBUG]   (s) useCache = true
[DEBUG]   (f) warName = webintake-security-integration-3.5.0-alpha3-SNAPSHOT
[DEBUG]   (s) warSourceDirectory = 
E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration\src\main\webapp
[DEBUG]   (s) directory = 
E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration/src/main/webapp/META-INF
[DEBUG]   (s) filtering = true
[DEBUG]   (s) includes = [context.xml]
[DEBUG]   (s) targetPath = META-INF/
[DEBUG]   (s) webResources = [Resource {targetPath: META-INF/, filtering: true, 
FileSet {directory: 
E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration/src/main/webapp/META-INF,
 PatternSet [includes: {context.xml}, excludes: {}]}}]
[DEBUG]   (s) webappDirectory = 
E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration\target\webintake-security-integration-3.5.0-alpha3-SNAPSHOT
[DEBUG]   (s) workDirectory = 
E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration\target\war\work
[DEBUG] -- end configuration --
[INFO] [war:war]
[INFO] Packaging webapp
[INFO] Assembling webapp[webintake-security-integration] in 
[E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration\target\webintake-security-integration-3.5.0-alpha3-SNAPSHOT]
[INFO] Processing war project
[INFO] Copy webapp 
webResources[E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration/src/main/webapp/META-INF]
 
to[E:\Developpement\checkout\webintakeTrunk\webintake-security\webintake-security-integration\target\webintake-security-integration-3.5.0-alpha3-SNAPSHOT]
[DEBUG]  + META-INF/\context.xml has been copied.
[DEBUG]  + META-INF/context.xml has been copied.
{code}

So the filtering is active and the context.xml is copied as expected but not 
filtered !
The file is not modified, I still have the variable not filtered.

If I make mvn install (removing the clean) it works the second time, I guess 
the file is read from the right place the second time ?

I attached the mvn command with option -X  



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to