67 votes

JAXB - La propriété "Value" est déjà définie. Utilisez <jaxb:property> pour résoudre ce conflit.

Utilisation de JAXB pour générer des classes de liaison XML.

Le schéma est basé sur un ensemble de fichiers XML hérités, et comprend cet extrait :

L'attribut 'Value' entre en conflit avec la propriété 'value' de xs:string, et la génération de code échoue avec l'erreur :

com.sun.istack.SAXParseException2: La propriété "Value" est déjà définie. Utilisez <jaxb:property> pour résoudre ce conflit.

0voto

Vous pouvez également utiliser le paramètre -XautoNameResolution en ligne de commande et également dans le plug-in pour permettre à jxc de résoudre le nom si vous ne vous souciez pas du nom sur les classes.

0voto

Ce fichier de liaisons mentionné dans l'autre réponse n'a pas fonctionné pour moi avec CXF 3.0.0. Notez que l'espace de noms jaxb a un élément "bindings" et que l'espace de noms jaxws en a un aussi, nous devons donc les déclarer :

Dans mon cas, le schéma était déjà à l'intérieur du WSDL donc je n'ai pas eu besoin de spécifier l'attribut schemaLocation.

0 votes

Ceci est la seule réponse ici qui inclut jaxb:property, mais je ne comprends pas comment la réponse ici se rapporte au reste du fichier. Pour une chose, je ne vois pas de balise bindings dans le fichier WSDL que j'essaie de corriger.

1 votes

Cette balise XML va dans un fichier .xjb. Cette autre question a un exemple: stackoverflow.com/questions/23961421

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X