You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Andrew Williams (JIRA)" <ji...@codehaus.org> on 2009/12/07 22:46:55 UTC
[jira] Commented: (MRESOURCES-110) escapeString is broken - break
filtered output
[ http://jira.codehaus.org/browse/MRESOURCES-110?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=201613#action_201613 ]
Andrew Williams commented on MRESOURCES-110:
--------------------------------------------
Yes, it strips the next character if the escapeString is not followed by a filter character.
Very annoying!
> escapeString is broken - break filtered output
> ----------------------------------------------
>
> Key: MRESOURCES-110
> URL: http://jira.codehaus.org/browse/MRESOURCES-110
> Project: Maven 2.x Resources Plugin
> Issue Type: Bug
> Affects Versions: 2.4, 2.4.1
> Environment: Maven 2.0.9, WinXP
> Reporter: Marco Rothe
> Priority: Critical
>
> If the escapeString parameter is specified in plugin configuration this will break the filtered output.
> For example the configuration
> <plugin>
> <artifactId>maven-resources-plugin</artifactId>
> <version>2.4.1</version>
> <configuration>
> <escapeString>!</escapeString>
> </configuration>
> </plugin>
> an file to filter (an XML file)
> <?xml version="1.0" encoding="UTF-8"?>
> <root>
> <!-- This is a comment ... until filtering ... -->
> <broken-tag>Why are my !\${\}\! static.content broken if the escapeString occure ?!?</broken-tag>
> <broken-tag>Content with replacement: ${replaceThis} !</broken-tag>
> <broken-tag>Content with escaped replacement: Do not !${replaceThis} !</broken-tag>
> </root>
> and a property
> <properties>
> <replaceThis>I am the replacement</replaceThis>
> </properties>
> from pom or profile.xml
> result in
> <?xml version="1.0" encoding="UTF-8"?>
> <root>
> <!- This is a comment ... until filtering ... -->
> <broken-tag>Why are my !${\}\!static.content broken if the escapeString occure ?!</broken-tag>
> <broken-tag>Content with replacement: I am the replacement !/broken-tag>
> <broken-tag>Content with escaped replacement: Do not ${replaceThis} !/broken-tag>
> </root>
> Note the broken comment and tags!
> If using Resources-Plugin 2.3 the output is like expected:
> <?xml version="1.0" encoding="UTF-8"?>
> <root>
> <!-- This is a comment ... until filtering ... -->
> <broken-tag>Why are my !\${\}\! static.content broken if the escapeString occure ?!?</broken-tag>
> <broken-tag>Content with replacement: I am the replacement !</broken-tag>
> <broken-tag>Content with escaped replacement: Do not ${replaceThis} !</broken-tag>
> </root>
> Got even worse when using a complex escape string like <escapeString>static</escapeString> (I know it's a silly example ;)). The result is
> <?xml version=".0" encoding="UTF-8"?>
> <root>
> <!-- This is acomment ... until filtering ... -->
> <broken-tag>Why are my !\${\}\! staticcontent broken if the escapeSring occure ?!?</broken-tag>
> <broken-tag>Content with replacement: I am the replacement !</broken-tag>
> <broken-tag>Content with escapedreplacement: Do not !I am the replacement !</broken-tag>
> </root>
> Note the missing characters all over the file ... :-/
> So the actual state of the escapeString feature is unpredictable and nearly useless.
--
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