嘿我做了一个EJB程序,我从我的SQL数据库创建了实体类.一切正常,它可以连接到我的数据库,但由于某种原因我现在得到这个错误.我使用glassfish v3和netbeans ide 6.8
WARNING: Can not find resource bundle for this logger. class name that failed: com.sun.gjc.common.DataSourceObjectBuilder
SEVERE: jdbc.exc_cnfe_ds
java.lang.ClassNotFoundException: com.mysql.jdbc.jdbc2.optional.MysqlDataSource
这里有更多随机错误.
WARNING: RAR5038:Unexpected exception while creating resource for pool mysql_carrent_rootPool. Exception : javax.resource.ResourceException: Class name is wrong or classpath is not set for : com.mysql.jdbc.jdbc2.optional.MysqlDataSource
WARNING: RAR5117 : Failed to obtain/create connection from connection pool [ mysql_carrent_rootPool ]. Reason : com.sun.appserv.connectors.internal.api.PoolingException: Class name is wrong or classpath is not set for : com.mysql.jdbc.jdbc2.optional.MysqlDataSource
WARNING: RAR5114 : Error allocating connection : [Error in allocating a connection. Cause: Class name is wrong or classpath is not set for : com.mysql.jdbc.jdbc2.optional.MysqlDataSource]
WARNING: Could not obtain connection metadata
java.sql.SQLException: Error in allocating a connection. Cause: Class name is wrong or classpath is not set for : com.mysql.jdbc.jdbc2.optional.MysqlDataSource
我不明白为什么它不会找到类路径,即使它使我的实体从数据库和我的程序以前工作.我没有改变任何可能的代码,但没有改变类路径甚至数据库.
谢谢你的时间!
解决方法:
它不在CLASSPATH中.你不应该认为,因为在一个场景中有效的东西对另一个场景来说没问题.你没有正确设置;相信JVM.
Glassfish或NetBeans都没有做正确的事情.它是CLASSPATH – 搞清楚.
这是一个网络应用程序? MySQL JAR是否在WAR的WEB-INF / lib目录中?如果没有,请把它放在那里.
Glassfish是否要求JDBC驱动程序JAR进入server / lib目录?如果是的话,把它放在那里.
该驱动程序类名称是否正确?这不是我用来连接MySQL的东西.为什么你认为这是正确的?核实.