J'ai un service Web JAXB qui ne s'attend pas à ce que l'élément Id soit transmis, et un client qui passe cet élément de toute façon.JAXB Unxpected Element
La version du service Web actuellement en production ignore silencieusement cet élément inattendu, mais la version dans QA se plaint. En traçant le XML des requêtes entrantes, j'ai confirmé que l'élément Id est envoyé à la fois aux versions production et QA du service.
Le message d'erreur QA est:
org.apache.cxf.interceptor.Fault: Unmarshalling Error: unexpected element (uri:" http://mydomain.com/transaction ", local:"Id"). Expected elements are...
Le message est assez clair, mais la solution est que le client est largement déployée. Dans un premier temps, je voudrais essayer de comprendre pourquoi la version de production accepte cet élément supplémentaire alors que la version QA ne l'accepte pas. Il n'y a pas beaucoup de différences entre les deux versions.
Suggestions où chercher?
Injectez-vous un 'schéma 'dans l'une ou l'autre version, pour validation? – skaffman
@skaffman: Non, il n'y a pas de schéma. –