0

Dans l'ancienne version de "org.apache.commons.lang" (2.6) StringEscapeUtils, il y a un method to escapexml en passant une instance de "java.io.Writer" comme un des paramètres.Échapper XML en utilisant stringutils commons.lang version3 appliquer sur l'auteur

par exemple: escapeXml(Writer writer, String str)

Mais, en version plus récente 3 StringEscapeUtils, aucune méthode accepte une instance de "java.io.Writer" comme l'un des paramètres.

Existe-t-il une alternative à l'utilisation de l'écrivain de manière indirecte, configurer un rappel ou un gestionnaire?

Répondre

1

Tous les Intercepter un Writer surcharge ont été enlevés - mais, CharSequenceTranslator les instances sont disponibles, vous pouvez écrire:

StringEscapeUtils.ESCAPE_XML10.translate(input, writer); 

(Personnellement, je vous recommande fortement d'utiliser une API XML centrée à écrire XML plutôt que de le faire "un peu manuellement" comme ça, certes ...)

+0

J'utilise OracleWebRowSet et il n'a pas échappé aux caractères spéciaux comme l'esperluette dans le contenu textuel donc recouru à Stringutils dans les langages communs ... donc avant d'appeler 'OracleWebRowSet.writeXml (FileWriter)', J'ai besoin d'y échapper d'une manière ou d'une autre. pour éviter l'erreur d'analyse xml –