# Eclipse GUI für EJB-QL bzw HQL?



## Mork (24. Jan 2008)

Hallo,

ichentwickle gerade SessionBeans, die Datenbankabfragen kapseln. Leider nimmt der EntityManager ja kein normales SQL sondern einen der oben beschriebenen Dialekte (welchen eigentlich genau?).

Nun müssen die SessionBeans nach jeder Änderung der Query neu deployed werden, was ziemlich ätzend ist. Gibt es da ein Tool, wo man die Anfragen "on the fly" testen kann? 

Vielen Dank schonmal für eure Hilfe


----------



## ms (24. Jan 2008)

Verwendest du denn keine IDE mit Debugger?

ms


----------



## Mork (24. Jan 2008)

Doch Eclipse. Sag mir doch mal wie ich das am geschicktesten Anstelle. Ich habe also meine SessionBean, die auf nem JBoss deployed wird. Wie soll das mit nem Debugger funktionieren, also das ich heraus bekomme was an meiner Query falsch ist?


----------



## ms (24. Jan 2008)

Eclipse - Jboss ... mehr brauchst du eh nicht.
Im DAO setze einfach einen try-catch-block um den gesamten Code der ein Throwable fängt.
Im catch-Block ein e.printStacktrace() und in der letzten Codezeile sitzt ein Breakpoint.
Bleibt die Ausführung beim Breakpoint stehen siehst du eventuelle Fehlermeldungen, kannst dir die selektierten Objekte anschauen und wenn du eine Änderung im Code machst (zB. das HQL-Statement änderst) wird ein Hotcode-Replacement durchgeführt und der Debugger springt wieder zurück an die erste Codezeile dieser Methode.

Ich hoffe jetzt nicht, dass dieses Verhalten vom jeweiligen Plugin abhängig ist. Ich hab das mit der MyEclipseIDE so gemacht. War sicherlich nicht die eleganteste aber für mich die praktikabelste Lösung in meinem damaligen Umfeld.

Ahja, nicht vergessen den try-catch-block wieder zu entfernen. ;-)

ms


----------



## Guest (24. Jan 2008)

Wenn du mit Hibernate als JPA Implementierung arbeitest, kann ich dir die Hibernate-Console empfehlen.
Mach mal eine Sicherung deiner Eclipse-Version und teste das hier

Update Seite (für den Eclipse Update Manager)> http://download.jboss.org/jbosside/updates/development

Du brauchst daraus nur die Hibernate-Console. Den Rest brauchst du nicht runterzulanden.


----------

