[
https://issues.apache.org/jira/browse/CAMEL-25231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Adriano Machado reassigned CAMEL-25231:
---------------------------------------
Assignee: Adriano Machado
> camel-cxf / type-converter registry: non-deterministic source type selection
> for CXF payload affects xpath, xquery, validator
> -----------------------------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-25231
> URL: https://issues.apache.org/jira/browse/CAMEL-25231
> Project: Camel
> Issue Type: Bug
> Reporter: Salvatore Mongiardo
> Assignee: Adriano Machado
> Priority: Major
>
> When a CXF payload body is consumed by XML-processing components (xpath,
> xquery, validator, xslt), the type-converter registry non-deterministically
> picks either a StAX/SAX source or a +DOMSource+ wrapping the document
> element. The chosen source type varies between JVM runs, meaning the same
> message can be processed differently depending on which converter is loaded
> first.
> This was first observed as a trigger for the XSLT context-node bug fixed in
> CAMEL-25224, but the non-determinism in the registry is an independent
> problem: any XML consumer that receives an implicitly converted CXF payload
> is potentially affected by the inconsistent source selection, including:
> - {{camel-xpath}}
> - {{camel-xquery}}
> - {{camel-validator}}
> *Symptoms:*
> - A CXF payload processed by xpath/xquery/validator behaves differently
> across JVM restarts.
> - A StAX/SAX source is returned on some runs; a +DOMSource+ containing the
> document element (rather than the document node) is returned on others.
> - The root cause is that no stable ordering or priority is enforced in the
> type-converter registry for the converters contributing to the +Source+ type
> from CXF message payloads.
> *Expected behaviour:* The registry should consistently select the same
> converter (or a documented priority order), so that XML consumers receive a
> predictable source type regardless of JVM startup order.
> *Related:* CAMEL-25224 (camel-xslt / camel-xslt-saxon context-node fix that
> was triggered by this non-determinism)
> *References:* https://github.com/apache/camel/pull/27154
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)