Apostrophe dans les attributs
Bonjour à tous et merci d'avance à ceux qui s'intéresseront à mon problème.
Voici ma situation.
D'abord, je précise que je travaille sur un produit où être à jour sur les technologies ne fait pas partie des priorités (nous sommes passés à java 1.5 il y a à peine 3 mois :cry:).
A partir de beans, je génère un fichier XML. Le xsd associé impose de passer les valeurs sous forme d'attributs (pour ceux qui connaissent, il s'agit d'un fichier PES).
Le moteur est construit en utilisant SAX (Xalan). Les fichiers que nous générons sont tout à fait valides. Mais, dernièrement, on me demande de n'avoir aucun des caractères spécifiques du XML dans les données. Donc, d'encoder les apostrophes.
Or, l'encoder XML ne traite jamais l'apostrophe (pas besoin puisqu'elle perd sa spécificité en étant encadrée par des doubles quotes).
Je ne peux pas encoder moi-même l'apostrophe car le & que j'utiliserais alors, lui, se transformerait en &.
Je me répète, mais mes valeurs sont transmises sous forme d'attribut. Je ne peux donc pas utiliser le paramètre escapeCharacters de la fonction d'écriture qui ne s'applique pas aux attributs.
La seule solution que je vois actuellement est de repasser dans tout le fichier après sa génération pour faire l'encodage de cette apostrophe :? J'aimerais éviter cette mauvaise solution.
Auriez-vous une(des) solution(s) à me proposer ?