[jboss-user] [JBoss Seam] - Problem retrieving data from the DB

adriju do-not-reply at jboss.com
Fri Jan 4 03:35:58 EST 2008


Hi people!!

I´ve got the following tables in my DB Oracle 9:

anonymous wrote : USUARIOS
  | 
  |  Name                                                  Null?    Type
  |  --------------------------------------------- -------- -----------
  |  COD_USUARIO                                   NOT NULL NUMBER(10)
  |  NOMBRE_USUARIO                                             VARCHAR2(60)
  |  PRIORIDAD_USUARIO                                        NUMBER(3)
  |  PASSWORD_USUARIO                                        VARCHAR2(12)
  |  FILTRO_USUARIO                                               VARCHAR2(20)
  |  SNMP_USUARIO                                                 VARCHAR2(20)
  |  COD_GRUPOS_USUARIOS                    NOT NULL NUMBER(10)
  | 
  | primary key (COD_USUARIO),foreign key  (COD_GRUPOS_USUARIOS) references GRUPOS_USUARIOS(COD_GRUPOS_USUARIOS)
  | 
  | GRUPOS_USUARIOS
  | 
  |  Name                                                  Null?    Type
  |  --------------------------------------------- -------- ------------
  |  COD_GRUPOS_USUARIOS                    NOT NULL NUMBER(10)
  |  NOMBRE_GRUPOS_USUARIOS                             VARCHAR2(60)
  | 
  | primary key (COD_GRUPOS_USUARIOS)

I do not use any reverse engineering with these tables. Then I use generate-entities to create the entities and I obtain the following:

@Entity
  | @Table(name = "USUARIOS")
  | public class Usuarios implements java.io.Serializable {
  | 
  | 	private long codUsuario;
  | 	private GruposUsuarios gruposUsuarios;
  | 	private String nombreUsuario;
  | 	private Short prioridadUsuario;
  | 	private String passwordUsuario;
  | 	private String filtroUsuario;
  | 	private String snmpUsuario;
  | 	private Set<TemispConfiguracion> temispConfiguracions = new HashSet<TemispConfiguracion>(
  | 			0);
  | 	private Set<FiltrosFichas> filtrosFichases = new HashSet<FiltrosFichas>(0);
  | 	private Set<Operacion> operacions = new HashSet<Operacion>(0);
  | 	private Set<Macro> macros = new HashSet<Macro>(0);
  | 	private Set<NuevaConfiguracion> nuevaConfiguracions = new HashSet<NuevaConfiguracion>(
  | 			0);
  | 	private Set<Grupo> grupos = new HashSet<Grupo>(0);
  | 
  | 	public Usuarios() {
  | 	}
  | 
  | 	public Usuarios(long codUsuario, GruposUsuarios gruposUsuarios) {
  | 		this.codUsuario = codUsuario;
  | 		this.gruposUsuarios = gruposUsuarios;
  | 	}
  | 	public Usuarios(long codUsuario, GruposUsuarios gruposUsuarios,
  | 			String nombreUsuario, Short prioridadUsuario,
  | 			String passwordUsuario, String filtroUsuario, String snmpUsuario,
  | 			Set<TemispConfiguracion> temispConfiguracions,
  | 			Set<FiltrosFichas> filtrosFichases, Set<Operacion> operacions,
  | 			Set<Macro> macros, Set<NuevaConfiguracion> nuevaConfiguracions,
  | 			Set<Grupo> grupos) {
  | 		this.codUsuario = codUsuario;
  | 		this.gruposUsuarios = gruposUsuarios;
  | 		this.nombreUsuario = nombreUsuario;
  | 		this.prioridadUsuario = prioridadUsuario;
  | 		this.passwordUsuario = passwordUsuario;
  | 		this.filtroUsuario = filtroUsuario;
  | 		this.snmpUsuario = snmpUsuario;
  | 		this.temispConfiguracions = temispConfiguracions;
  | 		this.filtrosFichases = filtrosFichases;
  | 		this.operacions = operacions;
  | 		this.macros = macros;
  | 		this.nuevaConfiguracions = nuevaConfiguracions;
  | 		this.grupos = grupos;
  | 	}
  | 
  | 	@Id
  | 	@Column(name = "COD_USUARIO", unique = true, nullable = false, precision = 10, scale = 0)
  | 	@NotNull
  | 	public long getCodUsuario() {
  | 		return this.codUsuario;
  | 	}
  | 
  | 	public void setCodUsuario(long codUsuario) {
  | 		this.codUsuario = codUsuario;
  | 	}
  | 	@ManyToOne(fetch = FetchType.LAZY)
  | 	@JoinColumn(name = "COD_GRUPOS_USUARIOS", nullable = false)
  | 	@NotNull
  | 	public GruposUsuarios getGruposUsuarios() {
  | 		return this.gruposUsuarios;
  | 	}
  | 
  | 	public void setGruposUsuarios(GruposUsuarios gruposUsuarios) {
  | 		this.gruposUsuarios = gruposUsuarios;
  | 	}
  | 
  | 	@Column(name = "NOMBRE_USUARIO", length = 60)
  | 	@Length(max = 60)
  | 	public String getNombreUsuario() {
  | 		return this.nombreUsuario;
  | 	}
  | 
  | 	public void setNombreUsuario(String nombreUsuario) {
  | 		this.nombreUsuario = nombreUsuario;
  | 	}
  | 
  | 	@Column(name = "PRIORIDAD_USUARIO", precision = 3, scale = 0)
  | 	public Short getPrioridadUsuario() {
  | 		return this.prioridadUsuario;
  | 	}
  | 
  | 	public void setPrioridadUsuario(Short prioridadUsuario) {
  | 		this.prioridadUsuario = prioridadUsuario;
  | 	}
  | 
  | 	@Column(name = "PASSWORD_USUARIO", length = 128)
  | 	@Length(max = 128)
  | 	public String getPasswordUsuario() {
  | 		return this.passwordUsuario;
  | 	}
  | 
  | 	public void setPasswordUsuario(String passwordUsuario) {
  | 		this.passwordUsuario = passwordUsuario;
  | 	}
  | 
  | 	@Column(name = "FILTRO_USUARIO", length = 20)
  | 	@Length(max = 20)
  | 	public String getFiltroUsuario() {
  | 		return this.filtroUsuario;
  | 	}
  | 
  | 	public void setFiltroUsuario(String filtroUsuario) {
  | 		this.filtroUsuario = filtroUsuario;
  | 	}
  | 
  | 	@Column(name = "SNMP_USUARIO", length = 20)
  | 	@Length(max = 20)
  | 	public String getSnmpUsuario() {
  | 		return this.snmpUsuario;
  | 	}
  | 
  | 	public void setSnmpUsuario(String snmpUsuario) {
  | 		this.snmpUsuario = snmpUsuario;
  | 	}
  | 	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
  | 	public Set<TemispConfiguracion> getTemispConfiguracions() {
  | 		return this.temispConfiguracions;
  | 	}
  | 
  | 	public void setTemispConfiguracions(
  | 			Set<TemispConfiguracion> temispConfiguracions) {
  | 		this.temispConfiguracions = temispConfiguracions;
  | 	}
  | 	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
  | 	public Set<FiltrosFichas> getFiltrosFichases() {
  | 		return this.filtrosFichases;
  | 	}
  | 
  | 	public void setFiltrosFichases(Set<FiltrosFichas> filtrosFichases) {
  | 		this.filtrosFichases = filtrosFichases;
  | 	}
  | 	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
  | 	public Set<Operacion> getOperacions() {
  | 		return this.operacions;
  | 	}
  | 
  | 	public void setOperacions(Set<Operacion> operacions) {
  | 		this.operacions = operacions;
  | 	}
  | 	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
  | 	public Set<Macro> getMacros() {
  | 		return this.macros;
  | 	}
  | 
  | 	public void setMacros(Set<Macro> macros) {
  | 		this.macros = macros;
  | 	}
  | 	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
  | 	public Set<NuevaConfiguracion> getNuevaConfiguracions() {
  | 		return this.nuevaConfiguracions;
  | 	}
  | 
  | 	public void setNuevaConfiguracions(
  | 			Set<NuevaConfiguracion> nuevaConfiguracions) {
  | 		this.nuevaConfiguracions = nuevaConfiguracions;
  | 	}
  | 	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
  | 	public Set<Grupo> getGrupos() {
  | 		return this.grupos;
  | 	}
  | 
  | 	public void setGrupos(Set<Grupo> grupos) {
  | 		this.grupos = grupos;
  | 	}
  | 
  | }

For the table USUARIOS; and for GRUPOS_USUARIOS:
@Entity
  | @Table(name = "GRUPOS_USUARIOS")
  | public class GruposUsuarios implements java.io.Serializable {
  | 
  | 	private long codGruposUsuarios;
  | 	private String nombreGruposUsuarios;
  | 	private Set<Usuarios> usuarioses = new HashSet<Usuarios>(0);
  | 	private Set<Filtros> filtroses = new HashSet<Filtros>(0);
  | 	private Set<Equipos> equiposes = new HashSet<Equipos>(0);
  | 
  | 	public GruposUsuarios() {
  | 	}
  | 
  | 	public GruposUsuarios(long codGruposUsuarios) {
  | 		this.codGruposUsuarios = codGruposUsuarios;
  | 	}
  | 	public GruposUsuarios(long codGruposUsuarios, String nombreGruposUsuarios,
  | 			Set<Usuarios> usuarioses, Set<Filtros> filtroses,
  | 			Set<Equipos> equiposes) {
  | 		this.codGruposUsuarios = codGruposUsuarios;
  | 		this.nombreGruposUsuarios = nombreGruposUsuarios;
  | 		this.usuarioses = usuarioses;
  | 		this.filtroses = filtroses;
  | 		this.equiposes = equiposes;
  | 	}
  | 
  | 	@Id
  | 	@Column(name = "COD_GRUPOS_USUARIOS", unique = true, nullable = false, precision = 10, scale = 0)
  | 	@NotNull
  | 	public long getCodGruposUsuarios() {
  | 		return this.codGruposUsuarios;
  | 	}
  | 
  | 	public void setCodGruposUsuarios(long codGruposUsuarios) {
  | 		this.codGruposUsuarios = codGruposUsuarios;
  | 	}
  | 
  | 	@Column(name = "NOMBRE_GRUPOS_USUARIOS", length = 60)
  | 	@Length(max = 60)
  | 	public String getNombreGruposUsuarios() {
  | 		return this.nombreGruposUsuarios;
  | 	}
  | 
  | 	public void setNombreGruposUsuarios(String nombreGruposUsuarios) {
  | 		this.nombreGruposUsuarios = nombreGruposUsuarios;
  | 	}
  | 	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "gruposUsuarios")
  | 	public Set<Usuarios> getUsuarioses() {
  | 		return this.usuarioses;
  | 	}
  | 
  | 	public void setUsuarioses(Set<Usuarios> usuarioses) {
  | 		this.usuarioses = usuarioses;
  | 	}
  | 	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "gruposUsuarios")
  | 	public Set<Filtros> getFiltroses() {
  | 		return this.filtroses;
  | 	}
  | 
  | 	public void setFiltroses(Set<Filtros> filtroses) {
  | 		this.filtroses = filtroses;
  | 	}
  | 	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "gruposUsuarios")
  | 	public Set<Equipos> getEquiposes() {
  | 		return this.equiposes;
  | 	}
  | 
  | 	public void setEquiposes(Set<Equipos> equiposes) {
  | 		this.equiposes = equiposes;
  | 	}
  | 
  | }

Until this point, everything is ok. The problem comes when I create a query from the table GRUPOS_USUARIOS in the Authenticator.java file:

private GruposUsuarios grupos;
  | 
  | [...]
  | 
  | List results2 = em.createQuery("select grupos from GruposUsuarios grupos").getResultList();
  | 
  | grupos = (GruposUsuarios) results2.get(0);
  | 

This table contains more than one entry but this command does not obtain anything. When I debug in Eclipse I get:

grupos = GruposUsuarios_$$_javassist_36 (id=385)

Nevertheless, when I do this for the table USUARIOS I do not have any problem. 

Could anyone help me? Thanks.



View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4116945#4116945

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4116945




More information about the jboss-user mailing list