Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    [java] problema durante la lettura di un file xml

    Allora, dovrei leggere questo file xml (utilizzando JDom):

    Codice PHP:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>AdiumSetVersion</key>
        <integer>1</integer>
        <key>Emoticons</key>
        <dict>
        
           <key>1.gif</key>
           <dict>
               <key>Equivalents</key>
               <array>
                   <string>:)</string>
                   <string>:-)</string>
               </array>
               
               <key>Name</key>
               <string>smile</string>
           </dict>       
        </dict>
    </dict>
    </plist>
    Il problema e' che in fase di lettura ottengo una IOException. Se tolgo la riga

    Codice PHP:
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"
    invece il file si carica correttamente. Perche' da errore? Cos'e' questa riga?
    Come posso sistemare? Non ditemi di togliere quella riga perche' non e' possibile

    Grazie ^^

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    906
    Be' la IOException ti da qualche messaggio indicativo?

  3. #3
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da simo7784
    Be' la IOException ti da qualche messaggio indicativo?
    no, mi indica questa riga di codice:


    Codice PHP:
      try
            {
                
    document builder.build(file); // qui salta fuori l'eccezione
            


    non riesco a capire, cos'ha quella riga <!DOCTYPE... > che non va?

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    906
    Probabile che l'xml non rispetti la grammatica specificata nel dtd
    codice:
    try {
        document = builder.build(file); // qui salta fuori l'eccezione
    } catch (Exception e) {
        e.printStackTrace();
    }
    Posta lo stackTrace dell'eccezione.
    Per curiosita', prova anche
    codice:
    try {
        builder.setValidation(false);
        document = builder.build(file); // qui salta fuori l'eccezione
    }
    e dimmi se cosi' va.

  5. #5
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da simo7784
    Probabile che l'xml non rispetti la grammatica specificata nel dtd
    Quel file xml e' quello che permette di installare questo mio set di emoticons: http://adiumxtras.com/index.php?a=xtras&xtra_id=4502 (e si installa senza problemi)
    Il modello l'ho preso da uno dei set di default presenti nel programma, non credo ci siano errori.


    Originariamente inviato da simo7784
    Per curiosita', prova anche
    codice:
    try {
        builder.setValidation(false);
        document = builder.build(file); // qui salta fuori l'eccezione
    }
    e dimmi se cosi' va.
    :O

    Cosi' funziona perfettamente!!!
    Grazie mille, non ci avevo pensato!


  6. #6
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Invece no!

    Era tutto ok perche' ero connesso! Da offline invece non funziona, anche usando quel metodo

    La traccia di stack eccola qui:

    java.net.UnknownHostException: www.apple.com
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.j ava:177)
    at java.net.Socket.connect(Socket.java:516)
    at java.net.Socket.connect(Socket.java:466)
    at sun.net.NetworkClient.doConnect(NetworkClient.java :157)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:365)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:477)
    at sun.net.www.http.HttpClient.<init>(HttpClient.java:214)
    at sun.net.www.http.HttpClient.New(HttpClient.java:287)
    at sun.net.www.http.HttpClient.New(HttpClient.java:299)
    at sun.net.http://www.protocol.http.HttpURLConn...tNewHttpClient(HttpURLConnection.java:795)
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:747)
    at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:672)
    at sun.net.http://www.protocol.http.HttpURLConn...getInputStream(HttpURLConnection.java:916)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityM anager.setupCurrentEntity(XMLEntityManager.java:97 3)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityM anager.startEntity(XMLEntityManager.java:905)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityM anager.startDTDEntity(XMLEntityManager.java:872)
    at com.sun.org.apache.xerces.internal.impl.XMLDTDScan nerImpl.setInputSource(XMLDTDScannerImpl.java:282)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumen tScannerImpl$DTDDispatcher.dispatch(XMLDocumentSca nnerImpl.java:1021)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumen tFragmentScannerImpl.scanDocument(XMLDocumentFragm entScannerImpl.java:368)
    at com.sun.org.apache.xerces.internal.parsers.XML11Co nfiguration.parse(XML11Configuration.java:834)
    at com.sun.org.apache.xerces.internal.parsers.XML11Co nfiguration.parse(XML11Configuration.java:764)
    at com.sun.org.apache.xerces.internal.parsers.XMLPars er.parse(XMLParser.java:148)
    at com.sun.org.apache.xerces.internal.parsers.Abstrac tSAXParser.parse(AbstractSAXParser.java:1242)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:45 3)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:81 0)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:78 9)
    at com.javastaff.emoticon.data.FileManager.readFileSe t(FileManager.java:37)
    at com.javastaff.emoticon.gui.GUI.<init>(GUI.java:60)
    at com.javastaff.emoticon.gui.GUI.main(GUI.java:108)

    E' proprio dovuto alla "non connessione"

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    906
    Allora non c'e' nessun malfunzionamento. Tu specifichi una grammatica per il documento xml attraverso una url, quindi e' scontato che se non sei connesso, non puoi accedere al dtd che si trova online. Se vuoi accedervi offline, vai all'indirizzo http://www.apple.com/DTDs/PropertyList-1.0.dtd , salva il documento nella tua cartella e cambia l'indirizzo nel tag doctype.

  8. #8
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    grazie, ma il fatto e' che non posso cambiare il file xml, le specifiche sono date da adiumxtra

    adesso vedo cosa posso fare... In jdom c'e' modo di non far caricare il dtd?

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    906
    Guarda se ti puo' essere utile: http://www.jdom.org/docs/faq.html#a0350

  10. #10
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da simo7784
    Guarda se ti puo' essere utile: http://www.jdom.org/docs/faq.html#a0350

    :O

    Sembra proprio quello che cerco! Grazie 1000 ancora

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.