Primero de todo os presento mi escenario.
Mi estructura de archivos es la siguiente:
Contenido de mi "HibernateUtil.java":
Código Java:
Ver original
import org.hibernate.cfg.AnnotationConfiguration; import org.hibernate.SessionFactory; /** * Hibernate Utility class with a convenient method to get Session Factory * object. * * @author John Doe */ public class HibernateUtil { private static final SessionFactory sessionFactory; static { try { // Create the SessionFactory from standard (hibernate.cfg.xml) // config file. sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory(); // Log the exception. } } public static SessionFactory getSessionFactory() { return sessionFactory; } }
Contenido de mi Hibernate.reveng.xml:
Código XML:
Ver original
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-reverse-engineering PUBLIC "-//Hibernate/Hibernate Reverse Engineering DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd"> <hibernate-reverse-engineering> <schema-selection match-catalog="elecciones"/> <table-filter match-name="partidos"/> <table-filter match-name="personas"/> </hibernate-reverse-engineering>
Contenido de mi hibernate.cfg.xml:
Código XML:
Ver original
<?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.dialect">org.hibernate.dialect.MySQLDialect</property> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.url">jdbc:mysql://localhost/elecciones</property> <property name="hibernate.connection.username">root</property> <mapping resource="hr/Personas.hbm.xml"/> <mapping resource="hr/Partidos.hbm.xml"/> </session-factory> </hibernate-configuration>
Contenido de Partidos.java:
Código Java:
Ver original
package hr; // Generated 01-jun-2015 18:58:02 by Hibernate Tools 4.3.1 /** * Partidos generated by hbm2java */ public Partidos() { } this.partido = partido; } this.partido = partido; this.presupuesto = presupuesto; this.ideologia = ideologia; } return this.partido; } this.partido = partido; } return this.presupuesto; } this.presupuesto = presupuesto; } return this.ideologia; } this.ideologia = ideologia; } }
Contenido de Partidos.hbm.xml:
Código XML:
Ver original
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> <!-- Generated 01-jun-2015 18:58:02 by Hibernate Tools 4.3.1 --> <hibernate-mapping> <class name="hr.Partidos" table="partidos" catalog="elecciones" optimistic-lock="version"> <id name="partido" type="string"> <column name="PARTIDO" length="30" /> <generator class="assigned" /> </id> <property name="presupuesto" type="java.lang.Integer"> <column name="PRESUPUESTO" /> </property> <property name="ideologia" type="string"> <column name="IDEOLOGIA" length="30" /> </property> </class> </hibernate-mapping>
¿Cuando surge el problema?
Cuando intento ejecutar esta básica consulta HQL.
Código:
Cuando la ejecuto me sale el siguiente error.from Partidos
Código:
org.hibernate.hql.internal.ast.QuerySyntaxException: Partidos is not mapped [from Partidos] at org.hibernate.hql.internal.ast.QuerySyntaxException.generateQueryException(QuerySyntaxException.java:96) at org.hibernate.QueryException.wrapWithQueryString(QueryException.java:120) at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:234) at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:158) at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:126) at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:88) at org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:190) at org.hibernate.internal.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:301) at org.hibernate.internal.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:236) at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1796) Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: Partidos is not mapped at org.hibernate.hql.internal.ast.util.SessionFactoryHelper.requireClassPersister(SessionFactoryHelper.java:189) at org.hibernate.hql.internal.ast.tree.FromElementFactory.addFromElement(FromElementFactory.java:109) at org.hibernate.hql.internal.ast.tree.FromClause.addFromElement(FromClause.java:95) at org.hibernate.hql.internal.ast.HqlSqlWalker.createFromElement(HqlSqlWalker.java:331) at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromElement(HqlSqlBaseWalker.java:3633) at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromElementList(HqlSqlBaseWalker.java:3522) at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromClause(HqlSqlBaseWalker.java:706) at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:562) at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:299) at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:247) at org.hibernate.hql.internal.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:278) at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:206) ... 9 more
He comprobado y recomprobado los scripts y que todo este correcto. Y me estoy volviendo loco. No tengo mucha experiencia con Hibernate, pero hasta donde llegan mis conocimientos lo que estoy haciendo es correcto. Me vendría bien una ayudita
Muchas gracias de antemano a todos ;)