You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Freeman Fang (JIRA)" <ji...@apache.org> on 2017/02/24 02:26:44 UTC

[jira] [Commented] (CXF-7188) javax.xml.bind.annotation.XmlEnumValue annotation should be honored in Aegis data binding

    [ https://issues.apache.org/jira/browse/CXF-7188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15881808#comment-15881808 ] 

Freeman Fang commented on CXF-7188:
-----------------------------------

Hi Sanjin,

As Dan pointed out in CXF-7186, the aegis is used for "java first" and not to support the full set of JAXB annotations by design. Though CXF is open source and you can hack to meet your requirement , introduce this change to upstream isn't appropriate IMO.

Thanks for your contribution anyway!

Freeman

> javax.xml.bind.annotation.XmlEnumValue annotation should be honored in Aegis data binding
> -----------------------------------------------------------------------------------------
>
>                 Key: CXF-7188
>                 URL: https://issues.apache.org/jira/browse/CXF-7188
>             Project: CXF
>          Issue Type: Bug
>          Components: Aegis Databinding
>    Affects Versions: 2.7.18, 3.1.9, 3.0.12
>            Reporter: Sanjin Tulac
>            Assignee: Freeman Fang
>
> I've been trying to use CXF with Aegis DataBinding to host a web service that needs to be called by a 3rd party, using 3rd party's XML schema.
> 3rd party XML schema uses enumeration where values have first character upper-case, and the rest is lower-case, e.g., "Completed".
> From this XML schema, wsdl2java correctly creates the following Java enum value using javax.xml.bind.annotation.XmlEnumValue annotation :
> {code}
> @XmlEnumValue("Completed")
> COMPLETED("Completed")
> {code}.
> However, when a web service is exposed that uses this enum, WSDL shows that this service expects values all in uppercase, e.g.,:
> {code}
> <xsd:enumeration value="COMPLETED"/>
> {code}
> The same problem is also encountered at run-time. E.g., when XML complying to 3rd party XML schema is being converted to a Java object, the web service returns:
> {code}
> Illegal argument. No enum constant <target namespace>.Completed.
> {code}
> I've encountered this defect on v. 2.7.18, but I've been able to reproduce it on the 3.2.0 snapshot from Dec 12th 2016 (master branch as of commit  b49075882641fcebbbdf1ed8d84247fcf80aa558)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)