2011-12-23 3 views
1

Bonjour, je développe un site web Struts + Hibernate. J'ai un problème avec le problème de connexion hibernate. Quand je l'utilise dans mon localhost cela fonctionne correctement. Le problème est que j'utilise le même fichier de configuration avec le nom d'utilisateur et le mot de passe de connexion à la base de données du serveur, la connexion n'étant pas ouverte. J'ai écrit le message d'erreur à un fichier dans le serveur et il montre le message d'erreur comme "Impossible d'ouvrir la connexion".Hibernate ne peut pas ouvrir la connexion au serveur

Voici mon fichier de configuration de mise en veille prolongée

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> 
<?xmsl version="1.0" encoding="UTF-8"?> 
<hibernate-configuration> 
    <session-factory name="session1"> 
    <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> 
    <property name="hibernate.connection.driver_class">org.gjt.mm.mysql.Driver</property> 
    <property name="hibernate.connection.url">jdbc:mysql://localhost/dev_mydatabase?autoReconnect=false</property> 
    <property name="hibernate.connection.username">myusername(not original)</property> 
    <property name="hibernate.connection.password">mypassword(no original)</property> 
    <property name="show_sql">true</property> 
    <property name="hibernate.cglib.use_reflection_optimizer">false</property> 
    <property name="current_session_context_class">managed</property> 
    <property name="hibernate.c3p0.max_statements">50</property> 

    <!-- For seeing hibernate log on the console --> 
    <property name="show_sql">true</property> 
    <!-- End--> 

    <property name="hibernate.hbm2ddl.auto">update</property> 
    <property name="log4j.logger.org.hibernate.SQL">trace</property> 
    <!-- <property name="hbm2ddl.auto">update</property>--> 

<!-- All my mapping files are here.--> 
    </session-factory> 
</hibernate-configuration> 

et dans mon fichier dao j'écris requête comme

SessionFactory sessionFactory = 
        (SessionFactory) ServletActionContext.getServletContext().getAttribute(HibernateListener.KEY_NAME); 
      Session Hibernatesession = sessionFactory.openSession(); 
      Hibernatesession.beginTransaction(); 
      doctorList = Hibernatesession.createCriteria("Hibernate query will be here"). 

Je ne comprends pas quel est le problème survenu ici. Quelqu'un s'il vous plaît aidez-moi.

Merci.

+1

- montrer les stactrace – Bozho

Répondre

1

Le problème est le localhost dans votre configuration d'hibernation comme indiqué ci-dessous. Changez-le pour qu'il pointe vers l'adresse et le port db réels.

<property name="hibernate.connection.url">jdbc:mysql://localhost/dev_mydatabase?autoReconnect=false</property> 
+0

Pas les détails de connexion i est ici fournir des données fictives. Les données réelles dans mon fichier de configuration hibernate sont différentes. J'ai testé la connexion avec une simple page jsp. ça a fonctionné parfaitement. – anoop

+0

@anoopkattodi poster la pile puis –

+0

en fait je ne sais pas comment prendre stracktrace à partir du serveur. J'ai utilisé log4j pour obtenir le journal du serveur. Il dit seulement ** ne pouvait pas ouvrir la connexion ** .. – anoop

Questions connexes