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

[SOLUCIONADO] ¿Como guardar herencia en un XML?

Estas en el tema de ¿Como guardar herencia en un XML? en el foro de Java en Foros del Web. Estoy trabajando en un proyecto en el que debo guardar las clases en un archivo XML y cuando se ejecute lo lea para cargar las ...
  #1 (permalink)  
Antiguo 31/05/2014, 03:21
 
Fecha de Ingreso: septiembre-2008
Ubicación: Valencia
Mensajes: 160
Antigüedad: 15 años, 7 meses
Puntos: 2
¿Como guardar herencia en un XML?

Estoy trabajando en un proyecto en el que debo guardar las clases en un archivo XML y cuando se ejecute lo lea para cargar las clases, hasta aquí todo bien, pero se da el caso de que hay una par de clases que heredan de otra.

En este caso


Código:
public class UsuarioRegistrado{
private String nom;
private String pass;
...
}

public class Socio extends UsuarioRegistrado{
private String favorito;
...
}
Y cuando se ejecuta el código para extraer al XML de la librería XStream me lo guarda todo correctamente excepto las herencias, donde si hay una instancia de Socio solo guarda los valores de Socio y se olvida de los que hereda de UsuarioRegistrado.

¿Quito a UsuarioRegistrado de la lista de alias?

P.D: He probado haciendo cast y sigue pasando lo mismo
__________________
Siempre inmerso en nuevos proyectos.

Cuando estoy activo puedes verme en //LiveCoding
  #2 (permalink)  
Antiguo 31/05/2014, 10:15
 
Fecha de Ingreso: noviembre-2010
Ubicación: en las nubes
Mensajes: 56
Antigüedad: 13 años, 5 meses
Puntos: 3
Respuesta: ¿Como guardar herencia en un XML?

el detalle es que estas marcando como privadas la variable en la clase padre , por lo que la clase hija no tiene acceso a ellas.
para ver si se soliciona tu problema , cambia las a protected.
protected hereda la variable y es privada en la case hija.
__________________
la mejor soluciones no es la mas complicada, si no con la mejor ingenio
  #3 (permalink)  
Antiguo 31/05/2014, 10:44
 
Fecha de Ingreso: septiembre-2008
Ubicación: Valencia
Mensajes: 160
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: ¿Como guardar herencia en un XML?

Ya lo he probado, con protected y con public pero nada de nada, solo me guarda los valores de Socio, omite todos los de los padre.

De todas maneras la librería para pasar a XML es capaz de extraer e introducir todos los atributos sean como sean, y sin tener setters ni getters
__________________
Siempre inmerso en nuevos proyectos.

Cuando estoy activo puedes verme en //LiveCoding
  #4 (permalink)  
Antiguo 31/05/2014, 12:52
 
Fecha de Ingreso: septiembre-2008
Ubicación: Valencia
Mensajes: 160
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: ¿Como guardar herencia en un XML?

Después de todo el día haciendo pruebas el problema esta resuelto.

De normal trabajo con mi PC de sobremesa el cual es Ubuntu como sistema operativo y NetBean 8.0, y he cambiado a la otra partición donde tengo Windows y trabajo con NetBan 7.3.1. Esto no debería afectar ya que tengo las mismas librerías en los dos SO, así que no se si debe ser, si es que la librería no funciona correctamente en NetBean 8.0 (que lo dudo) o si es cosa de las máquinas virtuales. Si alguien tiene alguna otra idea de que podía ser por favor que me lo diga, bien sea contestando al post o por mensaje privado, ya que me gustaría poder seguir trabajando desde la torre, que es mi lugar de trabajo principal.
__________________
Siempre inmerso en nuevos proyectos.

Cuando estoy activo puedes verme en //LiveCoding

Etiquetas: clase, herencia, string, valor
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 17:17.