Good morning, everyone! I have a problem with the objects in Hibernate.
This is the method I use to extract the object:
public Moto loadMotoId(SessionFactory SessionBuilder, int idMoto) {
Session conexion = SessionBuilder.openSession();
Query q = conexion.createQuery("FROM Moto WHERE id = :_nid");
q.setParameter("_nid", idMoto);
List listMotos = q.list();
Moto moto = new Moto();
if (!listMotos.isEmpty()) {
moto = (Moto) listMotos.get(0);
} else {
listMotos = null;
}
conexion.close();
return moto;
}
This is part of the servlet code:
HttpSession session = request.getSession(true);
Operaciones objop = new Operaciones();
Moto moto=objop.loadMotoId(SessionBuilder, idMoto);
session.setAttribute("moto", moto);
When I want to show the different attributes of the object in the jsp, the id fields related to other tables do not show them to me, for example:
I pick up the object previously saved in the servlet in the session variable:
<%
Moto moto = (Moto) session.getAttribute("moto");
%>
Part of the html code of a table where I want to show the type of motorbike of the motorbike object, which is a key to another table in my bbdd:
<td><%=moto.getTipoMoto().getNombre()%></td>
Well, in that line I get an error, the rest of the fields shows them correctly except for those that are foundational keys to other tables and I do not know why it is. Let's see if you can give me a cable. Thanks !!
I add the Moto class here:
package POJO;
// Generated 30-ene-2018 13:25:55 by Hibernate Tools 4.3.1
import java.util.HashSet;
import java.util.Set;
/**
* Moto generated by hbm2java
*/
public class Moto implements java.io.Serializable {
private Integer id;
private Diseno diseno;
private TipoMoto tipoMoto;
private String marca;
private String modelo;
private int cilindrada;
private int caballos;
private float aceleracion;
private float consumo;
private float velocidadMax;
private float precioBase;
private String imagen;
private int stock;
private Set reservas = new HashSet(0);
public Moto() {
}
public Moto(Diseno diseno, TipoMoto tipoMoto, String marca, String modelo, int cilindrada, int caballos, float aceleracion, float consumo, float velocidadMax, float precioBase, String imagen, int stock) {
this.diseno = diseno;
this.tipoMoto = tipoMoto;
this.marca = marca;
this.modelo = modelo;
this.cilindrada = cilindrada;
this.caballos = caballos;
this.aceleracion = aceleracion;
this.consumo = consumo;
this.velocidadMax = velocidadMax;
this.precioBase = precioBase;
this.imagen = imagen;
this.stock = stock;
}
public Moto(Diseno diseno, TipoMoto tipoMoto, String marca, String modelo, int cilindrada, int caballos, float aceleracion, float consumo, float velocidadMax, float precioBase, String imagen, int stock, Set reservas) {
this.diseno = diseno;
this.tipoMoto = tipoMoto;
this.marca = marca;
this.modelo = modelo;
this.cilindrada = cilindrada;
this.caballos = caballos;
this.aceleracion = aceleracion;
this.consumo = consumo;
this.velocidadMax = velocidadMax;
this.precioBase = precioBase;
this.imagen = imagen;
this.stock = stock;
this.reservas = reservas;
}
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
public Diseno getDiseno() {
return this.diseno;
}
public void setDiseno(Diseno diseno) {
this.diseno = diseno;
}
public TipoMoto getTipoMoto() {
return this.tipoMoto;
}
public void setTipoMoto(TipoMoto tipoMoto) {
this.tipoMoto = tipoMoto;
}
public String getMarca() {
return this.marca;
}
public void setMarca(String marca) {
this.marca = marca;
}
public String getModelo() {
return this.modelo;
}
public void setModelo(String modelo) {
this.modelo = modelo;
}
public int getCilindrada() {
return this.cilindrada;
}
public void setCilindrada(int cilindrada) {
this.cilindrada = cilindrada;
}
public int getCaballos() {
return this.caballos;
}
public void setCaballos(int caballos) {
this.caballos = caballos;
}
public float getAceleracion() {
return this.aceleracion;
}
public void setAceleracion(float aceleracion) {
this.aceleracion = aceleracion;
}
public float getConsumo() {
return this.consumo;
}
public void setConsumo(float consumo) {
this.consumo = consumo;
}
public float getVelocidadMax() {
return this.velocidadMax;
}
public void setVelocidadMax(float velocidadMax) {
this.velocidadMax = velocidadMax;
}
public float getPrecioBase() {
return this.precioBase;
}
public void setPrecioBase(float precioBase) {
this.precioBase = precioBase;
}
public String getImagen() {
return this.imagen;
}
public void setImagen(String imagen) {
this.imagen = imagen;
}
public int getStock() {
return this.stock;
}
public void setStock(int stock) {
this.stock = stock;
}
public Set getReservas() {
return this.reservas;
}
public void setReservas(Set reservas) {
this.reservas = reservas;
}
}