Je ne sais pas si y'a plus simple mais ça marche bien.
Code :
- public static String DOM2String(Document document)
- {
- try
- {
- Source source = new DOMSource(document);
- StringWriter stringWriter = new StringWriter();
- Result result = new StreamResult(stringWriter);
- TransformerFactory factory = TransformerFactory.newInstance();
- Transformer transformer = factory.newTransformer();
- transformer.transform(source, result);
- String strRetour = stringWriter.getBuffer().toString();
- stringWriter.close();
- return strRetour;
- }
- catch (Exception e)
- {
- ....ERREUR....
- }
- return "";
- }
|
Je pense que ça changeras pas ton probleme, parce que ton envoi dans le socket sera "en clair" ( le texte du xml generé ).
Si j'ai bien compris, tu veux que le transfert sur le réseaux soit protegé ?
Le mieux est surement de crypter les envois, en cryptant la chaine XML avant de l'envoyer sur le réseau; et donc de la décrypter à la reception avant de parser le XML.
Un bon vieux cryptage XOR (tres bas de gamme) pourrais faire l'affaire dans un premier temps...
[REFLECHISSEMENT]
ok, j'ai relus ton premier message, je n'avais donc pas bien compris - j'ai quand meme laissé mon texte, ça peut peut etre te donner une idée... -
Ton texte avec injection de xml devrait etre entre <![CDATA[....]]> dans le xml je pense, non ?
Sinon, tu peux toujours remplacer les > et < par d'autre caracteres dans le texte et les remettre à la reception.
[FIN-REFLECHISSEMENT]