JSP JSP Datenbank Verbindung

Status
Nicht offen für weitere Antworten.

Kenan89

Bekanntes Mitglied
Hallo, ich habe leider ein Problem beim Verbinden mit der Datenbank.

Meine Serveradresse, habe ich vom cmd mit dem Befehl ipconfig. Dann habe ich den Wert ipv4-Adresse genommen.

Ich habe den Postgres, Version postgresql-9.1.2-1 .
Die Driver habe ich hier für auch heruntergeladen:
postgresql-9.1-901.jdbc3.jar
und
postgresql-9.1-901.jdbc4.jar
(war mir nicht sicher, welchen von beiden ich brauche, also habe ich beide heruntergeladen)

Danach habe ich mit Build Patch die Driver hinzugefügt.

Im Catch Block habe ich mit out.println Text ausgeben lassen, damit ich weiss, dass die Verbindung fehlgeschlagen ist.

Wo liegt jetzt mein Fehler?

Danke im voraus für Antworten.
 
M

Marcinek

Gast
Die DB ist nicht gesartet oder ein falsches Dienstname oder firewall oder falsches Code.
 

Kenan89

Bekanntes Mitglied
Im Postgres schaut es so aus:
Java:
Server(1)
--Testen (localhost: 5432)

Im Code so:
Java:
<%@page import="java.sql.*"%>
<%

Connection conn = null;
		
	String userName = "postgres";
	String userPW = "xy";
	String conURL = "jdbc:postgresql://ipv4-Adresse(abgelesen aus cmd->ipconfig):5432/Testen";
		
		
		try{
			Class.forName("org.postgresql.Driver");
			conn = DriverManager.getConnection(conURL, userName, userPW);
			out.println("Verbindung hergestellt");
		}
		catch(Exception e){
			out.println("Keine Verbindung");
			e.printStackTrace();
		}
		
		try{
			if(conn!=null){
				conn.close();
			}
		}
		catch(SQLException e){
			conn = null;
		}

%>

Ich habe: Postgres Version 9.1.2-1
und die JDBC Driver: postgresql-9.1-901.jdbc3.jar und postgresql-9.1-901.jdbc4.jar mit Build Path
hinzugefügt.

Noch mal alles in diesem Post zusammengefasst. Danke im voraus.
 
M

Marcinek

Gast
Läuft der Tomcat und db auf dem gleichen Rechner?

Die DB muss nicht unbedingt auf allen Adressen horchen.
 

Kenan89

Bekanntes Mitglied
Oh ich sehe grad ich bin verrutscht. Dieses Thema sollte in den JSP Bereich kommen.
Einer der Administratoren soll es bitte verschieben.
 
M

maki

Gast
Oh ich sehe grad ich bin verrutscht. Dieses Thema sollte in den JSP Bereich kommen.
Einer der Administratoren soll es bitte verschieben.
Sehe gerade gar nicht warum das etwas mit JSP zu tun haben sollte.. du kämnpfst mit der Verbindung zur DB über JDBC sonst nix... korrekterweise solltest du das JSP aus dem Titel entfernen ;)


Was steht denn nun im Stacktrace?
 

Kenan89

Bekanntes Mitglied
Aha, er sagt meine Datenbank existiert nicht. Also ein postgresql Exception, obwohl meine Datenbank schon angelegt ist.
Jetzt würde ich raten er verbindet sich mit der falschen Datenbank, aber ich habe Username, Passwort und den korrekten Jdbc Driver.

Code:
org.postgresql.util.PSQLException: FATAL: database "bir" does not exist
	at org.postgresql.core.v3.ConnectionFactoryImpl.readStartupMessages(ConnectionFactoryImpl.java:464)
	at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:112)
	at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
	at org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:125)
	at org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
	at org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
	at org.postgresql.Driver.makeConnection(Driver.java:393)
	at org.postgresql.Driver.connect(Driver.java:267)
	at java.sql.DriverManager.getConnection(DriverManager.java:582)
	at java.sql.DriverManager.getConnection(DriverManager.java:185)
	at org.apache.jsp.DbConnection_jsp._jspService(DbConnection_jsp.java:72)
	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:388)
	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:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Thread.java:619)
 
Zuletzt bearbeitet:

Kenan89

Bekanntes Mitglied
Jetzt benutze ich JDBC 4 und diesmal gibt es folgende Exception:

Code:
java.lang.ClassNotFoundException: org.postgresql.Driver
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
	at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:128)
	at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:169)
	at org.apache.jsp.index_jsp._jspService(index_jsp.java:71)
	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:388)
	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:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Thread.java:619)
 
M

Marcinek

Gast
Dann ist die jar nicht im classpath oder ein jdbc treiber, der nicht für postgresql ist.
 
Zuletzt bearbeitet von einem Moderator:

Kenan89

Bekanntes Mitglied
Also ich habe das so gemacht:
Einmal bin ich manuel ins Web-inf und habe in lib den Driver hineinkopiert und einmal habe ich mit Eclipse:
Java-Resources -> Libraries -> WebApp Libraries (Rechtsklick -> Build Path -> Add External Link)

Damit müsste doch der Driver eigentlich im classpath sein.

Den Driver und den Postgresql habe ich aus der Website des Herstellers.
Nochmal meine Daten:
Postgresql Version 8.4
jdbcDriver4
jdk 1.6


Vielleicht liegt es eiinfach nur an den Rechten. Ich habe postgresql zwar installiert aber nicht als administrator(mein Benutzerkonto ist Administrator, aber trotzdem kann man ja mit Rechtsklick als admin ausführen). Ist das eine Fehlerquelle?
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben