Paul King created GROOVY-11927:
----------------------------------
Summary: GROOVY-11927: Add toMap() and typed parsing support to
XmlParser
Key: GROOVY-11927
URL: https://issues.apache.org/jira/browse/GROOVY-11927
Project: Groovy
Issue Type: Improvement
Reporter: Paul King
Add `Node.toMap()` for converting XML node trees to nested Maps, and
`XmlParser.parseTextAs()`/`parseAs()` for typed XML parsing via Jackson
databinding.
Three levels of support:
- `node.toMap()` — zero-dependency conversion to `Map<String, Object>`, usable
standalone
- `node as MyType` — coercion via `toMap()` + Groovy's named-param constructor
(works for String-typed properties, no additional deps)
- `parser.parseTextAs(Type, xml)` — full typed conversion (String→int, boolean,
etc.) plus `@JsonProperty`/`@JsonFormat` support; requires `jackson-databind`
at runtime, throws clear error if absent
Also adds `XmlRuntimeException` and an internal `JacksonHelper` utility using
reflective access to avoid a compile-time Jackson dependency on `groovy-xml`.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)