8
votes

Comment modifier le codage des fichiers générés par WSIMPORT?

J'utilise la tâche Wsimport Ant de JAX-WS pour générer des sources en fonction de certains WSDL.

Cependant, ces sources générées semblent toutes codées UTF-8. Existe-t-il un moyen de modifier le codage des fichiers Wsimport Task Produit?


2 commentaires

Pourquoi voulez-vous exactement de ne pas utiliser UTF-8?


Parce que sur ce projet, toutes les autres superficielles Java sont codées CP1252. Les codages sources mixtes peuvent provoquer le problème du compilateur, en particulier lors de l'utilisation de caractères non ASCII. Je souhaite donc que le Wsimport génère des sources Java CP1252 codées.


5 Réponses :


3
votes

Ceci est quelque peu mal documenté. Wsimport utilise XJC (à partir de JAXB) pour créer des fichiers Java et la documentation Ici indique que la modification du codage du personnage dans le fichier XML devrait suffire (bien que je n'ai pas essayé cela). Si vous vous contentez d'exécuter JAXB à la main, vous pouvez également configurer ceci via la propriété Jaxb_encoding sur votre JAXBContext.


0 commentaires

0
votes

Définir la variable d'environnement sur Java_Tool_Options code> à -DFILE.CODING = UTF8 code>

Exemple de la borne sous Windows: P>

set JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8

c:>wsimport -keep ... file.wsdl

Picked up `JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8`
parsing WSDL...

Generating code...


0 commentaires

3
votes

i Publier avec mon compte registre:

Définir la variable d'environnement Java_Tool_Options TO - DFILE.CODING = UTF8

Exemple de Windows: xxx

ramassé JAVA_TOOL_OPTIONS: -DFILE.CODING = UTF8 analysant WSDL ...

Code générateur ...


0 commentaires

3
votes

wsimport 2.2.9 dans JDK 8 a la -coding option pouvant être utilisée pour cela. Par exemple: xxx

Je ne trouve pas cette option dans WSIMPORT 2.1.6 (JDK 6) ou 2.2.4-B01 (JDK 7).


2 commentaires

Ça marche parfait +1. Pour moi, cela fonctionne également sur la version précédente (2.2.7)


Travaillé pour moi aussi! +1



1
votes

Si vous utilisez WSIMPORT via une tâche ANT à l'aide de gradle , vous pouvez simplement utiliser la propriété coding spécifiant le codage souhaité dans wsimport . J'ai testé avec la version wsimport 2.2.7 xxx


0 commentaires