J'ai une question sur l'envoi de XML en tant que chaîne dans un Webservice. Un de nos fournisseurs a développé un service web que nous devrions utiliser. Leur webservice est fondamentalement juste un mécanisme de transport pour leurs propres messages de demande/réponse, par ex. La classe MyRequest est sérialisée à une chaîne XML en utilisant JAXB passée à une méthode setRequest dans leur webservice, probablement parce que c'était le moyen le plus facile pour eux ou peut-être parce qu'ils voulaient une transparence élevée dans leur application ... eh bien je ne sais pas.JAX-WS et questions de codage de caractères
De toute façon. Voici ma question. Si j'ai un WebService avec un codage de caractères ISO_8859-1 mais que le XML sérialisé a un codage de caractères UTF-8 (ou tout autre encodage supportant plus de caractères que ISO_8859-1), ceux-ci seront-ils toujours sérialisés et désérialisés correctement? Ou dois-je envoyer des informations sur le contenu de la chaîne? Et si oui, comment puis-je faire cela?
Le côté serveur du service Web est écrit en .NET. Comment est la compatibilité entre Java et .NET? Existe-t-il des encodages en .NET qui ne sont pas supportés en Java ou vice versa?
/Andreas
Okey, donc si le webservice a un codage de caractères UTF_8859-1 et que le XML sérialisé inclus possède un codage de caractères UTF-8, la chaîne ci-jointe sera échappée. Est-ce exact? Que se passe-t-il si la chaîne sérialisée incluse est enveloppée dans une section CDATA, je suppose que cela sera encore valide puisqu'il s'agit de données de caractères, n'est-ce pas? –
Pas vraiment. XML à l'intérieur d'autres XML n'a pas vraiment son propre encodage, puisqu'il s'agit simplement de texte Unicode dans le XML externe (et en tant que tel a le même encodage). Tous les caractères non représentables dans le codage out XMLs seront représentés par des références de caractères numériques. –