1.需要在hibernate.propeties中设置以下两个.在jboss环境中
hibernate.transaction.manager_lookup_class 为org.hibernate.transaction.JBossTransactionManagerLookup
hibernate.current_session_context_class jta
如果不在jboss环境.则为thread.否则设置为jta环境的话,需要设置
<property name="transaction.manager_lookup_class">org.hibernate.transaction.JBossTransactionManagerLookup</property>
否则会提示No TransactionManagerLookup specified
但是就算设置了transaction.manager_loopup_class。也会提示错误Could not locate TransactionManager。因为根本就不在jboss事务中
2.在jboss环境中需要设置为jta和manager_lookup_class为JBossTransactionManagerLookup.
否则如果jboss环境设置为thread。则提示save is not valid without active transaction.这个时候需要用jta.以便jboss托管事务
3.有关jboss环境数据源的设置
在mysql-ds.xml中设置如下数据源
<jndi-name>V3ConfigDs</jndi-name>
<connection-url>jdbc:mysql://localhost:3306/v3test</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>root</user-name>
<password>r</password>
对应的在hibernate.cfg.xml文件中需要设置数据源的jndi-name名.跟mysql-ds.xml中一致即可.