Etienne Massip created CXF-5189:
-----------------------------------
Summary: Java transient modifier is ignored by JAXB databinding
Key: CXF-5189
URL: https://issues.apache.org/jira/browse/CXF-5189
Project: CXF
Issue Type: Bug
Components: JAXB Databinding
Affects Versions: 2.7.6
Reporter: Etienne Massip
Method org.apache.cxf.jaxb.JAXBContextInitializer#isFieldAccepted ignores
transient field modifier and returns true.
I hit this issue because of EClipseLink's [static
weaving|http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Advanced_JPA_Development/Performance/Weaving/Static_Weaving#Table_19-16]
which generates such field on model, causing CXF to throw later a
ServiceConstructionException.
As stated in JAXB 2.1 spec ยง 8.9 "Property And Field":
{quote}
The following must be mapped (subject to the mapping constraints listed below):
(…)
* non static, non transient field of all the ancestors up to the stopClass (but
excluding the stopClass itself); if annotated with @XmlAttribute,
then static final field must be mapped (informally this maps to a fixed
attribute but this is formally specified in the mapping tables below)
{quote}
I haven't dug further but MoXy (see
http://www.hostettler.net/blog/2012/05/24/moxy) seems to handle them (would
make sense) and I guess that JAXB RI is as well.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira