Uploaded image for project: 'Maven'
  1. Maven
  2. MNG-4365

XmlPullParserException while parsing XML with encoded entities within attributes

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 3.0-alpha-2
    • Fix Version/s: 3.0-alpha-3
    • Component/s: POM
    • Labels:
      None
    • Environment:
      jdk 1.5.0_11

      Description

      Problems parsing encoded XML entities within XML attributes.

      Example: Plugin with following configuration leads to following Exception

      <configuration>
      <tasks>
      <filter token="CLIENT-LOCALE-START" value="<!--" />
      </tasks>
      </configuration>

      Exception:

      java.io.IOException: org.codehaus.plexus.util.xml.pull.XmlPullParserException: markup not allowed inside attribute value - illegal < (position: TEXT seen ...<filter value="<... @15:17) :

      <project>
      <modelVersion>4.0.0</modelVersion>
      <groupId>test</groupId>
      <artifactId>Parent</artifactId>
      <packaging>pom</packaging>
      <version>0.0.1-SNAPSHOT</version>
      <build>
      <plugins>
      <plugin>
      <executions>
      <execution>
      <configuration>
      <tasks>
      <filter value="<!--" token="CLIENT-LOCALE-START" ></filter></tasks></configuration>
      <phase>package</phase>
      <goals>
      <goal>run</goal></goals>
      <id>filter-jnlp-file</id></execution></executions>
      <version>1.1</version>
      <artifactId>maven-antrun-plugin</artifactId></plugin></plugins>
      <sourceDirectory>C:\DOKUME~1\imm0136\LOKALE~1\Temp\src\main\java</sourceDirectory>
      <scriptSourceDirectory>src\main\scripts</scriptSourceDirectory>
      <testSourceDirectory>C:\DOKUME~1\imm0136\LOKALE~1\Temp\src\test\java</testSourceDirectory>
      <outputDirectory>C:\DOKUME~1\imm0136\LOKALE~1\Temp\target\classes</outputDirectory>
      <testOutputDirectory>C:\DOKUME~1\imm0136\LOKALE~1\Temp\target\test-classes</testOutputDirectory>
      <resources>
      <resource>
      <directory>C:\DOKUME~1\imm0136\LOKALE~1\Temp\src\main\resources</directory></resource></resources>
      <testResources>
      <testResource>
      <directory>C:\DOKUME~1\imm0136\LOKALE~1\Temp\src\test\resources</directory></testResource></testResources>
      <directory>C:\DOKUME~1\imm0136\LOKALE~1\Temp\target</directory>
      <finalName>Parent-0.0.1-SNAPSHOT</finalName>
      <pluginManagement>
      <plugins>
      <plugin>
      <artifactId>maven-antrun-plugin</artifactId>
      <version>1.1</version></plugin>
      <plugin>
      <artifactId>maven-assembly-plugin</artifactId>
      <version>2.2-beta-1</version></plugin>
      <plugin>
      <artifactId>maven-clean-plugin</artifactId>
      <version>2.2</version></plugin>
      <plugin>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>2.0.2</version></plugin>
      <plugin>
      <artifactId>maven-dependency-plugin</artifactId>
      <version>2.0</version></plugin>
      <plugin>
      <artifactId>maven-deploy-plugin</artifactId>
      <version>2.3</version></plugin>
      <plugin>
      <artifactId>maven-ear-plugin</artifactId>
      <version>2.3.1</version></plugin>
      <plugin>
      <artifactId>maven-ejb-plugin</artifactId>
      <version>2.1</version></plugin>
      <plugin>
      <artifactId>maven-install-plugin</artifactId>
      <version>2.2</version></plugin>
      <plugin>
      <artifactId>maven-jar-plugin</artifactId>
      <version>2.2</version></plugin>
      <plugin>
      <artifactId>maven-javadoc-plugin</artifactId>
      <version>2.4</version></plugin>
      <plugin>
      <artifactId>maven-plugin-plugin</artifactId>
      <version>2.4.2</version></plugin>
      <plugin>
      <artifactId>maven-rar-plugin</artifactId>
      <version>2.2</version></plugin>
      <plugin>
      <artifactId>maven-release-plugin</artifactId>
      <version>2.0-beta-7</version></plugin>
      <plugin>
      <artifactId>maven-resources-plugin</artifactId>
      <version>2.2</version></plugin>
      <plugin>
      <artifactId>maven-site-plugin</artifactId>
      <version>2.0-beta-7</version></plugin>
      <plugin>
      <artifactId>maven-source-plugin</artifactId>
      <version>2.0.4</version></plugin>
      <plugin>
      <artifactId>maven-surefire-plugin</artifactId>
      <version>2.4.3</version></plugin>
      <plugin>
      <artifactId>maven-war-plugin</artifactId>
      <version>2.1-alpha-1</version></plugin></plugins></pluginManagement></build>
      <repositories>
      <repository>
      <snapshots>
      <enabled>false</enabled></snapshots>
      <id>central</id>
      <name>Maven Repository Switchboard</name>
      <url>http://repo1.maven.org/maven2</url></repository></repositories>
      <pluginRepositories>
      <pluginRepository>
      <releases>
      <updatePolicy>never</updatePolicy></releases>
      <snapshots>
      <enabled>false</enabled></snapshots>
      <id>central</id>
      <name>Maven Plugin Repository</name>
      <url>http://repo1.maven.org/maven2</url></pluginRepository></pluginRepositories>
      <reporting>
      <outputDirectory>C:\DOKUME~1\imm0136\LOKALE~1\Temp\target\site</outputDirectory></reporting></project>
      at org.apache.maven.project.builder.PomClassicDomainModelFactory.createDomainModel(PomClassicDomainModelFactory.java:26)
      at org.apache.maven.project.builder.PomTransformer.transformToDomainModel(PomTransformer.java:458)
      at org.apache.maven.shared.model.ModelTransformerContext.transform(ModelTransformerContext.java:287)
      at org.apache.maven.project.builder.impl.DefaultProjectBuilder.buildModel(DefaultProjectBuilder.java:162)
      at org.apache.maven.project.builder.impl.DefaultProjectBuilder.buildFromLocalPath(DefaultProjectBuilder.java:182)
      at org.apache.maven.project.DefaultMavenProjectBuilder.readModelFromLocalPath(DefaultMavenProjectBuilder.java:397)
      at org.apache.maven.project.DefaultMavenProjectBuilder.build(DefaultMavenProjectBuilder.java:130)
      at org.apache.maven.embedder.MavenEmbedder.readProject(MavenEmbedder.java:347)
      at org.apache.maven.embedder.MavenEmbedder.readProject(MavenEmbedder.java:339)
      at de.visualrules.artifact.core.ModelReaderTest.testRead(ModelReaderTest.java:43)
      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:585)
      at junit.framework.TestCase.runTest(TestCase.java:164)
      at junit.framework.TestCase.runBare(TestCase.java:130)
      at junit.framework.TestResult$1.protect(TestResult.java:106)
      at junit.framework.TestResult.runProtected(TestResult.java:124)
      at junit.framework.TestResult.run(TestResult.java:109)
      at junit.framework.TestCase.run(TestCase.java:120)
      at junit.framework.TestSuite.runTest(TestSuite.java:230)
      at junit.framework.TestSuite.run(TestSuite.java:225)
      at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
      at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)

        Attachments

        1. ModelReaderTest.java
          2 kB
          Bernd Mathiske

          Activity

            People

            • Assignee:
              bentmann Benjamin Bentmann
              Reporter:
              bernd Bernd Mathiske
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: