Newsgroup: it.comp.java
Titolo: Indentare XML

Generando dei documenti XML con DOM da Java, esiste un modo che permetta,
salvandoli
su file, di avere la corretta indentazione?



C'è tutto nella documentazione. Cerca bene.
Ripeto anche per te: qui nessuno è più disposto a far trovare la "pappa
pronta" per problemi relativamente semplici. Prima devi dimostrare di
esserti impegnato a cercare la soluzione da solo. Come? Facile: nel tuo
prossimo post riporta qui i tuoi tentativi (eventualmente con spezzoni di
codice sorgente), le tue ricerche, i tuoi ragionamenti, e i link (se ce ne
sono) o i riferimenti alla documentazione che hai consultato. Insomma,
mostra il tuo materiale.
HINT 1: hai già installato Java Web Services Developer Pack?
http://java.sun.com/webservices/downloads/webservicespack.html
Lì puoi trovare le interfacce e la documentazione completa di tutto il ramo
org.w3c.dom.* , dove... c'è anche la soluzione per te.
Purtroppo l'installazione standard di J2SDK porta solo un set "ridotto"
degli strumenti messi a disposizione dal consorzio W3C per l'elaborazione di
documenti XML...
HINT 2: se vuoi consultare quella documentazione senza installare JWSDP,
guarda qua:
http://xml.apache.org/xerces2-j/javadocs/api/index.html
HINT 3: guarda il package 
org.w3c.dom.ls
 ... basta, ho già detto troppo :P
Ora tocca a te. In bocca al lupo.
-- 
Fermiamo Scientology prima che sia troppo tardi!!!
http://xenu.com-it.net
  ---  
http://xenu.freewinds.cx
(per rispondere personalmente leva IlDitoDalCulo)


L'utilità del newsgroup è proprio quella di risolvere rapidamente problemi
semplici grazie ai consigli di qualcuno che sa già come fare, evitando così
di perdere ore a cercare nella documentazione e reinventare ogni volta la
ruota.
Avendo problemi ben più grossi da risolvere ho postato questo problema
perchè è una cosa piccolissima rispetto alle altre e speravo in una
soluzione rapida grazie ai consigli di qualcuno. Non ho mai detto che da
solo non avrei trovato la soluzione, semplicemente volevo evitare di perdere
del tempo.
Se mi devo risolvere da solo il problema prima di postare un messaggio.... a
che serve a questo punto postare il messaggio stesso?
Ringrazio comunque per la risposta

 Ringrazio comunque per la risposta
Chiedo scusa per la mia rudezza nel risponderti... forse mi sono lasciato
trascinare un po' dal nervosismo :(
Ti dirò: non ho mai provato l'indentazione automatica, ma guardando la
documentazione... questo è ciò che sono riuscito a ricavare sul momento.
Attento, non l'ho ancora verificato... vedi se ti può essere utile:
 import javax.xml.parsers.*;
 import org.w3c.dom.*;
 import org.w3c.dom.ls.*;
 import java.io.*;
   ...
   DocumentBuilder docbuilder=DocumentBuilderFactory.newDocumentBuilder();
   //Verifichiamo che le estensioni Load&Save siano disponibili
   DOMImplementation impl=docbuilder.getDOMImplementation();
   if (impl.hasFeature("LS","3.0")) {
     DOMImplementationLS implLs=(DOMImplementationLS)impl;
     LSSerialized serializer=implLs.createLSSerializer();
     serializer.getDomConfig().setParameter("format-pretty-print","true");
     LSOutput output=implLs.createLsOutput();
     FileOutputStream ostream=new FileOutputStream("<file destinazione>");
     output.setByteStream(ostream);
     output.setEncoding("UTF-8");
     serializer.write(document,output);
     ostream.flush();
     ostream.close();
   }
   ...


Ciao, ASPMan!
Il giorno 09/05/2004 alle ore 12:19 hai scritto:
 A> Generando dei documenti XML con DOM da Java, esiste un modo che
 A> permetta, salvandoli
 A> su file, di avere la corretta indentazione?
transformer.setOutputProperty("indent", "yes");
Bye
-- 
Marco Maccaferri
MaccaSoft - 
http://www.maccasoft.com