|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jan 2002
Città: Napoli
Messaggi: 1726
|
passare un XML tramite RMI
Ciao ho un applicazione che legge un XML e ne estrae i dati con Xpath, per ora faccio le cose in locale:
File xmlDocument = new File("c:/test.xml"); ... InputSource inputSource = new InputSource(new FileInputStream(xmlDocument)); Ora però vorrei far eseguire delle operazioni con il server, e chiamare il metodo remoto con RMI e passargli in qualche modo l'XML che poi si gestisce il server. Per passarlo però come parametro mi serve qualche classe serializzata (giusto?) dunque, cosa mi consigliate per passare al server sto XML da elaborare poi tramite xpath? thanks
__________________
Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe? Il cestino. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2000
Messaggi: 235
|
Serializzare un oggetto che e' un XML e' logicamente equivalente a riscriverlo in XML, e analogamente per la lettura.
Se le operazioni sull'XML sono tutte sul server, lato client non parsare nemmeno il file, ma passalo al server come Stringa XML. Se invece vuoi usare la serializzazione java, API come jdom e dom4j hanno i nodi e gli elementi serializzabili. Con il W3C DOM mi sa che invece bisogna per forza riserializzare in XML (Cmq le performance di parsing e write dell'xml dovrebbero essere comparabili a quelle di serializzazione/deserializzazione, se non migliori. Ci vorrebbero dei benchmarks..) Ciao
__________________
...writing about climbing is boring. I would rather go climbing. (Chuck Pratt) |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Jan 2002
Città: Napoli
Messaggi: 1726
|
Quote:
- Legge file .xml - Estrae dati con XPath da file .xml - In base ai dati istanzia determinati oggetti - Effettua un'elaborazione sugli oggetti. - Restituisce con System.out.println un testo con tag tali da renderlo un file xml. Codice PHP:
Ora devo rendere l'app client e server, usando RMI come mezzo di comunicazione. CLIENT: - Legge file .xml - Chiama metodo remoto sul server e gli passa come parametro l'xml letto SERVER: - Riceve chiamata dove è stato passato come parametro l'xml. - Lancia thread dove elabora il file .xml - Estrae i dati con XPath - Istanzia determinati oggetti - Fa Elaborazioni su oggetti. Ora il mio dubbio è sul "formato" del parametro che contiene l'.xml che viene passato dal client al server. In sostanza vorrei tenere il codice il più possibile semplice. L'xml è equiparabile ad una stringa, quindi un'idea poteva essere di ficcare il testo del file in una stringa, passarla via RMI, ma a quel punto devo in qualche modo ottenere un oggetto InputSource a partire da una stringa, in modo poi da poter continuare a lavorare come faccio attualmente sul client.
__________________
Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe? Il cestino. |
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Oct 2000
Messaggi: 235
|
Passalo come String e poi:
Codice:
inputSource = new InputSource(new StringReader(stringaXml));
__________________
...writing about climbing is boring. I would rather go climbing. (Chuck Pratt) |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Jan 2002
Città: Napoli
Messaggi: 1726
|
Quote:
![]()
__________________
Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe? Il cestino. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:52.