Link to home
Start Free TrialLog in
Avatar of ginola29
ginola29

asked on

JDBC Driver cannot be loaded

I am currently doing an application which includes using stateless session bean, i am using oracle jdeveloper 10g as my IDE, bea weblogic 6.1 as my app server and mysql for database.. i have this code tat connects to the database however when i test my client script, there is this exception

java.sql.SQLException: JDBC driver class cannot be loaded

      at Db.Database.<init>(Database.java:22)

      at Member.MemberEJBBean.addMember(MemberEJBBean.java:23)

      at Member.MemberEJBBean_fow6gt_EOImpl.addMember(MemberEJBBean_fow6gt_EOImpl.java:36)

      at Member.MemberEJBBean_fow6gt_EOImpl_WLSkel.invoke(Unknown Source)

      at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:360)

      at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)

      at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:329)

      at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)

      at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:140)

      at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:121)


anyone know y? i have already included the jar file in the library of the IDE
Avatar of Venci75
Venci75

What's the code that creates the conenction? Do you call:
Class.forName("oracle.jdbc.driver.OracleDriver");
Avatar of ginola29

ASKER

private final String driver = "com.mysql.jdbc.Driver";
private final String url = "jdbc:mysql://localhost/dvd";
private final String user = "";
private final String password = "";

/**
 * The constructor attempts to load the jdbc driver class.
 * If failed, the ClassNotFoundException is rethrown as SQLException
 **/
public Database() throws SQLException {
      try {
            Class.forName(driver);
      } catch (ClassNotFoundException ce) {
            throw (new SQLException("JDBC driver class cannot be loaded"));
      }
}
/**
 * Get a new connection.  User must close it after used.
 **/
public Connection getConnection() throws SQLException {
      return DriverManager.getConnection(url, user, password);
}

by the way, i am using mysql...i tik i have to setup a datasource at the weblogic console, but i just can't get it right, anyone can help me with that?
Avatar of Mick Barry
Its not finding your driver class, make sure the jar is available to the WL class loader.
eg. put the jar in <webapp>/WEB-INF/lib
erm..my project doesn't have a web-inf folder, must i just create that folder? just under the folder <webapp>
yes where <webapp> is the folder that you webapplication is in.
i still got the same error, driver cannot be loaded, must i do some configuration between weblogic server and mysql? can i know hw to if it is a must?
ASKER CERTIFIED SOLUTION
Avatar of Mick Barry
Mick Barry
Flag of Australia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
there are some errors i have encounter

i entered:
name : dvdProject
url: jdbc:mysql://localhost/dvd
driver classname: com.mysql.jdbc.Driver
properties: user=root

the rest all blanks

then i went to the target tab, and tried to deploy it, errors are returned.

weblogic.management.DistributedOperationUpdateException: Error creating connection pool - with nested exception:
[weblogic.management.DeploymentException: Error creating connection pool - with nested exception:
[weblogic.common.ResourceException: Cannot load driver class: com.mysql.jdbc.Driver]]
      at weblogic.management.internal.ConfigurationMBeanImpl.updateConfigMBeans(ConfigurationMBeanImpl.java:518)
      at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:376)
      at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1557)
      at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1525)
      at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:468)
      at weblogic.management.in--------------- nested within: ------------------
weblogic.management.console.utils.SetException: An error occurred while updating Targets-Server on Proxy for mydomain:Name=dvdProject,Type=JDBCConnectionPool - with nested exception:
[java.lang.reflect.InvocationTargetException - with target exception:
[weblogic.management.DistributedManagementException: Distributed Management [1 exceptions]]]
      at weblogic.management.console.actions.mbean.DoEditMBeanAction.perform(DoEditMBeanAction.java:155)
      at weblogic.management.console.actions.internal.ActionServlet.doAction(ActionServlet.java:171)
      at weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServlet.java:85)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:262)
      at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:198)
      at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2678)
      at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2412)
      at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:140)
      at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:121)
still looks like its not finding your driver class
chechk the jar contains the specified class
ok i got it solve, the classpath wasnt' set correctly at the right place in the startweblogic.cmd .. thx anyway