我有一个使用 JBoss + hibernate 的项目,而不是JPA(不要问我为什么,只要这样假设)。所以我们使用hibernate.cfg.xml 和hibernate Session。好吧,我正在尝试让 JBoss 来处理我的会话,所以我将 hibernate.cfg.xml 更改为如下内容:
<hibernate-configuration>
<session-factory name="unitName">
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.format_sql">false</property>
<property name="hibernate.connection.datasource">MyDS</property>
</session-factory>
</hibernate-configuration>
在我刚刚添加的代码中:
@PersistenceContext(unitName="unitName") protected Session session;
但是当我运行应用程序时,它会:
Caused by: java.lang.IllegalArgumentException: Can't find a persistence unit named 'unitName' in ...
尝试从 更改hibernate.cfg.xml
为persistence.xml
,但仍在使用 Session,我收到类似于此的错误:https ://issues.jboss.org/browse/JBAS-8815
我知道,这个错误有一个解决方法,但我的主要问题是:我可以使用带有普通 Hibernate/Session 和 hibernate.cfg.xml 的托管数据源吗?我做错了什么?
谢谢!