Raftor
asked on
database connection
Hi Experts,
I am having trouble connecting to a mysql database. For simplicity i have two files 1) dbconnect.jsp and 2) display_results.jsp.
--------------dbconnect.js p--------- ---------
<%
String inServer = "irpclanadmin1";
String inDBName = "leave";
String DATABASE_URL = "odbc:mysql://" + inServer + ":3306/" + inDBName;
Class.forName("com.mysql.o dbc.Driver ").newInst ance();
Connection con = DriverManager.getConnectio n(DATABASE _URL, "username","pass");
%>
-------------display_resul ts.jsp
<%@ page language ="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.util.*" %>
<%@ include file="dbconnect.jsp" %>
<%
Statement stmt = con.createStatement();
ResultSet check = stmt.executeQuery("SELECT userSName FROM userdetails");
String userName = "";
while(check.next())
{
userName = check.getString(1);
out.print(userName);
}
%>
The problem is i am getting this displayed when i open display_results.jsp
javax.servlet.ServletExcep tion: com.mysql.odbc.Driver
at org.apache.jasper.runtime. PageContex tImpl.hand lePageExce ption(Page ContextImp l.java:471 )
at org.apache.jsp.display_000 5fresults$ jsp._jspSe rvice(disp lay_0005fr esults$jsp .java:100)
at org.apache.jasper.runtime. HttpJspBas e.service( HttpJspBas e.java:107 )
...
...
Any help would be greatly appreciated
Raftor....
I am having trouble connecting to a mysql database. For simplicity i have two files 1) dbconnect.jsp and 2) display_results.jsp.
--------------dbconnect.js
<%
String inServer = "irpclanadmin1";
String inDBName = "leave";
String DATABASE_URL = "odbc:mysql://" + inServer + ":3306/" + inDBName;
Class.forName("com.mysql.o
Connection con = DriverManager.getConnectio
%>
-------------display_resul
<%@ page language ="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.util.*" %>
<%@ include file="dbconnect.jsp" %>
<%
Statement stmt = con.createStatement();
ResultSet check = stmt.executeQuery("SELECT userSName FROM userdetails");
String userName = "";
while(check.next())
{
userName = check.getString(1);
out.print(userName);
}
%>
The problem is i am getting this displayed when i open display_results.jsp
javax.servlet.ServletExcep
at org.apache.jasper.runtime.
at org.apache.jsp.display_000
at org.apache.jasper.runtime.
...
...
Any help would be greatly appreciated
Raftor....
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Please post the error(s) you get after the corrections i mentioned
ASKER
its the exact same error really:
javax.servlet.ServletExcep tion: com.mysql.jdbc.Driver
at org.apache.jasper.runtime. PageContex tImpl.hand lePageExce ption(Page ContextImp l.java:471 )
at org.apache.jsp.display_000 5fresults$ jsp._jspSe rvice(disp lay_0005fr esults$jsp .java:93)
at org.apache.jasper.runtime. HttpJspBas e.service( HttpJspBas e.java:107 )
at javax.servlet.http.HttpSer vlet.servi ce(HttpSer vlet.java: 853)
at org.apache.jasper.servlet. JspServlet $JspServle tWrapper.s ervice(Jsp Servlet.ja va:201)
at org.apache.jasper.servlet. JspServlet .serviceJs pFile(JspS ervlet.jav a:381)
at org.apache.jasper.servlet. JspServlet .service(J spServlet. java:473)
at javax.servlet.http.HttpSer vlet.servi ce(HttpSer vlet.java: 853)
at org.apache.catalina.core.A pplication FilterChai n.internal DoFilter(A pplication FilterChai n.java:247 )
at org.apache.catalina.core.A pplication FilterChai n.doFilter (Applicati onFilterCh ain.java:1 93)
at org.apache.catalina.core.S tandardWra pperValve. invoke(Sta ndardWrapp erValve.ja va:243)
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 66)
at org.apache.catalina.core.S tandardPip eline.invo ke(Standar dPipeline. java:472)
at org.apache.catalina.core.C ontainerBa se.invoke( ContainerB ase.java:9 43)
at org.apache.catalina.core.S tandardCon textValve. invoke(Sta ndardConte xtValve.ja va:190)
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 66)
at org.apache.catalina.authen ticator.Au thenticato rBase.invo ke(Authent icatorBase .java:475)
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 64)
at org.apache.catalina.core.S tandardPip eline.invo ke(Standar dPipeline. java:472)
at org.apache.catalina.core.C ontainerBa se.invoke( ContainerB ase.java:9 43)
at org.apache.catalina.core.S tandardCon text.invok e(Standard Context.ja va:2347)
at org.apache.catalina.core.S tandardHos tValve.inv oke(Standa rdHostValv e.java:180 )
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 66)
at org.apache.catalina.valves .ErrorDisp atcherValv e.invoke(E rrorDispat cherValve. java:170)
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 64)
at org.apache.catalina.valves .ErrorRepo rtValve.in voke(Error ReportValv e.java:170 )
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 64)
at org.apache.catalina.valves .AccessLog Valve.invo ke(AccessL ogValve.ja va:468)
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 64)
at org.apache.catalina.core.C ontainerBa se.invoke( ContainerB ase.java:9 43)
at org.apache.catalina.core.S tandardEng ineValve.i nvoke(Stan dardEngine Valve.java :174)
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 66)
at org.apache.catalina.core.S tandardPip eline.invo ke(Standar dPipeline. java:472)
at org.apache.catalina.core.C ontainerBa se.invoke( ContainerB ase.java:9 43)
at org.apache.catalina.connec tor.http.H ttpProcess or.process (HttpProce ssor.java: 1027)
at org.apache.catalina.connec tor.http.H ttpProcess or.run(Htt pProcessor .java:1125 )
at java.lang.Thread.run(Threa d.java:479 )
root cause
java.lang.ClassNotFoundExc eption: com.mysql.jdbc.Driver
at org.apache.catalina.loader .WebappCla ssLoader.l oadClass(W ebappClass Loader.jav a:1406)
at org.apache.catalina.loader .WebappCla ssLoader.l oadClass(W ebappCassL oader.java :1254)
at org.apache.jasper.servlet. JasperLoad er.loadCla ss(JasperL oader.java :198)
at org.apache.jasper.servlet. JasperLoad er.loadCla ss(JasperL oader.java :132)
at java.lang.ClassLoader.load ClassInter nal(ClassL oader.java :310)
at java.lang.Class.forName0(N ative Method)
at java.lang.Class.forName(Cl ass.java:1 15)
at org.apache.jsp.display_000 5fresults$ jsp._jspSe rvice(disp lay_0005fr esults$jsp .java:73)
at org.apache.jasper.runtime. HttpJspBas e.service( HttpJspBas e.java:107 )
at javax.servlet.http.HttpSer vlet.servi ce(HttpSer vlet.java: 853)
at org.apache.jasper.servlet. JspServlet $JspServle tWrapper.s ervice(Jsp Servlet.ja va:201)
at org.apache.jasper.servlet. JspServlet .serviceJs pFile(JspS ervlet.jav a:381)
at org.apache.jasper.servlet. JspServlet .service(J spServlet. java:473)
at javax.servlet.http.HttpSer vlet.servi ce(HttpSer vlet.java: 853)
at org.apache.catalina.core.A pplication FilterChai n.internal DoFilter(A pplication FilterChai n.java:247 )
at org.apache.catalina.core.A pplication FilterChai n.doFilter (Applicati onFilterCh ain.java:1 93)
at org.apache.catalina.core.S tandardWra pperValve. invoke(Sta ndardWrapp erValve.ja va:243)
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 66)
at org.apache.catalina.core.S tandardPip eline.invo ke(Standar dPipeline. java:472)
at org.apache.catalina.core.C ontainerBa se.invoke( ContainerB ase.java:9 43)
at org.apache.catalina.core.S tandardCon textValve. invok(Stan dardContex tValve.jav a:190)
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 66)
at org.apache.catalina.authen ticator.Au thenticato rBase.invo ke(Authent icatorBase .java:475)
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 64)
at org.apache.catalina.core.S tandardPip eline.invo ke(Standar dPipeline. java:472)
at org.apache.catalina.core.C ontainerBa se.invoke( ContainerB ase.java:9 43)
at org.apache.catalina.core.S tandardCon text.invok e(Standard Context.ja va:2347)
at org.apache.catalina.core.S tandardHos tValve.inv oke(Standa rdHostValv e.java:180 )
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 66)
at org.apache.catalina.valves .ErrorDisp atcherValv e.invoke(E rrorDispat cherValve. java:170)
t org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 64)
at org.apache.catalina.valves .ErrorRepo rtValve.in voke(Error ReportValv e.java:170 )
t org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 64)
at org.apache.catalina.valves .AccessLog Valve.invo ke(AccessL ogValve.ja va:468)
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 64)
at org.apache.catalina.core.S tandardPip eline.invo ke(Standar dPipeline. java:472)
at org.apache.catalina.core.C ontainerBa se.invoke( ContainerB ase.java:9 43)
at org.apache.catalina.core.S tandardEng ineValve.i nvoke(Stan dardEngine Valve.java :174)
at org.apache.catalina.core.S tandardPip eline.invo keNext(Sta ndardPipel ine.java:5 66)
at org.apache.catalina.core.S tandardPip eline.invo ke(Standar dPipeline. java:472)
at org.apache.catalina.core.C ontainerBa se.invoke( ContainerB ase.java:9 43)
at org.apache.catalina.connec tor.http.H ttpProcess or.process (HttpProce ssor.java: 1027)
at org.apache.catalina.connec tor.http.H ttpProcess or.run(Htt pProcessor .java:1125 )
at java.lang.Thread.run(Threa d.java:479 )
javax.servlet.ServletExcep
at org.apache.jasper.runtime.
at org.apache.jsp.display_000
at org.apache.jasper.runtime.
at javax.servlet.http.HttpSer
at org.apache.jasper.servlet.
at org.apache.jasper.servlet.
at org.apache.jasper.servlet.
at javax.servlet.http.HttpSer
at org.apache.catalina.core.A
at org.apache.catalina.core.A
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.C
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.authen
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.C
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.valves
at org.apache.catalina.core.S
at org.apache.catalina.valves
at org.apache.catalina.core.S
at org.apache.catalina.valves
at org.apache.catalina.core.S
at org.apache.catalina.core.C
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.C
at org.apache.catalina.connec
at org.apache.catalina.connec
at java.lang.Thread.run(Threa
root cause
java.lang.ClassNotFoundExc
at org.apache.catalina.loader
at org.apache.catalina.loader
at org.apache.jasper.servlet.
at org.apache.jasper.servlet.
at java.lang.ClassLoader.load
at java.lang.Class.forName0(N
at java.lang.Class.forName(Cl
at org.apache.jsp.display_000
at org.apache.jasper.runtime.
at javax.servlet.http.HttpSer
at org.apache.jasper.servlet.
at org.apache.jasper.servlet.
at org.apache.jasper.servlet.
at javax.servlet.http.HttpSer
at org.apache.catalina.core.A
at org.apache.catalina.core.A
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.C
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.authen
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.C
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.valves
t org.apache.catalina.core.S
at org.apache.catalina.valves
t org.apache.catalina.core.S
at org.apache.catalina.valves
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.C
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.S
at org.apache.catalina.core.C
at org.apache.catalina.connec
at org.apache.catalina.connec
at java.lang.Thread.run(Threa
ASKER
This is the one file i am using now:
<%@ page language ="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.util.*" %>
<%
String inServer = "irpclanadmin1";
String inDBName = "leave";
String DATABASE_URL = "jdbc:mysql://" + inServer + ":3306/" + inDBName;
Class.forName("com.mysql.j dbc.Driver ").newInst ance();
Connection con = DriverManager.getConnectio n(DATABASE _URL, "user", "pass");
out.print("in display");
Statement stmt = con.createStatement();
ResultSet check = stmt.executeQuery("SELECT userSName FROM userdetails");
int counter = 0;
String userName = "";
while(check.next())
{
counter += 1;
userName = check.getString(1);
out.print(userName);
}
%>
<%@ page language ="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.util.*" %>
<%
String inServer = "irpclanadmin1";
String inDBName = "leave";
String DATABASE_URL = "jdbc:mysql://" + inServer + ":3306/" + inDBName;
Class.forName("com.mysql.j
Connection con = DriverManager.getConnectio
out.print("in display");
Statement stmt = con.createStatement();
ResultSet check = stmt.executeQuery("SELECT userSName FROM userdetails");
int counter = 0;
String userName = "";
while(check.next())
{
counter += 1;
userName = check.getString(1);
out.print(userName);
}
%>
ASKER
This is probably a more helpfull output. This was displayed when i tryed to run the followin code:
<%
String inServer = "irpclanadmin1";
String inDBName = "leave";
String DATABASE_URL = "jdbc:mysql://" + inServer + ":3306/" + inDBName;
Class.forName("com.mysql.j dbc.Driver ").newInst ance();
Connection con = DriverManager.getConnectio n(DATABASE _URL, "user", "pass");
%>
**********************outp ut******** *******
org.apache.jasper.JasperEx ception: Unable to compile class for JSP
An error occurred between lines: 1 and 10 in the jsp file: /leave/dbconnect.jsp
Generated servlet error:
C:\tomcat4\work\Standalone \localhost \examples\ leave\dbco nnect$jsp. java:61: Class org.apache.jsp.Connection not found.
Connection con = DriverManager.getConnectio n(DATABASE _URL, "crafter", "colin");
^
An error occurred between lines: 1 and 10 in the jsp file: /leave/dbconnect.jsp
Generated servlet error:
C:\tomcat4\work\Standalone \localhost \examples\ leave\dbco nnect$jsp. java:61: Undefined variable or class name: DriverManager
Connection con = DriverManager.getConnectio n(DATABASE _URL, "crafter", "colin");
^
2 errors
<%
String inServer = "irpclanadmin1";
String inDBName = "leave";
String DATABASE_URL = "jdbc:mysql://" + inServer + ":3306/" + inDBName;
Class.forName("com.mysql.j
Connection con = DriverManager.getConnectio
%>
**********************outp
org.apache.jasper.JasperEx
An error occurred between lines: 1 and 10 in the jsp file: /leave/dbconnect.jsp
Generated servlet error:
C:\tomcat4\work\Standalone
Connection con = DriverManager.getConnectio
^
An error occurred between lines: 1 and 10 in the jsp file: /leave/dbconnect.jsp
Generated servlet error:
C:\tomcat4\work\Standalone
Connection con = DriverManager.getConnectio
^
2 errors
ASKER
Sorry, that was just displayed because i didnt have the <% include.... %> in the code....
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
>>
> Class.forName("com.mysql.o dbc.Driver ").newInst ance();
That should be:
Class.forName("com.mysql.j dbc.Driver ");
>>
Already mentioned
> Class.forName("com.mysql.o
That should be:
Class.forName("com.mysql.j
>>
Already mentioned
jdbc or odbc is depend on wat type of driver used. Although it is recommended to used JDBC type 4 driver, but there is nothing wrong using JDBC-ODBC bridge.
I think objects have the point, do you sure that u have include the neessasary .jar file in ur classpath? If not, just put in to the folder mentioned by objects.
Good Luck.
I think objects have the point, do you sure that u have include the neessasary .jar file in ur classpath? If not, just put in to the folder mentioned by objects.
Good Luck.
ASKER
Nice one lads. Im not back at work untill tomorrow so ill try that then. Thanks again and ill be in touch....
Raftor...
Raftor...
ASKER
By the way i am running the Tomcat server on one machine and connecting to the mysql database remotely on another machine, i wonder does that make a difference??
>> but there is nothing wrong using JDBC-ODBC bridge.
Can you tell us which bridge is of type:
>>com.mysql.odbc.Driver
?
Can you tell us which bridge is of type:
>>com.mysql.odbc.Driver
?
>> Can you tell us which bridge is of type:
oh, very sorry. I have been not using JDBC-ODBC for a long period of time, so I have forget about the Driver class for JDBC-ODBC is "sun.jdbc.odbc.JdbcOdbcDri ver".....: D
By the way, are u sing the Connector/J driver or MM.MySQL driver?
if you are using MM.MySQL, it should be "org.gjt.mm.mysql.Driver"
correct me if I am wrong.Thanks.
oh, very sorry. I have been not using JDBC-ODBC for a long period of time, so I have forget about the Driver class for JDBC-ODBC is "sun.jdbc.odbc.JdbcOdbcDri
By the way, are u sing the Connector/J driver or MM.MySQL driver?
if you are using MM.MySQL, it should be "org.gjt.mm.mysql.Driver"
correct me if I am wrong.Thanks.
ASKER
Thanks lads...
:-)
ASKER