Antrun double decodes xml escapes
---------------------------------

                 Key: MANTRUN-154
                 URL: http://jira.codehaus.org/browse/MANTRUN-154
             Project: Maven 2.x Antrun Plugin
          Issue Type: Bug
    Affects Versions: 1.5
         Environment: Maven 2.1.0; JDK 1.6.0_16; Windows 7
            Reporter: Richard Atkins


If the contents of the antrun tasks or target element contain xml entities 
escaping xml characters, those entities are decoded before antrun attempts to 
pass the contents on to the ant parser. This will then cause errors when the 
ant parser attempts to parse the contents.

This is known not to happen in antrun 1.4 or earlier, and it should be fixed to 
work like it used to.

For example:
{code:xml}
<project>
...
    <build>
        <plugins>
            ...
            <plugin>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.5</version>
                <executions>
                    <execution>
                        <id>doit</id>
                        <phase>validate</phase>
                        <configuration>
                            <tasks>
                                <exec executable="echo">
                                    <arg line="Some &quot;strange and 
mysterious&quot; result" />
                                </exec>
                            </tasks>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>
{code}
will get the error:
{noformat}
[INFO] An Ant BuildException has occured: Element type "arg" must be followed 
by either attribute specifications, ">" or "/>".
{noformat}

Full stack trace:
{code}
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: An Ant BuildException 
has occured: Element type "arg" must be fo
llowed by either attribute specifications, ">" or "/>".
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:703)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:54
0)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:519)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.jav
a:371)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:332)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:356)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoExecutionException: An Ant 
BuildException has occured: Element type "arg" must be
 followed by either attribute specifications, ">" or "/>".
        at 
org.apache.maven.plugin.antrun.AntRunMojo.execute(AntRunMojo.java:278)
        at 
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:483)
        at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:678)
        ... 16 more
Caused by: C:\work\src\scratch\runcheck\target\antrun\build-main.xml:5: Element 
type "arg" must be followed by either at
tribute specifications, ">" or "/>".
        at 
org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:310)
        at 
org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:177)
        at 
org.apache.tools.ant.ProjectHelper.configureProject(ProjectHelper.java:82)
        at 
org.apache.maven.plugin.antrun.AntRunMojo.execute(AntRunMojo.java:222)
        ... 18 more
Caused by: org.xml.sax.SAXParseException: Element type "arg" must be followed 
by either attribute specifications, ">" or
 "/>".
        at 
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:
195)
        at 
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174)
        at 
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388)
        at 
com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1414)
        at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.seekCloseOfStartTag(XMLDocumentFragmen
tScannerImpl.java:1391)
        at 
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.ja
va:285)
        at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocument
FragmentScannerImpl.java:2747)
        at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
        at 
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
        at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScanne
rImpl.java:510)
        at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
        at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
        at 
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
        at 
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
        at 
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
        at 
org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:297)
        ... 21 more
{code}


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