grails

Cobertura mit Grails - java.lang.NoClassDefFoundError: org/apache/log4j/Category

Zur Ermittlung der Testabdeckung instal­lierte ich mir kürz­lich das Test Code Coverage Plugin für Grails (1.0.4). Leider bekam ich beim Aufruf von "grails test-app-cobertura " fol­gen­den Fehler ange­zeigt: [cobertura-instrument] java.lang.NoClassDefFoundError: org/apache/log4j/Category [cobertura-instrument] Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Category [cobertura-instrument] at java.net.URLClassLoader$1.run(URLClassLoader.java:202) [cobertura-instrument] at java.security.AccessController.doPrivileged(Native Method) [cobertura-instrument] at java.net.URLClassLoader.findClass(URLClassLoader.java:190) [cobertura-instrument] at java.lang.ClassLoader.loadClass(ClassLoader.java:307) [cobertura-instrument] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) [cobertura-instrument] at java.lang.ClassLoader.loadClass(ClassLoader.java:248) [cobertura-instrument] Could not find the…

Grails Liferay Portlets und GORM

Wie in mei­nem letz­ten Beitrag ange­kün­digt, wollte ich mich tie­fer­ge­hend mit den Möglichkeiten des Grails Portlet Plugins beschäf­ti­gen. Da die Dokumentation nicht beson­ders aus­sa­ge­kräf­tig ist, galt es zunächst her­aus­zu­fin­den, ob man nicht nur Deskriptoren und Portlet Views gene­rie­ren son­dern auch Domain-Objekte im Portlet ver­wen­den kann. Dafür habe ich zu Testzwecken ein Domainobjekt mit dem Namen Blogpost erstellt: grails create-domain-class de.communardo.liferay.grails.portlet.Blogpost Die…

Liferay Portlets mit Grails

Seit mei­nem letz­ten Grails Projekt ver­folge ich auf­merk­sam jede Neuigkeit zum Thema Groovy und Grails. Aber auch die Entwicklung von Portlets für den freien Portal Server Liferay liegt im Bereich mei­nes Interesses. Als ich dann auf  groovyblogs.org (emp­feh­lens­werte Quelle!) laß, dass ein Grails Plugin released wurde, mit dem man Portlets für Liferay erstel­len kann, war klar, dass ich das ausprobieren…

Grails: LazyInitializationException - Lösungsmöglichkeiten

Die Kombination von Hibernate und kom­ple­xen Datenstrukturen bringt einige Herausforderungen mit­sich und daher ist dem ein oder ande­ren die Exception aus dem Titel sicher geläu­fig. In eini­gen Fällen hat man an sol­chen Punkten eine fast fer­tige Anwendung und es geht an die Implementierung von Jobs oder neuen Anforderungen. Nun las­sen sich diese meist nicht, oder sehr schwer, mit den vorhandenen…

Berlin.jar – Rückblick

Am 13./14.9.2008 fand erst­mals die Berlin.jar an der FHTW Berlin statt. Die Java Konferenz wurde durch die Java User Group Berlin Brandenburg sehr gut orga­ni­siert. Verteilt über beide Konferenztage gab es in fünf par­al­le­len Tracks zahl­rei­che inter­es­sante Vorträge, sowie HandsOn Sessions und Workshops für die mehr als 250 Besucher. Einige Redner sind bereits von ande­ren Konferenzen bekannt. So gab Eberhard…

PSQLException: ope­ra­tor does not exist

 Nach dem Neuaufsetzen einer bestehen­den Grails-Anwendung, tauchte nach­fol­gen­der Fehler wäh­rend der Ansprache der Datenbank durch die Applikation auf: Caused by: org.postgresql.util.PSQLException: ERROR: ope­ra­tor does not exist: big­int ~~ big­int at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1512) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1297) at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:188) at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:437) at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:353) at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:257) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92) … 2 more Zunächst ver­mu­tete ich ein JDBC Treiber-Problem, jedoch konnte der Fehler nach etwas Recherche und Debugging…

Session Handling in Grails

Dieser Artikel soll einen Überblick über das Session Objekt in Grails geben und Lösungsmöglichkeiten bei Anwendungsfehlern auf­zei­gen. Die all­gegenwärtige Session In allen Controllern ist die Session bereits stan­dard­mä­ßig im Application-Scope und war­tet gebrauchs­fer­tig mit dem Namen "ses­sion" auf Verwendung. Das Objekt imple­men­tiert im wesent­li­chen die Standardfunktionalität der javax.servlet.HttpSession und hält ergän­zend die Zugriffsmöglichkeiten einer GroovyMap bereit. session.username = 'John Doe' println session["username"]…

Grails Projekte mit Eclipse entwickeln

Auf der offi­zi­el­len Grails Homepage gibt es bereits ein sehr gutes How-To für die Integration von Grails in Eclipse. Da die Konfiguration aber nicht immer rei­bungs­los ver­läuft und vor allem das Einbinden bestehen­der Grails Projekte in die IDE nach wie vor Probleme berei­ten kann, sol­len nach­fol­gend noch ein­mal die wich­tigs­ten Schritte und Stolpersteine erläu­tert wer­den. Groovy Plugin Basis für die…