Hola Marco Lamentó decirte que este es un grupo de Nhibernate, hibernaré para .Net. Quizás no te podamos dar mucha ayuda en tu problema. Trata en el grupo de Hibernate directamente.
Saludos Néstor Rodríguez Sent from my iPhone > On Oct 5, 2013, at 12:34 AM, Rene Marco Gudmunddsson <[email protected]> > wrote: > > hola y mucho gusto tengo el siguiente problemama: al llamar a un dato de la > BD pues me devuelve null, siendo que le dato existe enla BD, y bueno lei que > es posible que si el createQuery() devuelve nul es probable que no se haya > inicializado la sesion y por ello el "Null", bueno aca muestro parte del > codigo: > pojos Administrador.java > > package modelo; > // Generated 03-oct-2013 20:45:37 by Hibernate Tools 3.2.1.GA > > import java.util.Date; > import java.util.HashSet; > import java.util.Set; > import javax.persistence.CascadeType; > import javax.persistence.Column; > import javax.persistence.Entity; > import javax.persistence.FetchType; > import javax.persistence.Id; > import javax.persistence.OneToMany; > import javax.persistence.Table; > import javax.persistence.Temporal; > import javax.persistence.TemporalType; > /** > * Administrador generated by hbm2java > */ > @Entity > @Table(name="administrador" > ,schema="public" > ) > public class Administrador implements java.io.Serializable { > > private String admiCi; > private int factId; > private String nombre; > private String primerApellido; > private String segundoApellido; > private Date fechaNac; > private String sexo; > private String ciudadOrigen; > private String EMail; > private String estadoCivil; > private String telefonoMovil; > private String telefonoFijo; > private String domicilio; > private String cuenta; > private String clave; > private Set gestionas = new HashSet(0); > public Administrador() { > } > > public Administrador(String admiCi, int factId) { > this.admiCi = admiCi; > this.factId = factId; > } > public Administrador(String admiCi, int factId, String nombre, String > primerApellido, String segundoApellido, Date fechaNac, String sexo, String > ciudadOrigen, String EMail, String estadoCivil, String telefonoMovil, String > telefonoFijo, String domicilio, String cuenta, String clave, Set gestionas) { > this.admiCi = admiCi; > this.factId = factId; > this.nombre = nombre; > this.primerApellido = primerApellido; > this.segundoApellido = segundoApellido; > this.fechaNac = fechaNac; > this.sexo = sexo; > this.ciudadOrigen = ciudadOrigen; > this.EMail = EMail; > this.estadoCivil = estadoCivil; > this.telefonoMovil = telefonoMovil; > this.telefonoFijo = telefonoFijo; > this.domicilio = domicilio; > this.cuenta = cuenta; > this.clave = clave; > this.gestionas = gestionas; > } > > @Id > > @Column(name="admi_ci", unique=true, nullable=false, length=15) > public String getAdmiCi() { > return this.admiCi; > } > > public void setAdmiCi(String admiCi) { > this.admiCi = admiCi; > } > > @Column(name="fact_id", nullable=false) > public int getFactId() { > return this.factId; > } > > public void setFactId(int factId) { > this.factId = factId; > } > > @Column(name="nombre", length=15) > public String getNombre() { > return this.nombre; > } > > public void setNombre(String nombre) { > this.nombre = nombre; > } > > @Column(name="primer_apellido", length=15) > public String getPrimerApellido() { > return this.primerApellido; > } > > public void setPrimerApellido(String primerApellido) { > this.primerApellido = primerApellido; > } > > @Column(name="segundo_apellido", length=20) > public String getSegundoApellido() { > return this.segundoApellido; > } > > public void setSegundoApellido(String segundoApellido) { > this.segundoApellido = segundoApellido; > } > @Temporal(TemporalType.DATE) > @Column(name="fecha_nac", length=13) > public Date getFechaNac() { > return this.fechaNac; > } > > public void setFechaNac(Date fechaNac) { > this.fechaNac = fechaNac; > } > > @Column(name="sexo", length=15) > public String getSexo() { > return this.sexo; > } > > public void setSexo(String sexo) { > this.sexo = sexo; > } > > @Column(name="ciudad_origen", length=20) > public String getCiudadOrigen() { > return this.ciudadOrigen; > } > > public void setCiudadOrigen(String ciudadOrigen) { > this.ciudadOrigen = ciudadOrigen; > } > > @Column(name="e_mail", length=30) > public String getEMail() { > return this.EMail; > } > > public void setEMail(String EMail) { > this.EMail = EMail; > } > > @Column(name="estado_civil", length=15) > public String getEstadoCivil() { > return this.estadoCivil; > } > > public void setEstadoCivil(String estadoCivil) { > this.estadoCivil = estadoCivil; > } > > @Column(name="telefono_movil", length=15) > public String getTelefonoMovil() { > return this.telefonoMovil; > } > > public void setTelefonoMovil(String telefonoMovil) { > this.telefonoMovil = telefonoMovil; > } > > @Column(name="telefono_fijo", length=15) > public String getTelefonoFijo() { > return this.telefonoFijo; > } > > public void setTelefonoFijo(String telefonoFijo) { > this.telefonoFijo = telefonoFijo; > } > > @Column(name="domicilio", length=40) > public String getDomicilio() { > return this.domicilio; > } > > public void setDomicilio(String domicilio) { > this.domicilio = domicilio; > } > > @Column(name="cuenta", length=15) > public String getCuenta() { > return this.cuenta; > } > > public void setCuenta(String cuenta) { > this.cuenta = cuenta; > } > > @Column(name="clave", length=15) > public String getClave() { > return this.clave; > } > > public void setClave(String clave) { > this.clave = clave; > } > @OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, > mappedBy="administrador") > public Set getGestionas() { > return this.gestionas; > } > > public void setGestionas(Set gestionas) { > this.gestionas = gestionas; > } > > > } > aca el Administrador.hbm > > <?xml version="1.0"?> > <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD > 3.0//EN" > "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> > <!-- Generated 03-oct-2013 20:45:38 by Hibernate Tools 3.2.1.GA --> > <hibernate-mapping> > <class name="modelo.Administrador" table="administrador" schema="public"> > <id name="admiCi" type="string"> > <column name="admi_ci" length="15" /> > <generator class="assigned" /> > </id> > <property name="factId" type="int"> > <column name="fact_id" not-null="true" /> > </property> > <property name="nombre" type="string"> > <column name="nombre" length="15" /> > </property> > <property name="primerApellido" type="string"> > <column name="primer_apellido" length="15" /> > </property> > <property name="segundoApellido" type="string"> > <column name="segundo_apellido" length="20" /> > </property> > <property name="fechaNac" type="date"> > <column name="fecha_nac" length="13" /> > </property> > <property name="sexo" type="string"> > <column name="sexo" length="15" /> > </property> > <property name="ciudadOrigen" type="string"> > <column name="ciudad_origen" length="20" /> > </property> > <property name="EMail" type="string"> > <column name="e_mail" length="30" /> > </property> > <property name="estadoCivil" type="string"> > <column name="estado_civil" length="15" /> > </property> > <property name="telefonoMovil" type="string"> > <column name="telefono_movil" length="15" /> > </property> > <property name="telefonoFijo" type="string"> > <column name="telefono_fijo" length="15" /> > </property> > <property name="domicilio" type="string"> > <column name="domicilio" length="40" /> > </property> > <property name="cuenta" type="string"> > <column name="cuenta" length="15" /> > </property> > <property name="clave" type="string"> > <column name="clave" length="15" /> > </property> > <set name="gestionas" inverse="true"> > <key> > <column name="admi_ci" length="15" not-null="true" /> > </key> > <one-to-many class="modelo.Gestiona" /> > </set> > </class> > </hibernate-mapping> > aca el dao: > package dao; > import java.util.List; > import modelo.Administrador; > /** > * > * @author Gudmundsson > */ > public interface AdministradorDao { > public Administrador findByAdministrador (Administrador administrador); > public Administrador loginAdmi (Administrador administrador); > public List<Administrador>findAll(); > } > el DaoImpl > package dao; > import java.util.List; > import modelo.Administrador; > import org.hibernate.Session; > import util.HibernateUtil; > /** > * > * @author Gudmundsson > */ > public class AdministradorDaoImpl implements AdministradorDao{ > @Override > public Administrador findByAdministrador(Administrador administrador) { > Administrador admi = null; > Session sesion = > HibernateUtil.getSessionFactory().getCurrentSession(); > String sql = "FROM Administrador WHERE > cuenta='"+administrador.getCuenta()+"'"; > try{ > sesion.beginTransaction(); > admi = (Administrador) sesion.createQuery(sql).uniqueResult(); > sesion.beginTransaction().commit(); > } catch (Exception e){ > sesion.beginTransaction().rollback(); > } > return admi; > } > @Override > public Administrador loginAdmi(Administrador administrador) { > Administrador admi = this.findByAdministrador(administrador); > if ( admi != null ){ > if ( !administrador.getClave().equals(admi.getClave()) ){ > return admi = null; > } > } > return admi; > } > @Override > public List<Administrador> findAll() { > List<Administrador> listaAdmi = null; > Session sesion = > HibernateUtil.getSessionFactory().getCurrentSession(); > String sql = "FROM Administrador"; > try{ > sesion.beginTransaction(); > listaAdmi = sesion.createQuery(sql).list(); > sesion.beginTransaction().commit(); > } catch (Exception e){ > sesion.beginTransaction().rollback(); > } > return listaAdmi; > } > } > aca el loginAdmiBean: > package beans; > import dao.AdministradorDao; > import dao.AdministradorDaoImpl; > import java.awt.event.ActionEvent; > import java.io.Serializable; > import javax.faces.bean.ManagedBean; > import javax.enterprise.context.SessionScoped; > import javax.faces.application.FacesMessage; > import javax.faces.context.FacesContext; > import javax.inject.Named; > import modelo.Administrador; > import org.primefaces.context.RequestContext; > import util.MyUtil; > /** > * > * @author Gudmundsson > */ > @Named(value = "loginAdmiBean") > @SessionScoped > public class loginAdmiBean implements Serializable{ > private Administrador admi; > private AdministradorDao adminDao; > > public loginAdmiBean() { > this.adminDao = new AdministradorDaoImpl(); > if ( this.admi == null ){ > this.admi = new Administrador(); > } > } > public Administrador getAdmi() { > return admi; > } > public void setAdmin(Administrador admi) { > this.admi = admi; > } > public AdministradorDao getAdminDao() { > return adminDao; > } > public void setAdminDao(AdministradorDao adminDao) { > this.adminDao = adminDao; > } > > > public void loginAdministrador(ActionEvent actionEvent){ > RequestContext context = RequestContext.getCurrentInstance(); > FacesMessage msg; > boolean loggedIn = false; > String ruta = ""; > this.admi = new Administrador(); > this.admi = this.adminDao.loginAdmi(this.admi); > System.out.println("El dato enviado es :" + this.admi); > if ( this.admi != null ){ > loggedIn = true; > > FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("administrador", > this.admi.getCuenta()); > msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Sea usted > Bienvenido!", this.admi.getCuenta()); > ruta = > MyUtil.basepathlogin()+"views/administrador/indexAdmin.xhtml"; > } else { > loggedIn = false; > msg = new FacesMessage(FacesMessage.SEVERITY_WARN, "Error al > Iniciar la Sesion", "Cuenta y/o Clave incorrecta!"); > if ( this.admi == null ){ > this.admi = new Administrador(); > } > } > FacesContext.getCurrentInstance().addMessage(null, msg); > context.addCallbackParam("loggedIn", ruta); > context.addCallbackParam("ruta", ruta); > } > } > y finalmente el loginAdmi.xhtml: > > bueno no me dejo pegar pero es donde llamo al dato es loginAdmiBean la linea > " this.admi = this.adminDao.loginAdmi(this.admi);" me retorna NULL y no > tengo idea del porque pues no me bota ningun error hasta que coloque el > System.out.println, no me hubiera enterado del NULL, porfavor busco > ILUMINACION estoy buscando respuestas hace 3 dias gracias y saludos!! me > quedo en espera de sus consejos!!! > > > > -- > -- > Para escribir al Grupo, hágalo a esta dirección: > [email protected] > Para más, visite: http://groups.google.com/group/NHibernate-Hispano > --- > Has recibido este mensaje porque estás suscrito al grupo "NHibernate-Hispano" > de Grupos de Google. > Para anular la suscripción a este grupo y dejar de recibir sus correos > electrónicos, envía un correo electrónico a > [email protected]. > Para obtener más opciones, visita https://groups.google.com/groups/opt_out. -- -- Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups.google.com/group/NHibernate-Hispano --- Has recibido este mensaje porque estás suscrito al grupo "NHibernate-Hispano" de Grupos de Google. Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [email protected]. Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
