¿Pq no aparece la linterna en referencias @ManyToOne?

JOSE ELIAS
2013-03-21
2013-04-09
  • JOSE ELIAS

    JOSE ELIAS - 2013-03-21

    Qué tiene que pasar para que aparezca la linterna al poner una referencia?
    Este es el ejemplo en el que no aparece

    //////////////////// visita /////////////////////

    @Entity
    public class Visita extends Identificable { //extiende oid y nombre

    @ManyToOne
    private Paciente paciente;
    
    public Paciente getPaciente() {
        return paciente;
    }
    
    public void setPaciente(Paciente paciente) {
        this.paciente = paciente;
    }
    

    }

    //////////////////////// paciente ////////////////////////

    @Entity
    public class Paciente extends Identificable { //extiende oid y nombre

    }

     
  • Javier Paniza

    Javier Paniza - 2013-03-25

    Hola José,

    en el código que has puesto Paciente no tiene ninguna propiedad visualizable, por eso no aparece la liternita, la vista necesita al menos una propiedad para que aparezca la liternita. Prueba añadir una propiedad a Paciente y me dices.


    Ayuda a otros en este foro como yo te ayudo a ti.
    ¿Necesitas más ayuda? Usa el soporte profesional de OpenXava

     
  • JOSE ELIAS

    JOSE ELIAS - 2013-03-29

    Gracias Javier,

    He puesto hasta 4 propiedades a la @ReferenceView que uso, pero no hay forma.
    ¿se te ocurre algo?

     
  • JOSE ELIAS

    JOSE ELIAS - 2013-03-30

    Por si sirve de algo

    Si uso @DescriptionsList en la referencia Paciente, aparecen cargados los pacientes en el combo, si embargo, de la forma convencional, no aparece la búsqueda (linternita)

     
  • Javier Paniza

    Javier Paniza - 2013-04-02

    Hola José,

    pon aquí una versión mínima de Paciente y Visita, las copiare y pegaré en mi entorno para reproducir tu problema y decirte que está pasando. Por favor, prueba el código antes de ponerlo.


    Ayuda a otros en este foro como yo te ayudo a ti.
    ¿Necesitas más ayuda? Usa el soporte profesional de OpenXava

     
  • JOSE ELIAS

    JOSE ELIAS - 2013-04-02

    Te lo agradezco, lo he reducido a clases muy sencillas y no veo el problema

    /////////////////////// Identificable ///////////// (extienden de esta las dos clases)

    package org.openxava.xavioprm.model;

    import javax.persistence.;
    import org.openxava.annotations.
    ;

    //clase mapeada para usarse como clave autogenerada donde se requiera
    @MappedSuperclass
    public class Identificable {

    @Id @ReadOnly
    @Column(length=9)
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int oid;
    
    private String nombre;
    

    //////////////// getter y setter ////////////////////////

    public int getOid() {
        return oid;
    }
    
    public void setOid(int oid) {
        this.oid = oid; 
    }
    
    public String getNombre() {
        return nombre;
    }
    
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
    

    }//endclass

    /////////////////////////// Paciente //////////////////////////////////

    @Entity
    @View(members="oid, nombre, historiaClinica")
    public class Paciente extends Identificable {

    @Column(length=10)
    private String historiaClinica;
    
    @OneToMany
    private Collection<Visita> visitas = new ArrayList<Visita>();
    
    public String getHistoriaClinica() {
        return historiaClinica;
    }
    
    public void setHistoriaClinica(String historiaClinica) {
        this.historiaClinica = historiaClinica;
    }
    
    public Collection<Visita> getVisitas() {
        return visitas;
    }
    
    public void setVisitas(Collection<Visita> visitas) {
        this.visitas = visitas;
    }
    

    }//end class

    //////////////////////////////////// Visita //////////////////////////////

    @Entity
    public class Visita extends Identificable {

    @ManyToOne(fetch=FetchType.LAZY, optional=false)
    private Paciente paciente;
    
    public Paciente getPaciente() {
        return paciente;
    }
    
    public void setPaciente(Paciente paciente) {
        this.paciente = paciente;
    }
    

    }//end class

     
  • JOSE ELIAS

    JOSE ELIAS - 2013-04-09

    Ya está resuelto.
    Estaba el identificador con @ReadOnly.

     

Log in to post a comment.