{"record":{"id":"239dc90659058af8","repo":"apache/maven","slug":"unable-to-parse-xml","errorCode":null,"errorMessage":"Unable to parse xml: {}\n{}","messagePattern":"Unable to parse xml: (.+?)\n(.+?)","errorType":"exception","errorClass":"MavenException","httpStatus":null,"severity":"error","filePath":"impl/maven-testing/src/main/java/org/apache/maven/testing/plugin/MojoExtension.java","lineNumber":291,"sourceCode":"                    .findFirst()\n                    .map(ConfigurationContainer::getConfiguration)\n                    .orElseGet(() -> XmlNode.newInstance(\"config\"));\n            List<XmlNode> children = mojoParameters.stream()\n                    .map(mp -> {\n                        String value = mp.value();\n                        if (!mp.xml()) {\n                            // Treat as plain text - escape XML special characters\n                            value = value.replace(\"&\", \"&amp;\")\n                                    .replace(\"<\", \"&lt;\")\n                                    .replace(\">\", \"&gt;\")\n                                    .replace(\"\\\"\", \"&quot;\")\n                                    .replace(\"'\", \"&apos;\");\n                        }\n                        String s = '<' + mp.name() + '>' + value + \"</\" + mp.name() + '>';\n                        try {\n                            return XmlService.read(new StringReader(s));\n                        } catch (XMLStreamException e) {\n                            throw new MavenException(\"Unable to parse xml: \" + e + System.lineSeparator() + s, e);\n                        }\n                    })\n                    .collect(Collectors.toList());\n            XmlNode config = XmlNode.newInstance(\"configuration\", null, null, children, null);\n            pluginConfiguration = XmlService.merge(config, pluginConfiguration);\n\n            // load default config\n            // pluginkey = groupId : artifactId : version : goal\n            Mojo mojo = lookup(Mojo.class, coord[0] + \":\" + coord[1] + \":\" + coord[2] + \":\" + coord[3]);\n            for (MojoDescriptor mojoDescriptor : descriptor.getMojos()) {\n                if (Objects.equals(mojoDescriptor.getGoal(), coord[3])) {\n                    if (pluginConfiguration != null) {\n                        pluginConfiguration = finalizeConfig(pluginConfiguration, mojoDescriptor);\n                    }\n                }\n            }\n\n            Session session = getInjector().getInstance(Session.class);","sourceCodeStart":273,"sourceCodeEnd":309,"githubUrl":"https://github.com/apache/maven/blob/e4093d4e120eac99d6bdce5ba67cace2f3085c97/impl/maven-testing/src/main/java/org/apache/maven/testing/plugin/MojoExtension.java#L273-L309","documentation":"Error \"Unable to parse xml: {}\n{}\" thrown in apache/maven.","triggerScenarios":"Thrown at impl/maven-testing/src/main/java/org/apache/maven/testing/plugin/MojoExtension.java:291 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"e4093d4e120eac99d6bdce5ba67cace2f3085c97","analyzedAt":"2026-08-21T22:58:24.034Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}