HibernateUtil
Hola a tod@s,
antes de nada daros la enhorabuena por javaMexico.
Acabo de registrarme porque soy bastante novato en el mundo de java y tengo una duda que no me deja avanzar con el aprendizaje.
Tengo una aplicacion con jsf2 en la cual tengo las entidades, beans, y los mapeos.
Con jsf2 y una conexion jdbc consigo conectarme y listar datos de mysql.
Con jsf 2 e hibernate No consigo hacerlo,
Concretamente sale:
+- Stack Trace
java.lang.ExceptionInInitializerError
at com.hibernate.HibernateUtil.<clinit>(HibernateUtil.java:26)
at com.mkyong.CustomerBeanH.ListarCustomer(CustomerBeanH.java:36)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at javax.el.BeanELResolver.invokeMethod(BeanELResolver.java:737)
at javax.el.BeanELResolver.invoke(BeanELResolver.java:467)
at javax.el.CompositeELResolver.invoke(CompositeELResolver
donde el hibernateutil es:
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
public final class HibernateUtil {
private static SessionFactory sessionFactory;
private HibernateUtil() {}
static {
try {
Configuration cfg = new Configuration();
cfg.configure();
sessionFactory = cfg.buildSessionFactory();
} catch (Throwable ex) {
// Make sure you log the exception, as it might be swallowed
System.err.println("Initial SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
public static Session getSession() {
return sessionFactory.openSession();
}
public static List SQLQuery(String sql) throws Exception {
Session s = null;
Transaction tx = null;
try {
s = HibernateUtil.getSession();
tx = s.beginTransaction();
//Query q = s.createSQLQuery("select * from user");
Query query = s.createSQLQuery(sql);
List rs = query.list();
tx.commit();
return rs;
} catch (Exception e) {
if (tx != null) {
tx.rollback();
throw e;
}
return null;
} finally {
if (s != null)
s.close();
}
}
}
siceramente esto es desesperante.
Gracias por la ayuda.
- Inicie sesión o regístrese para enviar comentarios
Ok. Programaré a pelo con JDBC. Ya intentaré más adelante Hibern
?¿
Bien podrías intentar con
Bien podrías intentar con otro tutorial para intentar crear tu conexión...
Por favor, no olvides colocar tu código entre tags de <code> y </code>
Perfecto.
Gracias.