# hibernate - createQuery()



## 235711 (2. Jun 2007)

hallo,

ich habe ein problem mit Hibernate, genauer gesagt mit der Erzeugung einer Query. Es gibt eine Klasse Termin (mit settern gettern Konstruktoren etc..). Die Abspeicherung über Hibernate mittels save(Object) über eine Session funktioniert auch.

Jedoch kann ich anscheinend keine Query erzeugen, das läuft schief:


```
session=_sessionFactory.openSession();
try {
        Query q=session.createQuery("from Termin");
			
        List<Termin> l=q.list();
			
        System.out.println(l.get(0).get_ort());
}
catch(Exception e){
	System.out.println("ERROR");
}
```

Ausgegeben wird folgendes:


```
Exception in thread "main" java.lang.NoClassDefFoundError: antlr/ANTLRException
	at org.hibernate.hql.ast.ASTQueryTranslatorFactory.createQueryTranslator(ASTQueryTranslatorFactory.java:35)
	at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:74)
	at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:56)
	at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:72)
	at org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:133)
	at org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:112)
	at org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1623)
	at src.hibernatepack.MyTest.main(MyTest.java:35)
```

Zeile 35 ist in dem Programm die Erzeugung der Query (session=_sessionFactory.openSession()

was ist hier falsch?

danke!

Gruß


----------



## 235711 (2. Jun 2007)

edit:

die Zeile 35 ist natürlich:
Query q=session.createQuery("from Termin");

sorry.


----------



## WeirdAl (2. Jun 2007)

Hi,
probiere es mal mit Query q=session.createQuery("from Termin termin");. Falls es nicht daran liegt, hast Du evtl einen Fehler in der Hibernate oder Termin .xml. Ich habe auch net so viel Ahnung von Hibernate, aber probiers das oben mal aus 

Cu
Alex


----------



## 235711 (2. Jun 2007)

leider nein..

hier mal die Termin.hbm.xml:

```
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC "//Hibernate/Hibernate Mapping DTD 3.0//EN" 
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="src.hibernatepack">
	<class name="Termin" table="termin">
		<id name="_id">
			<generator class="native"/>
		</id>
	
		<property name="_titel"/>
		<property name="_beschreibung"/>
		<property name="_zeitPunkt"/>
		<property name="_ort"/>
	
	</class>


</hibernate-mapping>
```

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="dialect">
			org.hibernate.dialect.MySQLDialect
		</property>
		
		<property name="connection.driver_class">
			com.mysql.jdbc.Driver
		</property>
		
		<property name="connection.username">
			root
		</property>
		
		<property name="connection.password">
			LHKB
		</property>
		
		<property name="connection.url">
			jdbc:mysql://127.0.0.1/termine
		</property>
		
		<property name="hbm2ddl.auto">update</property>
		
		<mapping resource="src/hibernatepack/Termin.hbm.xml"/>
		<mapping resource="src/hibernatepack/Benutzer.hbm.xml"/>
		
	</session-factory>


</hibernate-configuration>
```


----------



## Gast (2. Jun 2007)

ups....naja pw mal lurz ändern lool


----------



## 235711 (2. Jun 2007)

falls noch jemand n tipp hat, wäre cool!

thx


----------



## Groxxda (2. Jun 2007)

wenn man nen query aufmacht in hibernate muss man normalerweise davor ne transaction öffnen.. schau mal obs daran liegt..


----------



## Murray (2. Jun 2007)

Laufzeitfehler hat gesagt.:
			
		

> Exception in thread "main" java.lang.NoClassDefFoundError: antlr/ANTLRException



Hast du die Datei antlr.jar im Classpath?


----------



## 235711 (2. Jun 2007)

das paket ant-antlr-1.6.5.jar gibt es eben

in diesem ist die Klasse ANTLR

mit ner Transaktion hab ich es schon versucht, ging auch nicht...


----------



## Guest (3. Jun 2007)

Sicherlich fehlt dir antlr-2.7.6.jar. Da ist die Exception nämlich drin.
Lese die readme.txt im lib-Verzeichnis von Hibernate. Da sind sämtliche benötigten Libraries beschrieben.


----------

