Добрый вечер, я получил вышеописанное исключение при использовании Hibernate с JSF, я видел это много раз в прошлом, и основная причина заключалась в следующем: <session-factory name="sessionFactory">
, поэтому я удалил имя и изменить сгенерированный код для создания SessionFactory от:java.lang.IllegalStateException: Не удалось найти SessionFactory в JNDI
protected SessionFactory getSessionFactory() {
try {
return (SessionFactory) new InitialContext()
.lookup("SessionFactory");
} catch (Exception e) {
log.error("Could not locate SessionFactory in JNDI", e);
throw new IllegalStateException(
"Could not locate SessionFactory in JNDI");
}
}
к тому, что:
protected SessionFactory getSessionFactory() {
try {
return new Configuration().configure("hibernate.cfg.xml").buildSessionFactory();
} catch (Exception e) {
log.error("Could not locate SessionFactory in JNDI", e);
throw new IllegalStateException(
"Could not locate SessionFactory in JNDI");
}
}
он работал хорошо со мной, но на этот раз я не имею никакого решения к нему, вы не знаете где проблема?
hibernate-cfg.xml
<hibernate-configuration>
<session-factory>
<property name="hibernate.bytecode.use_reflection_optimizer">false</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.password">root</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/GUNO</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.search.autoregister_listeners">false</property>
</session-factory>