Visualizzazione dei risultati da 1 a 2 su 2

Visualizzazione discussione

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2017
    Messaggi
    10

    Deserializzare da XML a Java

    Ciao a tutti! ho un problema con la deserializzazione da XML a oggetto Java. Ho un file xml con uno schema xsd contenete dei parametri di configurazione e vorrei deserializzarlo in un oggetto java della classe ConfigurazioneParametri in modo da poterli utilizzare nel mio programma. Quando vado ad eseguire il programma pero netbeans mi da questo errore:

    Caused by: com.thoughtworks.xstream.converters.reflection.Abs tractReflectionConverter$UnknownFieldException: No such field ConfigurazioneParametri.ParametriEconomici
    ---- Debugging information ----
    field : ParametriEconomici
    class : ConfigurazioneParametri
    required-type : ConfigurazioneParametri
    converter-type : com.thoughtworks.xstream.converters.reflection.Ref lectionConverter
    path : /ConfigurazioneParametri/ParametriEconomici
    version : 1.4.7
    -------------------------------

    Posto il codice, grazie a tutti

    file configurazione.xml
    codice:
    <?xml version="1.0" encoding="UTF-8"?>
    <ConfigurazioneParametri>
        <ParametriEconomici>
            <costoConsegna>1</costoConsegna>
            <arcoTemporale>2017</arcoTemporale>
        </ParametriEconomici>
    </ConfigurazioneParametri>
    file configurazione.xsd
    codice:
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
        <xs:element name="ConfigurazioneParametri">
          <xs:complexType>
            <xs:sequence>
                <xs:element name="ParametriEconomici">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="costoConsegna" type="xs:string"/>
                            <xs:element name="arcoTemporale" type="xs:string"/>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
          </xs:complexType>
         </xs:element>
    </xs:schema>
    file ParametriEconomici.java
    codice:
    public class ParametriEconomici implements Serializable{
        public String costoConsegna;
        public String arcoTemporale;
        
        public ParametriEconomici(String costoConsegna, String arcoTemporale){
            this.costoConsegna = costoConsegna;
            this.arcoTemporale = arcoTemporale;
        }
    }
    file ConfigurazioneParametri.java
    codice:
    public class ConfigurazioneParametri implements Serializable{
        public ParametriEconomici pe;
        
        public ConfigurazioneParametri(String xml){
            ConfigurazioneParametri cp = (ConfigurazioneParametri)(new XStream()).fromXML(xml);
            pe = cp.pe;   
        }
        
        public static ConfigurazioneParametri leggiDatiDalFileDiConfigurazione(){
            String x = null;
            try{
                x = new String(Files.readAllBytes(Paths.get("configurazione.xml")));
            }catch(IOException e){
                e.printStackTrace();
            }
            ConfigurazioneParametri cp = new ConfigurazioneParametri(x);
            return cp;
        }
    }
    La chiamata dal metodo start e:

    ConfigurazioneParametri cp = ConfigurazioneParametri.leggiDatiDalFileDiConfigur azione();
    Ultima modifica di Trispo; 27-08-2017 a 17:30

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.