2011-10-10 3 views
2

les gens tout fonctionnait bien il ya quelques jours.erreur se connectant à la base de données

Mais maintenant j'obtiens l'erreur suivante en essayant de me connecter à ma base de données postgres à partir de l'application web.

org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: "org.postgresql.util.PSQLException: Connection refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections." 
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:491) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:401) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 


root cause 

javax.servlet.ServletException: javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: "org.postgresql.util.PSQLException: Connection refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections." 
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:862) 
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791) 
    org.apache.jsp.jsps.app_005fserver_jsp._jspService(app_005fserver_jsp.java:293) 
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 

et voici l'erreur affichée dans la console Eclipse,

javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: "org.postgresql.util.PSQLException: Connection refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections." 
    at org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.getConnection(QueryTagSupport.java:285) 
    at org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.doStartTag(QueryTagSupport.java:168) 
    at org.apache.jsp.jsps.app_005fserver_jsp._jspx_meth_sql_005fquery_005f0(app_005fserver_jsp.java:339) 
    at org.apache.jsp.jsps.app_005fserver_jsp._jspService(app_005fserver_jsp.java:139) 
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) 
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) 
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    at java.lang.Thread.run(Unknown Source) 

Répondre

1

Vérifiez avec ps aux que Postgres est en cours d'exécution:

ps aux|grep postgres 

Vérifiez aussi qu'il écoute:

.oO(~) $ sudo netstat -anp|grep postgres 
tcp  0  0 127.0.0.1:5432   0.0.0.0:*    LISTEN  627/postgres   
tcp  0  0 ::1:5432    :::*     LISTEN  627/postgres   
udp  0  0 ::1:43536    ::1:43536    ESTABLISHED 627/postgres   
unix 2  [ ACC ]  STREAM  LISTENING  1293 627/postgres  /tmp/.s.PGSQL.5432 

Si non, che ck votre postgresql.conf et mettre en écoute '*' si vous avez besoin de se connecter à partir d'external. Si vous essayez de localhost et échouez, essayez d'utiliser le socket.

+0

J'utilise Windows xp os. Je suppose que ce sont des commandes os basées sur unix. Comment puis-je le vérifier? – TechnocraT

+0

Dans le fichier conf son écoute de * ... voici un extrait de celui-ci # - Paramètres de connexion - listen_addresses = '*' – TechnocraT

+0

J'ai résolu le problème. Mon adresse IP a changé de façon dynamique, ce qui a dû être modifié dans le fichier pg_hba.conf et cela a fonctionné. Marquer votre réponse comme acceptée. – TechnocraT

Questions connexes