0

使用 Jboss 7.1.1。我从 localhost:9990/console 连接到数据库。连接测试是正确的。但是当我尝试将某些东西放入数据库时​​,会发生异常:

Error creating Session: org.hibernate.HibernateException: Specified JDBC Driver com.mysql.jdbc.Driver class not found

我的hibernate.cfg.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
 "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
    <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="hibernate.connection.password">root</property>
    <property   name="hibernate.connection.url">
     jdbc:mysql://localhost:3306/test</property>
    <property name="hibernate.connection.username">root</property>
    <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
    <property name="show_sql">true</property>
    <property name="hbm2ddl.auto">create</property>

     <mapping resource="MyApp/WebApp/model/Member.hbm.xml"/>
</session-factory>

我的会话工厂:

static
{
    try
    {
        Configuration configuration = new Configuration().configure();
        serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
        sessionFactory = configuration.buildSessionFactory(serviceRegistry);
    }
    catch (HibernateException he)
    {
        System.err.println("Error creating Session: " + he);
        throw new ExceptionInInitializerError(he);
    }

在 JBOSSHOME/modules/com/mysql/main 里面是 module.xml 和连接器。我不需要将连接器放在 WEB-INFlib 文件夹中。或者我需要吗?

有任何想法吗??

好的..我找到了解决方案。我将连接器 jar 放入 JBOSSHOME/modules/org/hibernate/main 并更改了 module.xml ......我不知道为什么会这样......但它可以工作!!

4

2 回答 2

0

在我的 domain.xml(或standalone.xml)中,我有这个:

<datasource jta="true" jndi-name="java:jboss/Datasource" pool-name="MySqlDS" enabled="true" use-java-context="true" use-ccm="true">
    <connection-url>jdbc:mysql://localhost:3306/DBName</connection-url>
    <driver>com.mysql</driver>
    <security>
        <user-name>name</user-name>
        <password>pass</password>
    </security>
</datasource>
<drivers>
    <driver name="com.mysql"module="com.mysql">
    <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
    </driver>
</drivers>

标签内:

<subsystem xmlns="urn:jboss:domain:datasources:1.1">
于 2013-07-10T19:44:57.230 回答
0

您从 Hibernate 收到的错误消息

Error creating Session: org.hibernate.HibernateException: Specified JDBC Driver com.mysql.jdbc.Driver class not found

发生是因为com.mysql.jdbc.Driver您的类路径中缺少该类,即。包含它的罐子应该在WEB-INF/lib. 将 mysql 连接器 jar 添加到该文件夹​​。

于 2013-07-10T19:34:41.867 回答