Foros del Web » Programación para mayores de 30 ;) » Java »

Generar Atributos xml con XStream

Estas en el tema de Generar Atributos xml con XStream en el foro de Java en Foros del Web. Hola a todos, como veran soy nuevo en el foro. Estoy teniendo unas pequeñas difucultades a la hora de conseguir un xml, el resultado deberia ...
  #1 (permalink)  
Antiguo 07/02/2016, 11:33
 
Fecha de Ingreso: febrero-2016
Mensajes: 7
Antigüedad: 8 años, 2 meses
Puntos: 0
Generar Atributos xml con XStream

Hola a todos, como veran soy nuevo en el foro.

Estoy teniendo unas pequeñas difucultades a la hora de conseguir un xml, el resultado deberia ser este
Código XML:
Ver original
  1. <Proveedor fif="150" empresa="Mi Proveedor">
  2.   <calle>Mi Calle</calle>
  3.   <ciudad>Madrid</ciudad>
  4.   <pais>España</pais>
  5.   <cp>2850</cp>
  6.   <esNacional>Importacion</esNacional>
  7.   <cafes>
  8.     <Cafe>
  9.       <marca>cafeIESCE</marca>
  10.       <precio>5,3</precio>
  11.       <venta>43</venta>
  12.     </Cafe>
  13.     <Cafe>
  14.       <marca>cafeIESSanFer</marca>
  15.       <precio>6.8</precio>
  16.       <venta>45</venta>
  17.     </Cafe>
  18.   </cafes>
  19. </Proveedor>

El problema viene a la hora de generar los atributos cip y empresa, mi clase proveedor es la siguiente

Código Java:
Ver original
  1. public class Proveedor {
  2.  
  3.     private String cif;
  4.     private String empresa;
  5.     private String calle;
  6.     private String ciudad;
  7.     private String pais;
  8.     private String cp;
  9.     private String esNacional;
  10.     private ArrayList<Cafe> cafes = new ArrayList<Cafe>();
  11.  
  12.  
  13.     public String getCif() {
  14.         return cif;
  15.     }
  16.     public void setCif(String cif) {
  17.         this.cif = cif;
  18.     }
  19.     public String getEmpresa() {
  20.         return empresa;
  21.     }
  22.     public void setEmpresa(String empresa) {
  23.         this.empresa = empresa;
  24.     }
  25.     public String getCalle() {
  26.         return calle;
  27.     }
  28.     public void setCalle(String calle) {
  29.         this.calle = calle;
  30.     }
  31.     public String getCiudad() {
  32.         return ciudad;
  33.     }
  34.     public void setCiudad(String ciudad) {
  35.         this.ciudad = ciudad;
  36.     }
  37.     public String getPais() {
  38.         return pais;
  39.     }
  40.     public void setPais(String pais) {
  41.         this.pais = pais;
  42.     }
  43.     public String getCp() {
  44.         return cp;
  45.     }
  46.     public void setCp(String cp) {
  47.         this.cp = cp;
  48.     }
  49.     public String getEsNacional() {
  50.         return esNacional;
  51.     }
  52.     public void setEsNacional(String esNacional) {
  53.         this.esNacional = esNacional;
  54.     }
  55.     public ArrayList<Cafe> getCafes() {
  56.         return cafes;
  57.     }
  58.     public void setCafes(ArrayList<Cafe> cafes) {
  59.         this.cafes = cafes;
  60.     }
  61. }

En la documentacion de XStream he encontrado estos 2 metodos aliasFile(“nombreTag”, Clase.class, “nombreAtributo”) y useAttributeFor(Clase.class, "nombreAtributo"); el problema es que este ultimo no me lo reconoce como un metodo de la clase XStream es decir no lo puedo ejecutar y con el aliasFile ejecutandolo de la siguiente manera: xstream.aliasField("name", Proveedor.class, "cif");

consigo este xml

Código XML:
Ver original
  1. <Proveedor>
  2.   <cif>150</cif>
  3.   <empresa>Mi Proveedor</empresa>
  4.   <calle>Mi Calle</calle>
  5.   <ciudad>Madrid</ciudad>
  6.   <pais>España</pais>
  7.   <cp>2850</cp>
  8.   <esNacional>Importacion</esNacional>
  9.   <cafes>
  10.     <Cafe>
  11.       <marca>cafeIESCE</marca>
  12.       <precio>5,3</precio>
  13.       <venta>43</venta>
  14.     </Cafe>
  15.     <Cafe>
  16.       <marca>cafeIESSanFer</marca>
  17.       <precio>6.8</precio>
  18.       <venta>45</venta>
  19.     </Cafe>
  20.   </cafes>
  21. </Proveedor>

como si usase un alias normal.

Si me pueden ayudar se lo agradeceria.

Etiquetas: atributos, clase, string, xml
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:49.