我试图在IntelliJ的Hibernate控制台中运行HQL查询。我已将数据源添加到数据源视图,并将我的hibernate.cfg.xml
添加到Hibernate构面,以便在持久性视图中显示。的hibernate.cfg.xml
内容是:在IntelliJ Hibernate控制台中运行查询时MappingNotFoundException
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.url">jdbc:mysql://localhost/mmanager</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.username">root</property>
<property name="connection.password">password</property>
<property name="dialect">com.puca.core.util.db.MySQLInnoDBDialect</property>
<!-- mapping files -->
<mapping resource="com/puca/messagemanager/api/model/XmlApiDlrMapping.hbm.xml"/>
</session-factory>
</hibernate-configuration>
的.hbm.xml
以绿色显示,而如果我把它更改为不存在的文件时显示为红色,所以它似乎的IntelliJ可以找到它。但是,如果我像控制台运行一个简单的查询:
java.lang.RuntimeException: org.hibernate.MappingNotFoundException: resource: com/puca/messagemanager/api/model/XmlApiDlrMapping.hbm.xml not found
at org.hibernate.cfg.Configuration.addResource(Configuration.java:563)
at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1587)
at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1555)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1534)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1508)
at org.hibernate.cfg.Configuration.configure(Configuration.java:1462)
我使用的IntelliJ 10.5.4:
from XmlApiDlrMapping xmlApiDlrMapping
where xmlApiDlrMapping.retries = 5
我得到一个错误。
确保您没有任何路径错字。 – vinodn 2012-04-24 08:49:16
@vinodn我已经确认路径是正确的 – 2012-04-24 09:14:20
尝试将xml移动到另一个位置并手动将其添加到您的类路径中。可能xml不会被复制到classes目录。 或..看看你的类输出文件夹,并检查是否存在xml。试图弄清楚你正在使用哪个类加载器。 – vinodn 2012-04-24 09:24:12