I am using struts2+hibernate3 in my web application.It is working fine. Some times shows Cannot open connection. Follwoing connection statement for connect with hibernate in Action class.
protected SessionFactory getSessionFactory() {
try {
Configuration cfg = new Configuration();
cfg.configure("hibernate.cfg.xml");
SessionFactory factory = cfg.buildSessionFactory();
return factory;
} catch (Exception e) {
log.error("sessionFactory", e);
throw new IllegalStateException(
"Could not locate SessionFactory");
}
}
public List viewAllPromotion() {
System.out.println("finding student instance");
try {
Session session = sessionFactory.openSession();
System.out.println("View All Student");
session.beginTransaction();
List results = session.createQuery("from Student").list();
System.out.println("List got Rsults:"+results.size());
session.close();
return results;
} catch (RuntimeException re) {
log.error("find by example failed", re);
throw re;
}
}
Hibernate configuration file:
<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.url">jdbc:mysql://localhost:3306/marksheet</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">admin</property>
<property name="hibernate.search.autoregister_listeners">false</property>
<property name="hibernate.session_factory_name">MySessionFactory</property>
<property name="current_session_context_class">thread</property>
<property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
<property name="hibernate.connection.pool_size">10</property>
<property name="show_sql">true</property>
<mapping resource="com/rewardz/model/student.hbm.xml" />
<mapping resource="com/rewardz/model/course.hbm.xml" />
<mapping resource="com/rewardz/model/subject.hbm.xml" />
<mapping resource="com/rewardz/model/staff.hbm.xml" />
<mapping resource="com/rewardz/model/Role.hbm.xml" />
<mapping resource="com/rewardz/model/Privilege.hbm.xml" />
<mapping resource="com/rewardz/model/Logtab.hbm.xml" />
</session-factory>
I am getting following error message when i do more transactions.
HTTP Status 500 - type Exception report
message
descriptionThe server encountered an internal error () that prevented it from fulfilling this request.
exception
org.hibernate.exception.JDBCConnectionException: Cannot open connection
note The full stack traces of the exception and its root causes are available in the GlassFish Server Open Source Edition 3.1.1 logs.
can anyone help me to resolve this issue? Thanks in Advance.