<?xml version="1.0" encoding="iso8859-15"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Groovy- und Grails-Forum</title>
    <subtitle>Das deutsche Forum für &lt;a href=&quot;http://groovy.codehaus.org&quot;&gt;Groovy&lt;/a&gt;- und &lt;a href=&quot;http://grails.org&quot;&gt;Grails&lt;/a&gt;-Programmierer.</subtitle>
    <link rel="self" href="http://groovy-forum.de/feed.php?0,type=atom" />
    <id>http://groovy-forum.de/index.php</id>
    <updated>2010-09-07T20:10:02+02:00</updated>
    <generator>Phorum 5.2.13</generator>
    <entry>
        <title type="html">Criteria Frage (5 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8132,8132#msg-8132" />
        <category term="Grails" />
        <published>2010-09-07T13:39:08+02:00</published>
        <updated>2010-09-07T17:22:24+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8132,8132#msg-8132</id>
        <author>
            <name>koeberle</name>
        </author>
        <summary type="html"><![CDATA[ Ich habe eine Domainklasse A die kann beliebig viele Relationen zu einer Domainklasse B haben. B hat eine Attribut isOk vom Typ boolean.<br />
Wie muss ich eine Criteria-Anfrage stricken wenn ich alle As haben will wo alle Bs die dazugehören isOk gleich false sind.<br />
<br />
Christian]]></summary>
    </entry>
    <entry>
        <title type="html">submitToRemote-Tag überschreiben (1 antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8130,8130#msg-8130" />
        <category term="Grails" />
        <published>2010-09-07T09:24:22+02:00</published>
        <updated>2010-09-07T11:14:17+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8130,8130#msg-8130</id>
        <author>
            <name>koeberle</name>
        </author>
        <summary type="html"><![CDATA[ Hallo zusammen,<br />
<br />
ich benutze das Mootools-Plugin, leider wurde dort das  submitToRemote-Tag  nicht implementiert. Was muss ich tun um das Tag selber in den Katalog aufzunehmen?<br />
<br />
Christian]]></summary>
    </entry>
    <entry>
        <title type="html">SwingBuilder / Binding of ComboBox items bleiben leer (no Antworten)</title>
        <link href="http://groovy-forum.de/read.php?2,8129,8129#msg-8129" />
        <category term="Groovy" />
        <published>2010-09-06T22:31:10+02:00</published>
        <updated>2010-09-06T22:31:10+02:00</updated>
        <id>http://groovy-forum.de/read.php?2,8129,8129#msg-8129</id>
        <author>
            <name>eugeis</name>
        </author>
        <summary type="html"><![CDATA[ Hallo,<br />
<br />
ich verwende groovy 1.7.3. Das Binding von 'items' in comboBox funtioniert nicht, die comboBox bleibt leer.<br />
<br />
Hier Beispiel, welches das Problem reproduziert<br />
- die erste comboBox ist leer und <br />
- die zweite comboBox hat die Daten<br />
<br />
<i>import groovy.beans.Bindable;<br />
import groovy.swing.SwingBuilder<br />
import javax.swing.WindowConstants as WC<br />
import java.awt.BorderLayout as BL<br />
<br />
@Bindable class Model{<br />
  List comboBoxValues = ['1','2','3']<br />
}<br />
<br />
Model m=new Model()<br />
swing = new SwingBuilder()<br />
frame = swing.frame(size:[200, 100],title:'Enviroment Helper',defaultCloseOperation:WC.EXIT_ON_CLOSE) {<br />
  borderLayout()<br />
  comboBox(items:bind(source:m, sourceProperty: 'comboBoxValues'),actionPerformed: {println it}, constraints: BL.NORTH)<br />
  comboBox(items:m.comboBoxValues,actionPerformed: {println it}, constraints: BL.SOUTH)<br />
}<br />
frame.show()</i><br />
<br />
<br />
Es scheint das gleiche Problem zu sein, wie hier:<br />
<br />
[<a href="http://www.nabble.com/SwingBuilder-Griffon-how-to-bind-items-model-to-combobox--td24233452.html#a24257140" rel="nofollow" >www.nabble.com</a>]<br />
<br />
[<a href="http://jira.codehaus.org/browse/GRIFFON-67" rel="nofollow" >jira.codehaus.org</a>]]]></summary>
    </entry>
    <entry>
        <title type="html">Shiro - Authentifizierungsinformationen auslesen (1 antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8127,8127#msg-8127" />
        <category term="Grails" />
        <published>2010-09-06T17:50:07+02:00</published>
        <updated>2010-09-06T19:15:32+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8127,8127#msg-8127</id>
        <author>
            <name>everd</name>
        </author>
        <summary type="html"><![CDATA[ Hallo zusammen<br />
<br />
Nun habe ich Shiro dank Hilfe aus dem Forum zum Laufen gebracht :-)<br />
<br />
Ein Punkt gibt mir allerdings noch immer ein Rätsel auf:<br />
Wie kann ich, nachdem ein User sich eingeloggt hat, auf seine Informationen, wie z.B. den Usernamen zugreiffen?<br />
Und welche Informationen über den eingeloggten User sind verfügbar und wo sind sie gespeichert (Session?)?<br />
<br />
Hintergrund der Frage:<br />
Ich möchte einem User alle Objekte, welche auf ihn referenzieren, anzeigen (z.B. alle Projekte, bei denen der eingeloggte User Projektleiter ist).<br />
<br />
In einer gsp-Seite würde ich mit dem Tag &quot;&lt;shiro:principal /&gt;&quot; auf den Usernamen zugreifen. Wie mache ich das in einem Controller?<br />
<br />
<br />
<br />
Danke und Gruss<br />
Yves]]></summary>
    </entry>
    <entry>
        <title type="html">GoogleAppEngine wieder zurückdrehen (no Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8117,8117#msg-8117" />
        <category term="Grails" />
        <published>2010-09-04T11:16:07+02:00</published>
        <updated>2010-09-04T11:16:07+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8117,8117#msg-8117</id>
        <author>
            <name>duser32</name>
        </author>
        <summary type="html"><![CDATA[ Hallo,<br />
<br />
ich habe für ein bestehendes Projekt versucht dieses zu Google App Engine zu portieren und<br />
hierzu die entsprechenden Plugins installiert. Nun benötige ich doch kein App Engine mehr <br />
und stellte nach dem entfernen der Plugins fest, dass alle mit &quot;scaffolding&quot; generierten Views<br />
nicht erzeugt werden bzw. entsprechende Methoden der Controller nicht gefunden werden.<br />
<br />
Da ja App Engine nicht Hibernate nutzt ist meine Vermutung, dass Hibernate nicht mehr richtig<br />
eingebunden ist/funktioniert. Kann mir jemand weiterhelfen, wie man dies prüfen/testen/reaktivieren<br />
kann ohne gleich das Projekt neu aufzusetzen?<br />
<br />
Gruß<br />
<br />
Daniel]]></summary>
    </entry>
    <entry>
        <title type="html">jar aus groovy erzeugen - manifest datei (7 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?2,8115,8115#msg-8115" />
        <category term="Groovy" />
        <published>2010-09-03T20:26:31+02:00</published>
        <updated>2010-09-06T14:12:57+02:00</updated>
        <id>http://groovy-forum.de/read.php?2,8115,8115#msg-8115</id>
        <author>
            <name>mabu</name>
        </author>
        <summary type="html"><![CDATA[ Hallo beisammen,<br />
<br />
derzeit beschäftige ich mich damit, aus groovy-Skripts eigenständige Programme zu machen. Die praktischste Variante ist,<br />
sie in ein &quot;jar&quot; zu packen, da man *.jar Dateien in der Regel immer mit Java ausführen kann.<br />
<br />
mit groovyc kann man ja wunderbar class-Files erstellen. So weit so gut.<br />
es gibt auch dieses praktische Tool &quot;jar&quot; um &quot;jar&quot;-Files zu machen (&quot;jar -cvf MeinProg.jar MeineKlasse.class&quot;)<br />
<br />
Aber: Man braucht dafür eine manifest-Datei. Hat da jmd. schon Erfahrung mit gemacht? Ich hab oft gelesen, dass man <br />
in der manifest-Datei angeben muss, welche Klasse die main-Methode enthält. Mein Script hat aber eigentlich gar keine<br />
Klassen o.ä. (ist halt ein richtiges Skript ;-) )<br />
Geht das trotzdem?<br />
<br />
Grüße]]></summary>
    </entry>
    <entry>
        <title type="html">Deployment-Problem (1 antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8113,8113#msg-8113" />
        <category term="Grails" />
        <published>2010-09-03T15:48:03+02:00</published>
        <updated>2010-09-03T16:03:56+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8113,8113#msg-8113</id>
        <author>
            <name>Charx</name>
        </author>
        <summary type="html"><![CDATA[ Hallo,<br />
<br />
in unserem Grails-Projekt hat bislang immer alles funktioniert, doch heute kam diese kryptische Fehlermeldung beim Deployment:<br />
<br />
2010-09-03 15:18:03,681 INFO  [STDOUT] read properties from file:/opt/jboss/gras/app-config/tpa/web.properties<br />
2010-09-03 15:18:07,843 ERROR [org.springframework.web.context.ContextLoader] Context initialization failed<br />
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'pluginManager' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: LTarifService;<br />
        at java.security.AccessController.doPrivileged(Native Method)<br />
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3856)<br />
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4361)<br />
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:790)<br />
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:770)<br />
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:553)<br />
        at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:296)<br />
        at org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:164)<br />
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)<br />
        at org.apache.catalina.core.StandardContext.init(StandardContext.java:5312)<br />
        at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:296)<br />
        at org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:164)<br />
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)<br />
        at org.jboss.web.tomcat.service.TomcatDeployer.performDeployInternal(TomcatDeployer.java:301)<br />
        at org.jboss.web.tomcat.service.TomcatDeployer.performDeploy(TomcatDeployer.java:104)<br />
        at org.jboss.web.AbstractWebDeployer.start(AbstractWebDeployer.java:375)<br />
        at org.jboss.web.WebModule.startModule(WebModule.java:83)<br />
        at org.jboss.web.WebModule.startService(WebModule.java:61)<br />
        at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)<br />
        at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)<br />
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)<br />
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)<br />
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)<br />
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)<br />
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)<br />
        at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)<br />
        at $Proxy0.start(Unknown Source)<br />
        at org.jboss.system.ServiceController.start(ServiceController.java:417)<br />
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)<br />
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)<br />
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)<br />
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)<br />
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)<br />
        at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)<br />
        at $Proxy45.start(Unknown Source)<br />
        at org.jboss.web.AbstractWebContainer.start(AbstractWebContainer.java:466)<br />
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)<br />
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)<br />
        at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)<br />
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)<br />
        at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)<br />
        at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:97)<br />
        at org.jboss.system.InterceptorServiceMBeanSupport.invokeNext(InterceptorServiceMBeanSupport.java:238)<br />
        at org.jboss.wsf.container.jboss42.DeployerInterceptor.start(DeployerInterceptor.java:87)<br />
        at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188)<br />
        at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95)<br />
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)<br />
...<br />
Caused by: java.lang.NoClassDefFoundError: LTarifService;<br />
        at java.lang.Class.getDeclaredFields0(Native Method)<br />
        at java.lang.Class.privateGetDeclaredFields(Class.java:2259)<br />
        at java.lang.Class.getDeclaredField(Class.java:1852)<br />
        ... 106 more<br />
<br />
Wir haben in unserem Projekt keine Klasse &quot;LTarifService&quot;, sondern nur eine &quot;TarifService&quot;, und diese ist im .war-Archiv vorhanden... außerdem wüsste ich nicht, was das mit dem PluginManager zu tun haben soll.<br />
<br />
Kann mir irgendjemand helfen diese Exception zu deuten?<br />
<br />
Danke!]]></summary>
    </entry>
    <entry>
        <title type="html">Prüfen der Syntax (1 antworten)</title>
        <link href="http://groovy-forum.de/read.php?2,8108,8108#msg-8108" />
        <category term="Groovy" />
        <published>2010-09-02T15:23:54+02:00</published>
        <updated>2010-09-03T08:25:58+02:00</updated>
        <id>http://groovy-forum.de/read.php?2,8108,8108#msg-8108</id>
        <author>
            <name>JD</name>
        </author>
        <summary type="html"><![CDATA[ Hallo Leute,<br />
<br />
auf der Suche nach einer Lösung des obengenannten und im Weiteren näher beschrieben Problems bin ich auf dieses Forum gestoßen und hoffe hier Hilfe zu finden. :)<br />
<br />
Zur Problembeschreibung: Im Rahmen meiner Belegarbeit muss ich ein als Textfile bzw. String gegebenes Skript auf die Richtigkeit prüfen und anschließend mit erweiterten Zuweisungen in Java einbetten. Der zweite Teil ist aktuell nur wenig problematisch, die Syntaxprüfung bereitet allerdings einiges an Sorgen. Im Endprodukt soll zur Laufzeit auf inkorrekte Schreibweise hingewiesen werden können.<br />
Vornweg mal ein Beispiel-Skript, wobei der else-Zweig einen Fehler enthält (pritln statt println): <br />
<pre class="bbcode">
def d = true;
if(d) { 
println 'Hello World!' ;
}else{
pritln('test')
}</pre>
Zur Überprüfung der Korrektheit bot sich zunächst Groovyshell.evaluate() an. Diese Methode ist aber nicht vollständig geignet, da sie nur das Skript kompiliert und dieses mit aktuellen Bindings ausführt. So gelangt sie allerdings nie in den else-Zweig, weil dieser nie immer erreichbar ist und hält deswegen das Skript für korrekt.<br />
<br />
Der zweite Ansatz ist ein wenig unständlicher: Zuerst wird GroovyClassLoader.parseClass() das Skript zu einer Klasse kompiliert und davon ein Objekt erstellt. Dannach, zerlege ich dieses Objekt per Reflections und hole mir die Namen der CallSites, die die Methoden des Skripts und alle undeffinierten Variablen darstellen. Anschließend lasse ich mir die Methodennamen der erschaffenen Klasse, deren Metaklasse und der darin als Fields enthaltenen Klassen geben und schauen, ob für jeden CallSite-Namen eine Methode deklariert ist. Dies funktioeniert recht gut auch fürs folgende leicht abgeänderte Beispiel:<br />
<pre class="bbcode">
def d = true;
if(d) { 
System.out.println('Hello World!');
}else{
pritln('test')
}</pre>
Allerdings habe ich keine Möglichkeit die Zusamenhänge zwischen einzellnen CallSites zu prüfen, so ist beispielsweise wäre der mit der zweiten Methode auch folgendes gültig ( da out in der System-Klasse als Feld deklariert ist):<br />
<pre class="bbcode">
def d = true;
if(d) { 
System.out.println('Hello World!');
}else{
out ('test')
}</pre>
Ich sehe möglicherweise den Wald vor lauter Bäumen nicht mehr und bitte deswegen um euren Rat, wie ich die Aufgabe umsetzen könnte.<br />
<br />
Gruß]]></summary>
    </entry>
    <entry>
        <title type="html">Testdaten generieren (2 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8106,8106#msg-8106" />
        <category term="Grails" />
        <published>2010-09-02T14:20:53+02:00</published>
        <updated>2010-09-03T11:30:07+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8106,8106#msg-8106</id>
        <author>
            <name>saurier</name>
        </author>
        <summary type="html"><![CDATA[ Hier gabs vor kurzem mal das Stichwort Testdaten. Irgendwie braucht sowas ja<br />
jeder, und jeder bastelt sich da was eigenes zusammen. Ich habe mir mal<br />
ein (Mini-)Plugin geschrieben um zufällig halbwegs sinnvolle Testdaten zu<br />
generieren. Falls Interesse besteht, würde ich eine kleine Anleitung schreiben<br />
und es dann hier verteilen.<br />
<br />
Die Benutzung sieht etwa so aus (z.B. in Bootstrap)<br />
<pre class="bbcode">
        // 20 Kunden anlegen
         def range = 1..20
         range.each{ 
            new Kunde(vorname:sdataService.pick(&quot;first&quot;),
                    nachname:sdataService.pick(&quot;last&quot;),
                    ort:sdataService.pick(&quot;city&quot;)).save(flush:true)
         }
     }</pre>
<br />
Es sind einige Daten für Vornamen, Nachnamen, Telefon etc. vordefiniert, aus denen<br />
dann mit pick() zufällig ausgewählt wird. Weitere Daten kann man sich ganz einfach<br />
selbst anlegen.<br />
<br />
Interesse?<br />
<br />
Gruß,<br />
Christian]]></summary>
    </entry>
    <entry>
        <title type="html">Änfangerfrage z &quot;grails generate-all&quot; (5 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8100,8100#msg-8100" />
        <category term="Grails" />
        <published>2010-09-02T00:07:16+02:00</published>
        <updated>2010-09-02T11:02:44+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8100,8100#msg-8100</id>
        <author>
            <name>2D3nnis</name>
        </author>
        <summary type="html"><![CDATA[ Hallo,<br />
<br />
also ich stehe noch ganz am Anfang mit Grails..<br />
Ich habe mir einige Tutorials angesehen und das Buch &quot;Grails&quot; von Sven Haiges besorgt.<br />
<br />
Jetzt wo ich so ein wenig damit herum experimentiere, verstehe ich eine Sache nicht und zwar bei dem Befehl &quot;grails generate-all&quot; bekomme ich immer die Meldung &quot;No Domain class found for name XXX&amp;#8230;..&quot; aber sie ist ja da und ich bin auch im richtigen Verzeichniss. <br />
<br />
Habe es nach diesem Tutorial gemacht: [<a href="http://www.alexanderschulz.eu/index.php/2007/09/11/grails-tutorial-einfuhrung/#comment-1008" rel="nofollow" >www.alexanderschulz.eu</a>]<br />
<br />
also bis grails create-app<br />
dann grails create-domain-class<br />
und auch grails create-controller ... funktioniert alles nur das generate-all nicht.. vergesse ich irgendwas ? etwas was ih nicht beachte?<br />
<br />
Wär super dankbar für jede Hilfe]]></summary>
    </entry>
    <entry>
        <title type="html">Log4J and Groovy (4 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?2,8091,8091#msg-8091" />
        <category term="Groovy" />
        <published>2010-08-31T16:40:38+02:00</published>
        <updated>2010-09-05T11:03:36+02:00</updated>
        <id>http://groovy-forum.de/read.php?2,8091,8091#msg-8091</id>
        <author>
            <name>whett</name>
        </author>
        <summary type="html"><![CDATA[ Ich versuche, das allersimpelste Groovy Programm mit Log4J zu loggen.  Wenn ich das Programm direkt<br />
mit dem Groovy Interpreter aufrufe, funktioniert das nicht. Weiss jemand Rat?<br />
<br />
I defined the environment variables (in Ubuntu Linux)<br />
<pre class="bbcode">
export LOG4J_JAR=/usr/share/java/log4j-1.2.jar
export GROOVY_JAR=/opt/groovy/embeddable/groovy-all-1.6.5.jar</pre>
Based on [<a href="http://logging.apache.org/log4j/1.2/manual.html" rel="nofollow" >logging.apache.org</a>] I use <br />
the following Groovy class (in a file called MyApp.groovy):<br />
<pre class="bbcode">
import org.apache.log4j.*

public class MyApp {

	static Logger logger = Logger.getLogger(MyApp.class)

	public static void main(String[] args) {

	BasicConfigurator.configure()

	logger.info(&quot;Entering application.&quot;)
	println &quot;Printing XXXXXXXXXXXXXXX&quot;
	logger.info(&quot;Exiting application.&quot;)
   }
}</pre>
When I execute the Groovy program in a terminal window I<br />
don't get any logging output, just:<br />
<pre class="bbcode">
&gt; groovy -cp $LOG4J_JAR MyApp.groovy
Printing XXXXXXXXXXXXXXX</pre>
However, when I compile with groovyc and execute with java, then<br />
I get the expected logging output:<br />
<pre class="bbcode">
&gt; groovyc -cp $LOG4J_JAR MyApp.groovy
&gt; java -cp .:$LOG4J_JAR:$GROOVY_JAR MyApp

0 [main] INFO MyApp  - Entering application.
Printing XXXXXXXXXXXXXXX
33 [main] INFO MyApp  - Exiting application.
</pre>]]></summary>
    </entry>
    <entry>
        <title type="html">glossy-templates 2.0 (2 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8089,8089#msg-8089" />
        <category term="Grails" />
        <published>2010-08-31T15:13:20+02:00</published>
        <updated>2010-09-07T18:52:28+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8089,8089#msg-8089</id>
        <author>
            <name>milkyman</name>
        </author>
        <summary type="html"><![CDATA[ Hallo zusammen.<br />
<br />
Endlich, es ist so weit! Ich bin jetzt mal dazu gekommen, meine <a href="http://glossy-templates.googlecode.com/" rel="nofollow" >glossy-templates</a> auf Grails 1.3.4 upzugraden und ein paar Bugfixes und Verbesserungen vorzunehmen. Details können der Website entnommen werden. Unter anderem gibt es auf Wunsch von christian auch 2 Screenshots, wie die Templates aussehen.<br />
<br />
Download Link zur aktuellen Versions: <a href="http://glossy-templates.googlecode.com/files/glossy-templates-2.0.0.zip" rel="nofollow" >glossy-templates-2.0.0</a><br />
<br />
Parallel dazu bin ich auch in Diskussionen, ob die Templates in den Grails Core reinkommen oder nicht. Das könnt ihr hier mitverfolgen: <a href="http://jira.codehaus.org/browse/GRAILS-5225" rel="nofollow" >GRAILS-5225</a><br />
<br />
Wenn ihr reinschaut, nicht vergessen eure Stimme abzugeben. ;-)<br />
<br />
Die aktuell noch offenen Punkte könnt ihr auf der glossy-Website nachschauen. Ich freue mich über jede Art der Unterstützung von euch. Sowohl in Form von Kritik wie auch von neuen Ideen oder Votes für die noch offenen Enhancement-Issues.<br />
<br />
Insbesondere suche ich ein oder zwei Entwickler für die folgenden Punkte. Wäre toll, wenn mir da jemand helfen kann.<br />
1) &quot;code review&quot;<br />
Ich bin den Code jetzt schon mehr durchgegangen und habe versucht ihn klarer und einfacher zu machen. Aber ein anderer Entwickler hat immer auch eine andere Sicht auf den Code. Möchte vielleicht jemand den Code der Templates mal reviewen und mir sagen, was ich wo anders/besser machen sollte.<br />
<br />
2) &quot;create a plugin which installs the templates&quot;<br />
Die Beschreibung sagt eigentlich alles. Derzeit funktioniert die Installation per manuellem kopieren der Dateien in die richtigen Verzeichnisse, weil ich keine Ahnung habe, wie man so ein Plugin erstellt und packaged. Für jemanden, der schonmal ein Plugin erstellt hat, dürfte das aber sehr einfach sein, weil es wirklich nur um ein paar Dateien geht. Wer meldet sich freiwillig für eine gute Sache? :-)<br />
<br />
Soweit für heute mein Beitrag zum Thema. Bin gespannt, was jetzt daraus werden wird...]]></summary>
    </entry>
    <entry>
        <title type="html">Frage zu URLMappings (4 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8078,8078#msg-8078" />
        <category term="Grails" />
        <published>2010-08-28T23:34:44+02:00</published>
        <updated>2010-08-30T23:08:48+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8078,8078#msg-8078</id>
        <author>
            <name>charms</name>
        </author>
        <summary type="html"><![CDATA[ Hallo zusammen,<br />
<br />
Ich habe einen Controller, der Methoden für REST, wie auch für HTML enthält. Für die REST Methoden habe ich customized URLMappings angelegt (/api/shop) wie untenstehend ersichtlich. Danach habe ich die HTML views erstellt mit grails generate-views. Die Methoden darin, sollten über das default URL Mapping angesprochen werden (/$controller/$action?/$id?). <br />
<br />
Ich möchte also für die REST Methoden /api/shop als URL verwenden, für die HTML Methoden aber ganz normal /$controller/$action?/$id?. <br />
<br />
Mein Problem ist nun, dass Grails per default anstatt /$controller/$action?/$id? /api/shop verwendet. Auch für die Methoden, bei denen ich eigentlich /$controller/$action?/$id? verwenden möchte. Wenn ich also versuche einen neuen Datensatz über die HTML views zu speichern, wird anstatt /shop/save /api/shop/save aufgerufen.<br />
<br />
<br />
Kann mir vielleicht jemand sagen, was ich falsch mache bei den URLMappings?<br />
<br />
URLMappings.groovy:<br />
<pre class="bbcode">
class UrlMappings {

	static mappings = {
		&quot;/$controller/$action?/$id?&quot;{
			constraints {
				// apply constraints here
			}
		}

		&quot;/&quot;(view:&quot;/index&quot;)
		&quot;500&quot;(view:'/error')

                // Shop rest actions
                &quot;/api/shop&quot; (controller: &quot;shop&quot;) {
                    action = [ GET: &quot;api_list&quot;, POST: &quot;api_save&quot; ]
                }
                &quot;/api/shop/$id&quot; (controller: &quot;shop&quot;) {
                    action = [ GET: &quot;api_show&quot;, PUT: &quot;api_update&quot;, DELETE: &quot;api_delete&quot; ]
                }
	}
}</pre>
<br />
ShopController.groovy:<br />
<pre class="bbcode">
package bonuspointsserver

import grails.converters.XML

class ShopController {
    def scaffold = false
    static allowedMethods = [save: &quot;POST&quot;, update: &quot;POST&quot;, delete: &quot;POST&quot;]

    def index = {
        redirect(action: &quot;list&quot;, params: params)
    }

    def list = {
        params.max = Math.min(params.max ? params.int('max') : 10, 100)
        [shopInstanceList: Shop.list(params), shopInstanceTotal: Shop.count()]
    }

    def create = {
        def shopInstance = new Shop()
        shopInstance.properties = params
        return [shopInstance: shopInstance]
    }

    def save = {
        def shopInstance = new Shop(params)
        if (shopInstance.save(flush: true)) {
            flash.message = &quot;${message(code: 'default.created.message', args: [message(code: 'shop.label', default: 'Shop'), shopInstance.id])}&quot;
            redirect(action: &quot;show&quot;, id: shopInstance.id)
        }
        else {
            render(view: &quot;create&quot;, model: [shopInstance: shopInstance])
        }
    }

    def show = {
        def shopInstance = Shop.get(params.id)
        if (!shopInstance) {
            flash.message = &quot;${message(code: 'default.not.found.message', args: [message(code: 'shop.label', default: 'Shop'), params.id])}&quot;
            redirect(action: &quot;list&quot;)
        }
        else {
            [shopInstance: shopInstance]
        }
    }

    def edit = {
        def shopInstance = Shop.get(params.id)
        if (!shopInstance) {
            flash.message = &quot;${message(code: 'default.not.found.message', args: [message(code: 'shop.label', default: 'Shop'), params.id])}&quot;
            redirect(action: &quot;list&quot;)
        }
        else {
            return [shopInstance: shopInstance]
        }
    }

    def update = {
        def shopInstance = Shop.get(params.id)
        if (shopInstance) {
            if (params.version) {
                def version = params.version.toLong()
                if (shopInstance.version &gt; version) {
                    
                    shopInstance.errors.rejectValue(&quot;version&quot;, &quot;default.optimistic.locking.failure&quot;, [message(code: 'shop.label', default: 'Shop')] as Object[], &quot;Another user has updated this Shop while you were editing&quot;)
                    render(view: &quot;edit&quot;, model: [shopInstance: shopInstance])
                    return
                }
            }
            shopInstance.properties = params
            if (!shopInstance.hasErrors() &amp;&amp; shopInstance.save(flush: true)) {
                flash.message = &quot;${message(code: 'default.updated.message', args: [message(code: 'shop.label', default: 'Shop'), shopInstance.id])}&quot;
                redirect(action: &quot;show&quot;, id: shopInstance.id)
            }
            else {
                render(view: &quot;edit&quot;, model: [shopInstance: shopInstance])
            }
        }
        else {
            flash.message = &quot;${message(code: 'default.not.found.message', args: [message(code: 'shop.label', default: 'Shop'), params.id])}&quot;
            redirect(action: &quot;list&quot;)
        }
    }

    def delete = {
        def shopInstance = Shop.get(params.id)
        if (shopInstance) {
            try {
                shopInstance.delete(flush: true)
                flash.message = &quot;${message(code: 'default.deleted.message', args: [message(code: 'shop.label', default: 'Shop'), params.id])}&quot;
                redirect(action: &quot;list&quot;)
            }
            catch (org.springframework.dao.DataIntegrityViolationException e) {
                flash.message = &quot;${message(code: 'default.not.deleted.message', args: [message(code: 'shop.label', default: 'Shop'), params.id])}&quot;
                redirect(action: &quot;show&quot;, id: params.id)
            }
        }
        else {
            flash.message = &quot;${message(code: 'default.not.found.message', args: [message(code: 'shop.label', default: 'Shop'), params.id])}&quot;
            redirect(action: &quot;list&quot;)
        }
    }

    def api_list = {
	def results = Shop.list()
	render(contentType:&quot;text/xml&quot;) {
            shops {
                for(s in results) {
                    shop(name:s.name, logoPath:s.logoPath,
                        redirectURL:s.redirectURL)
                }
            }
	}
    }

    def api_show = {
        Shop shop = Shop.get(params.id)
        render shop as XML
    }

    def api_save = {
        def xml = request.XML
        def shop = new Shop()
        shop.name = xml.name.text()
        shop.active = xml.active.text()

        def markup
        if(shop.save()) {
            markup = {
                status(&quot;OK&quot;)
            }
        } else {
            markup = {
                status(&quot;FAIL&quot;)
            }
        }
        render contentType: &quot;text/xml; charset=utf-8&quot;, markup
    }
}</pre>
<br />
create.gsp:<br />
<pre class="bbcode">
            &lt;g:form action=&quot;save&quot;  enctype=&quot;multipart/form-data&quot;&gt;
                &lt;div class=&quot;dialog&quot;&gt;
                    &lt;table&gt;
                        &lt;tbody&gt;
                        
                            &lt;tr class=&quot;prop&quot;&gt;
</pre>]]></summary>
    </entry>
    <entry>
        <title type="html">Logging groovy-Scripts (2 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8075,8075#msg-8075" />
        <category term="Grails" />
        <published>2010-08-27T11:58:52+02:00</published>
        <updated>2010-08-31T07:53:00+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8075,8075#msg-8075</id>
        <author>
            <name>Jails</name>
        </author>
        <summary type="html"><![CDATA[ Hallo zusammen!<br />
Ich bin neu in der Welt von Grails. Ich benutze STS und versuche gerade meine log-Einträge zu verfolgen (log.debug...). Wo bzw. in welchem File kann ich nach Start der Applikation jetzt meine Log-Einträge sehen?<br />
Ein weiteres Problem ist das Debugging. Ich kann keine Breakpoints in Groovy-Skripten setzen. Hat jemand Erfahrung im Debugging mit STS?<br />
Danke schon mal im vorraus...<br />
Gruß<br />
Jails]]></summary>
    </entry>
    <entry>
        <title type="html">Installationsprobleme mit jsecurity und shiro (4 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8069,8069#msg-8069" />
        <category term="Grails" />
        <published>2010-08-26T14:56:20+02:00</published>
        <updated>2010-08-27T12:25:33+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8069,8069#msg-8069</id>
        <author>
            <name>everd</name>
        </author>
        <summary type="html"><![CDATA[ Hallo Zusammen<br />
<br />
Ich  bin relativ neu in der Grails-Welt (schreibe gerade meine 2. Applikation), und stelle mich deshalb vielleicht auch einfach etwas doof an...<br />
<br />
Auf jeden Fall wollte ich wie gewohnt mit &quot;grails install-plugin jsecurity&quot; das Jsec-Plugin installieren.<br />
Dies klappte eigentlich auch, oder dachte ich zumindest.<br />
<br />
Denn wenn ich danach den dbrealm oder den auth-controller erzeugen will, bekomme ich nur die 2 Meldungen, wie sie im Anhang zu sehen sind.<br />
Die entsprechenden Files werden aber leider nicht erzeugt.<br />
<br />
Ich habe folgendes schon versucht:<br />
- neuinstallation des plugins<br />
- das Ganze mit Shiro probiert, gleiches Verhalten<br />
- grails clean<br />
- google-Suche<br />
<br />
Hat alles nichts gebracht, obwohl ich im ersten Projekt alles genau gleich gemacht habe und es da funktioniert hat.<br />
Wäre toll, wenn mir hier jemand helfen könnte... ich verzweifle nächstens....<br />
<br />
<br />
lg everd]]></summary>
    </entry>
    <entry>
        <title type="html">http authentification mit grails (1 antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8066,8066#msg-8066" />
        <category term="Grails" />
        <published>2010-08-26T12:17:58+02:00</published>
        <updated>2010-08-26T13:05:18+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8066,8066#msg-8066</id>
        <author>
            <name>grooyKid</name>
        </author>
        <summary type="html"><![CDATA[ hallo,<br />
wie kann http authentification in ein grails programm einbauen ?]]></summary>
    </entry>
    <entry>
        <title type="html">Domain class not found in grails-app/domain, trying hibernate mapped classes... (1 antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8060,8060#msg-8060" />
        <category term="Grails" />
        <published>2010-08-25T17:44:42+02:00</published>
        <updated>2010-08-26T10:47:09+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8060,8060#msg-8060</id>
        <author>
            <name>milkyman</name>
        </author>
        <summary type="html"><![CDATA[ Ich habe mittlerweile mal STS installiert und das aktuelle Grails 1.3.<br />
Damit wollte ich heute ein bestehendes Projekt nochmal neu aufsetzen und dann mit aktuellen Templates ausstatten.<br />
<br />
Leider klemmt es schon am ersten Schritt, ich kann nämlich schon im Default Projekt für eine Domain keine Views und Controller generieren. Für alle andere Domain gehts es. Alle Domains sind im gleichen Package und haben keine wirklichen Besonderheiten. Bei einem generate-all * wird diese eine Domain einfach mal unterschlagen. Wenn ich die einzeln mit &quot;generate-all zesadmin.UserRight&quot; generieren will, kommt dann die folgende Fehlermeldung. Demnach findet er die Domain nicht, aber das kann ich mir nun gar nicht erklären. Das mit dem null mapping halte ich für einen Folgefehler.<br />
<br />
Ich habe auch schon mehrfache cleans versucht und das ganze Mal auf der Konsole generiert, aber diese eine Domain mag er einfach nicht.<br />
<br />
Vielleicht hat jemand von euch noch eine Idee bzw. den Fehler auch schonmal gehabt.<br />
<br />
<br />
<pre class="bbcode">
E:\springsource\workspace-sts-2.3.2.RELEASE\zesadmin&gt;grails generate-all zesadmin.UserRight
Welcome to Grails 1.3.3 - [<a href="http://grails.org/" rel="nofollow" >grails.org</a>]
Licensed under Apache Standard License 2.0
Grails home is set to: e:\springsource\grails-1.3.3

Base Directory: E:\springsource\workspace-sts-2.3.2.RELEASE\zesadmin
Resolving dependencies...
Dependencies resolved in 1938ms.
Running script e:\springsource\grails-1.3.3\scripts\GenerateAll.groovy
Environment set to development
  [groovyc] Compiling 1 source file to E:\springsource\workspace-sts-2.3.2.RELEASE\zesadmin\target\classes
     [copy] Copying 1 file to e:\.grails\1.3.3\projects\zesadmin
  [groovyc] Compiling 1 source file to E:\springsource\workspace-sts-2.3.2.RELEASE\zesadmin\target\classes
     [copy] Copying 1 file to e:\.grails\1.3.3\projects\zesadmin
Domain class not found in grails-app/domain, trying hibernate mapped classes...
  [groovyc] Compiling 1 source file to E:\springsource\workspace-sts-2.3.2.RELEASE\zesadmin\target\classes
     [copy] Copying 1 file to e:\.grails\1.3.3\projects\zesadmin
  [groovyc] Compiling 1 source file to E:\springsource\workspace-sts-2.3.2.RELEASE\zesadmin\target\classes
     [copy] Copying 1 file to e:\.grails\1.3.3\projects\zesadmin
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'messageSource': Initialization o
f bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with nam
e 'transactionManager': Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory';
nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFacto
ry': Invocation of init method failed; nested exception is org.hibernate.MappingException: Type [null] is not a basic ty
pe or a domain class and cannot be mapped. Either specify a type within the [mapping] block or use a basic type (String,
 Integer etc.)
        at _GrailsBootstrap_groovy$_run_closure2_closure11.doCall(_GrailsBootstrap_groovy:87)
        at _GrailsBootstrap_groovy$_run_closure2_closure11.doCall(_GrailsBootstrap_groovy)
        at _GrailsSettings_groovy$_run_closure10.doCall(_GrailsSettings_groovy:280)
        at _GrailsSettings_groovy$_run_closure10.call(_GrailsSettings_groovy)
        at _GrailsBootstrap_groovy$_run_closure2.doCall(_GrailsBootstrap_groovy:79)
        at _GrailsBootstrap_groovy$_run_closure6.doCall(_GrailsBootstrap_groovy:136)
        at _GrailsGenerate_groovy$_run_closure1.doCall(_GrailsGenerate_groovy:43)
        at GenerateAll$_run_closure1.doCall(GenerateAll:42)
        at gant.Gant$_dispatch_closure5.doCall(Gant.groovy:381)
        at gant.Gant$_dispatch_closure7.doCall(Gant.groovy:415)
        at gant.Gant$_dispatch_closure7.doCall(Gant.groovy)
        at gant.Gant.withBuildListeners(Gant.groovy:427)
        at gant.Gant.this$2$withBuildListeners(Gant.groovy)
        at gant.Gant$this$2$withBuildListeners.callCurrent(Unknown Source)
        at gant.Gant.dispatch(Gant.groovy:415)
        at gant.Gant.this$2$dispatch(Gant.groovy)
        at gant.Gant.invokeMethod(Gant.groovy)
        at gant.Gant.executeTargets(Gant.groovy:590)
        at gant.Gant.executeTargets(Gant.groovy:589)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager':
Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; nested exception is org.
springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory': Invocation of init
method failed; nested exception is org.hibernate.MappingException: Type [null] is not a basic type or a domain class and
 cannot be mapped. Either specify a type within the [mapping] block or use a basic type (String, Integer etc.)
        ... 19 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory': Invo
cation of init method failed; nested exception is org.hibernate.MappingException: Type [null] is not a basic type or a d
omain class and cannot be mapped. Either specify a type within the [mapping] block or use a basic type (String, Integer
etc.)
        ... 19 more
Caused by: org.hibernate.MappingException: Type [null] is not a basic type or a domain class and cannot be mapped. Eithe
r specify a type within the [mapping] block or use a basic type (String, Integer etc.)
        ... 19 more
Error running generate-all: Error creating bean with name 'messageSource': Initialization of bean failed; nested excepti
on is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager': Canno
t resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; nested exception is org.sprin
gframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory': Invocation of init metho
d failed; nested exception is org.hibernate.MappingException: Type [null] is not a basic type or a domain class and cann
ot be mapped. Either specify a type within the [mapping] block or use a basic type (String, Integer etc.)

</pre>]]></summary>
    </entry>
    <entry>
        <title type="html">not-null property references a null or transient value (13 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8053,8053#msg-8053" />
        <category term="Grails" />
        <published>2010-08-25T11:13:32+02:00</published>
        <updated>2010-09-01T12:47:25+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8053,8053#msg-8053</id>
        <author>
            <name>milkyman</name>
        </author>
        <summary type="html"><![CDATA[ Hallo.<br />
<br />
Die DataIntegrityViolationException an sich ist ja nichts neues. Die kommt mit obiger Meldung immer, wenn man ein Objekt speichern will und die Constraints nicht erfüllt sind. Im aktuellen Fall habe ich die Domain um eine notnull Property erweitert, die aber bei den bestehenden Objekten noch nicht gesetzt ist.<br />
<br />
Dass ich ein solches Objekt nicht einfach speichern kann, verstehe ich. Dann fliegt die Exception und im Idealfall wird die edit-View angezeigt mit rotem Rahmen um das fehlende Pflichtfeld. Soweit ok.<br />
<br />
Aber jetzt ist mir aufgefallen, dass die gleiche Exception auch beim Löschen eines Objektes geworfen wird. Was soll denn das bitte??? Ich kann das Objekt erst löschen, wenn ich das Pflichtfeld gefüllt habe? Na den Benutzer möchte ich sehen, der dafür Verständnis hat. :-)<br />
<br />
Hat jemand auch schon mal vor dem Problem gestanden? Gibt es dazu eine sinnvolle Lösung?]]></summary>
    </entry>
    <entry>
        <title type="html">addToBooks() is applicable for argument types: (myapp.Book) (2 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8052,8052#msg-8052" />
        <category term="Grails" />
        <published>2010-08-25T10:47:14+02:00</published>
        <updated>2010-08-25T12:49:44+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8052,8052#msg-8052</id>
        <author>
            <name>MehrCurry</name>
        </author>
        <summary type="html"><![CDATA[ Hallo Leute,<br />
<br />
nach längerer Zeit wollte ich mal wieder mit Grails rumspielen und habe nochmal bei Adam und Eva angefangen, sprich das Book/Author Beispiel nachprogrammiert. Und da gehts schon schief. Irgendwie tut addToBooks(...) nicht das, was es soll:<br />
<br />
<pre class="bbcode">
class Author {
	String name
	static hasMany = [books:Book]
    static constraints = {
    }
}

class Book {
	String title
    static constraints = {
    }
}</pre>
<br />
Folgender Test wirft mit einer Exception nach mir:<br />
<pre class="bbcode">
    void testSomething() {
		def a = new Author(name:&quot;Hans Wurst&quot;)
		assert a != null
		
		def aBook = new Book(title:&quot;Neues Buch&quot;)
		assert aBook != null
		a.addToBooks(aBook)
    }</pre>
<br />
Die letzte Zeile wirft:<br />
<pre class="bbcode">
No signature of method: myapp.Author.addToBooks() is applicable for argument types: (myapp.Book) values: [myapp.Book : null] Possible solutions: getBooks()

groovy.lang.MissingMethodException: No signature of method: myapp.Author.addToBooks() is applicable for argument types: (myapp.Book) values: [myapp.Book : null]
Possible solutions: getBooks()
at myapp.AuthorTests.testSomething(AuthorTests.groovy:20)</pre>
<br />
Hat jemand nen Tipp?]]></summary>
    </entry>
    <entry>
        <title type="html">Problem: null elements in a Vector (1 antworten)</title>
        <link href="http://groovy-forum.de/read.php?2,8049,8049#msg-8049" />
        <category term="Groovy" />
        <published>2010-08-23T18:18:34+02:00</published>
        <updated>2010-08-23T22:53:28+02:00</updated>
        <id>http://groovy-forum.de/read.php?2,8049,8049#msg-8049</id>
        <author>
            <name>hernia</name>
        </author>
        <summary type="html"><![CDATA[ Hi! I'm writing a script in Groovy -my first time-. The synthesized code where I'm getting the error is that:<br />
<br />
<pre class="bbcode">
//////////THIS ABSTRACT CLASS IS WRITTEN IN JAVA/////////////
public abstract class BaseFormation {
    public Vector&lt;Player&gt; form;
    /*.....*/

    public void set_team_name() {
    /*.....*/
    }
}

/////////THIS CLASS IS WRITTEN IN GROOVY, EXTENDING THE JAVA CLASS ABOVE////////
public class Formation extends BaseFormation {

    public Formation() {
        this.form = new Vector&lt;Player&gt;(10);
        this.set_team_name();
        this.set_formation();
        }

    public void set_formation() {
        Player aux=new Player();

        this.form.add(aux.set_player(2, position.CF, 0.5, 0.5));
        this.form.add(aux.set_player(3, position.SW, 0.5, 0.5));
        this.form.add(aux.set_player(4, position.SB, 0.5, 0.5));
        /* I repeat this 7 more times */

        for (k in 0..9)
            {
                switch(this.form.get(k).pos)
                    {
                    /*.....*/</pre>
<br />
<br />
Where Player is a class (also written in java) containing some variables (pos, home_x, home_y...) and methods (the most important: set_player(), that sets the values from its args into the member variables).<br />
<br />
set_player() is working OK, beacause I'm sure that the aux object contains all the values correctly. But the problem is with the add() method. aux object isn't copied ok, and when the &quot;switch&quot; line is executed, I get the next error: exception from Groovy: java.lang.NullPointerException: Cannot get property: pos on null object.<br />
<br />
I've tried also with other methods like add(index, object) and also set(index, object) but it's always the same. add() is returning true, so I'm really disoriented.<br />
<br />
I'll be very grateful for any help or advice!! I'm very hurry, I have to finish it early! My objective isn't to get an strictly correct Groovy code, I only need that it works! :)<br />
<br />
Hernán.]]></summary>
    </entry>
    <entry>
        <title type="html">Grails Plugins heisst nach Trouble fragen (1 antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8045,8045#msg-8045" />
        <category term="Grails" />
        <published>2010-08-23T15:26:47+02:00</published>
        <updated>2010-08-23T17:11:56+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8045,8045#msg-8045</id>
        <author>
            <name>Fortgeschrittener_Anfänger</name>
        </author>
        <summary type="html"><![CDATA[ Ich würde gerne eure Meinung wissen.<br />
<br />
In einem  <br />
<br />
<a href="http://derekmarley.wordpress.com/2010/08/06/grails-and-dojo-%E2%80%93-adding-dojo-components-to-a-springsource-grails-project-the-dojo-adventure" rel="nofollow" >  Blog  </a> <br />
<br />
habe ich gelesen, dass Grails Plugins eigentlich nur gut sind, um eine Ausgangsgrundlage für eigene Programmierung zu haben. Er schreibt:<br />
<blockquote class="bbcode"><div><small>Zitat<br/></small><strong></strong><br/>
that Grails Plugins are only to be used as a code starting point, and you should always source control your own version of the plugin if you choose to use one ...  Using Grails Plugins without source controlling your own version is just asking for trouble</div></blockquote>
<br />
<br />
Was sagt ihr dazu?]]></summary>
    </entry>
    <entry>
        <title type="html">Grails-Entwickler (m/w) gesucht! (no Antworten)</title>
        <link href="http://groovy-forum.de/read.php?11,8044,8044#msg-8044" />
        <category term="Jobs" />
        <published>2010-08-23T15:14:58+02:00</published>
        <updated>2010-08-23T15:14:58+02:00</updated>
        <id>http://groovy-forum.de/read.php?11,8044,8044#msg-8044</id>
        <author>
            <name>Andreas_Dieker</name>
        </author>
        <summary type="html"><![CDATA[ Hallo,<br />
<br />
für eine Festanstellung im Raum Nordrhein Westfahlen, bin ich auf der Suche nach einem Grails Entwickler (m/w)<br />
<br />
Die Anforderungen:<br />
- Deutsch sehr gut<br />
- 1-2 Jahre Erfahrung in der Entwicklung mit Grails<br />
- Reisebereit im Raum NRW<br />
<br />
Bei Interesse melden Sie sich bitte unter:<br />
<br />
Andreas Dieker<br />
Account Manager 1st Solution<br />
Tel.:0221 159835 18<br />
<br />
Oder senden Sie Ihren aktuellen CV an: <a href="mailto:&#97;&#46;&#100;&#105;&#101;&#107;&#101;&#114;&#64;&#49;&#115;&#116;&#45;&#115;&#99;&#46;&#100;&#101;">&#97;&#46;&#100;&#105;&#101;&#107;&#101;&#114;&#64;&#49;&#115;&#116;&#45;&#115;&#99;&#46;&#100;&#101;</a> - Dann melde ich mich bei Ihnen.<br />
<br />
Viele Grüße<br />
Andreas Dieker]]></summary>
    </entry>
    <entry>
        <title type="html">Grails Code dokumentation (1 antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8042,8042#msg-8042" />
        <category term="Grails" />
        <published>2010-08-23T13:46:58+02:00</published>
        <updated>2010-08-23T14:40:31+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8042,8042#msg-8042</id>
        <author>
            <name>umit</name>
        </author>
        <summary type="html"><![CDATA[ Hallo!<br />
<br />
Gibts etwas für Grails, wie JavaDoc bei Java, wo man automatisch aus den Kommentaren ein Dokument generieren kann?(auch XML)<br />
<br />
mfg umit]]></summary>
    </entry>
    <entry>
        <title type="html">Country Klasse als Service Klasse? Oder doch SQL (1 antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8039,8039#msg-8039" />
        <category term="Grails" />
        <published>2010-08-20T15:09:30+02:00</published>
        <updated>2010-08-20T15:26:56+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8039,8039#msg-8039</id>
        <author>
            <name>charms</name>
        </author>
        <summary type="html"><![CDATA[ Hallo zusammen,<br />
<br />
Ich bin newbie in Grails. Wie würdet ihr eine Country Klasse in eure Projekte einbinden? Gibt es hier einen Standard weg in Grails? Habe gesehen, es gibt ein countries plugin aber das scheint nicht alles zu beinhalten. Würdet ihr eine Service Klasse anlegen oder eine Klasse mit Werten in SQL?<br />
<br />
Dem Land zugeordnet benötige ich die Abbrevations (GB, DE), die Namen (Great Britain, Germany) wie auch die Currency (GBP, EUR).<br />
<br />
Vielen Dank für eure Inputs.<br />
<br />
Grüsse,<br />
Chris]]></summary>
    </entry>
    <entry>
        <title type="html">prepared statements in groovy (2 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?2,8035,8035#msg-8035" />
        <category term="Groovy" />
        <published>2010-08-19T16:52:43+02:00</published>
        <updated>2010-08-20T09:07:20+02:00</updated>
        <id>http://groovy-forum.de/read.php?2,8035,8035#msg-8035</id>
        <author>
            <name>turmaline</name>
        </author>
        <summary type="html"><![CDATA[ Hallo Leute,<br />
<br />
mal zwangsläufig muss ich groovy kennenlernen. Das Aufgabe ist dabei Dateien aus einer Datenbank zu exportieren. Dabei wurde die Anfrage in zwei Teile getrennt. Im ersten Teil der Anfrage (query_documents) werden zunächst einmal allgemeine Daten abgefragt und daraus filename erstellt. Dann wird es im oldDocHome geschaut, ob eine Datei mit diesem Namen bereits existiert. Wenn ja, dann wird diese Datei einfach in docHome kopiert (statt sie aus der Datenbank zu exportieren). Wenn nicht, wird blob_data (query_blob) abgefragt und die Datei aus der Datenbank exportiert.<br />
<br />
Es funktioniert leider nicht((( Und da ich mich mit Syntax so gut wie gar nicht auskenne, sehe ich meine Fehler nicht. Bei Ausführung bekomme ich:<br />
No such property: blobref_id<br />
<br />
<pre class="groovy bbcode_geshi"><div class="head">Language: Groovy</div><a href="http://www.google.de/search?as_q=String&amp;num=100&amp;hl=en&amp;as_occt=url&amp;as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F"><span class="kw3">String</span></a> query_documents <span class="sy0">=</span> <span class="st0">&quot;&quot;&quot;SELECT a.id id, a.version version, e.language language, e.name name, e.blobref_id blobref_id 
		FROM ${tableuser}.attachment_entry e, ${tableuser}.attachment_entries ae, ${tableuser}.attachment a, ${tableuser}.attachment_blob b
		WHERE e.id = ae.attachment_entry_id AND a.id = ae.attachment_id AND e.blobref_id = b.id AND a.id &gt; 3000 AND a.id &lt; 3011&quot;&quot;&quot;</span>
    logger.<span class="me1">debug</span><span class="br0">&#40;</span><span class="st0">&quot;About to query: $query_documents&quot;</span><span class="br0">&#41;</span>
	sql.<span class="me1">withStatement</span> <span class="br0">&#123;</span> stmt <span class="sy0">-&gt;</span> 
		<span class="co1">//stmt.fetchSize = 10</span>
		<span class="co1">//stmt.maxFieldSize = 30000000</span>
		<span class="co1">//logger.debug(&quot;fetchSize=${stmt.fetchSize}, maxFieldSize=${stmt.maxFieldSize}&quot;)</span>
	<span class="br0">&#125;</span>
	sql.<a href="http://www.google.de/search?q=site%3Adocs.codehaus.org/%20eachRow"><span class="kw9">eachRow</span></a><span class="br0">&#40;</span>query_documents<span class="br0">&#41;</span> <span class="br0">&#123;</span>
		<a href="http://www.google.de/search?as_q=String&amp;num=100&amp;hl=en&amp;as_occt=url&amp;as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F"><span class="kw3">String</span></a> lang <span class="sy0">=</span> it.<span class="me1">LANGUAGE</span> <span class="sy0">!=</span> <a href="http://www.google.de/search?q=site%3Adocs.codehaus.org/%20null"><span class="kw2">null</span></a> <span class="sy0">?</span> it.<span class="me1">LANGUAGE</span> : <span class="st0">&quot;null&quot;</span>
		<a href="http://www.google.de/search?as_q=String&amp;num=100&amp;hl=en&amp;as_occt=url&amp;as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F"><span class="kw3">String</span></a> ext <span class="sy0">=</span> getExtension<span class="br0">&#40;</span>it.<span class="me1">NAME</span><span class="br0">&#41;</span>
		<a href="http://www.google.de/search?as_q=String&amp;num=100&amp;hl=en&amp;as_occt=url&amp;as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F"><span class="kw3">String</span></a> filename <span class="sy0">=</span> <span class="st0">&quot;${it.ID}.${it.VERSION}.${lang}.${ext}&quot;</span>
&nbsp;
		<span class="co1">// look for filename in olddata dir</span>
		<a href="http://www.google.de/search?as_q=File&amp;num=100&amp;hl=en&amp;as_occt=url&amp;as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F"><span class="kw3">File</span></a> thisFile <span class="sy0">=</span> <a href="http://www.google.de/search?q=site%3Adocs.codehaus.org/%20new"><span class="kw2">new</span></a> <a href="http://www.google.de/search?as_q=File&amp;num=100&amp;hl=en&amp;as_occt=url&amp;as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F"><span class="kw3">File</span></a> <span class="br0">&#40;</span><span class="st0">&quot;$oldDocHome/$module&quot;</span>, filename<span class="br0">&#41;</span>
		<span class="co1">// if it exists copy it</span>
		<a href="http://www.google.de/search?q=site%3Adocs.codehaus.org/%20if"><span class="kw1">if</span></a> <span class="br0">&#40;</span>thisFile.<span class="me1">exists</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
			<a href="http://www.google.de/search?q=site%3Adocs.codehaus.org/%20try"><span class="kw2">try</span></a> <span class="br0">&#123;</span>
		        FileUtils.<span class="me1">copyFile</span><span class="br0">&#40;</span>thisFile, <a href="http://www.google.de/search?q=site%3Adocs.codehaus.org/%20new"><span class="kw2">new</span></a> <a href="http://www.google.de/search?as_q=File&amp;num=100&amp;hl=en&amp;as_occt=url&amp;as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F"><span class="kw3">File</span></a> <span class="br0">&#40;</span><span class="st0">&quot;$docHome/$module&quot;</span>, thisFile.<span class="me1">getName</span> <span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="sy0">;</span>
		        <span class="co1">//logger.debug(&quot;Copying of &quot; + fileName)</span>
		    <span class="br0">&#125;</span> <a href="http://www.google.de/search?q=site%3Adocs.codehaus.org/%20catch"><span class="kw2">catch</span></a> <span class="br0">&#40;</span><a href="http://www.google.de/search?as_q=IOException&amp;num=100&amp;hl=en&amp;as_occt=url&amp;as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F"><span class="kw3">IOException</span></a> e<span class="br0">&#41;</span> <span class="br0">&#123;</span>
		        e.<span class="me1">printStackTrace</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span>
		    <span class="br0">&#125;</span>
		<span class="br0">&#125;</span> 
		<a href="http://www.google.de/search?q=site%3Adocs.codehaus.org/%20else"><span class="kw1">else</span></a> <span class="br0">&#123;</span>
			<a href="http://www.google.de/search?as_q=String&amp;num=100&amp;hl=en&amp;as_occt=url&amp;as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F"><span class="kw3">String</span></a> query_blob <span class="sy0">=</span> <span class="st0">&quot;SELECT blob_data from ${tableuser}.attachment_blob WHERE blobref_id = :id&quot;</span>
			sql.<a href="http://www.google.de/search?q=site%3Adocs.codehaus.org/%20eachRow"><span class="kw9">eachRow</span></a><span class="br0">&#40;</span>query_blob, <span class="br0">&#91;</span>id: blobref_id<span class="br0">&#93;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> row <span class="sy0">-&gt;</span>
			writeBlob<span class="br0">&#40;</span>filename, row.<span class="me1">getBinaryStream</span><span class="br0">&#40;</span><span class="st0">&quot;BLOB_DATA&quot;</span><span class="br0">&#41;</span>, module<span class="br0">&#41;</span><span class="br0">&#125;</span>
		<span class="br0">&#125;</span> 
&nbsp;
	<span class="br0">&#125;</span> <span class="co1">// for each row in query_documents</span></pre>
<br />
Kann mir jemand helfen?<br />
<br />
Gruß, madlena]]></summary>
    </entry>
    <entry>
        <title type="html">3mal Codierungsprobleme :-( (11 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8033,8033#msg-8033" />
        <category term="Grails" />
        <published>2010-08-18T20:53:28+02:00</published>
        <updated>2010-09-01T22:45:59+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8033,8033#msg-8033</id>
        <author>
            <name>slyfox1972</name>
        </author>
        <summary type="html"><![CDATA[ Hallo!<br />
<br />
Programmieren und in Grails macht ja eigentlich Spaß, aber wenn ständig unerwartete Probleme auftreten, und die meiste Zeit an Fehlersuche und Problemlösungen hängen bleibt, wird's eher frustierend.<br />
<br />
Bei einem Projekt treten gleich an 3 Stellen Probleme mit Codierung/Charset auf:<br />
<br />
In allen 3 Fällen wird UTF-8 verwendet, sowohl die Datenbank enthält UTF-8-Text, die message.properties, und auch die HTTP-Header und HTML-Metatags geben dem Browser die entsprechenden Infos.<br />
<br />
Fall 1:<br />
<br />
Beim Aufruf von &quot;[<a href="http://(url)/search/index?q=M" rel="nofollow" >(url)</a>]ünchen&quot; funktionierte es ohne Probleme, wenn ich das Projekt mit &quot;grails run-app&quot; starte...<br />
<br />
println params gibt aus:<br />
<br />
[q:München, action:index, controller:search]<br />
<br />
Beim Installieren der App in Tomcat wird aber ausgegeben:<br />
<br />
[q:MÃ&amp;#188;nchen, action:index, controller:search]<br />
<br />
Fall 2:<br />
<br />
Ich habe mit &quot;grails generate-all &lt;class&gt;&quot; die Views für eine Klasse erzeugt.<br />
<br />
Nun steht da auf dem Löschen-Button &quot;LÃ¶schen&quot; statt &quot;Löschen&quot;, hat der Codierfehlerteufel wieder zugeschlagen. Bei anderen Views jeodch nicht.<br />
<br />
Fall 3:<br />
<br />
In einem anderen View wird bei value=&quot;${fieldValue(bean: placeInstance, field: 'name')}&quot; die Methode encodeAsHTML() doppelt ausgeführt, aus &quot;Straße&quot; wurde &quot;Stra&amp;amp;szlig;e&quot;.<br />
Bei Ändern durch &quot;${placeInstance?.name}&quot; wird encodeAsHTML() einmal aufgeführt.<br />
<br />
Dabei wird &quot;placeInstance&quot; ganz normal dem View übergeben:<br />
<br />
<pre class="bbcode">def editPlace = {
  def placeInstance = Place.get(params.id)
  ...
  render(view: &quot;editPlace&quot;, model: [placeInstance: placeInstance])
}</pre>
<br />
Wie kann es sein, dass encodeAsHTML() manchmal generell bei ${...} ausgeführt wird, manchmal nicht?<br />
<br />
Viele Grüße<br />
<br />
Egon Schmid]]></summary>
    </entry>
    <entry>
        <title type="html">HTML mit Groovy-Template und Groovy-Skript (1 antworten)</title>
        <link href="http://groovy-forum.de/read.php?2,8032,8032#msg-8032" />
        <category term="Groovy" />
        <published>2010-08-18T10:56:01+02:00</published>
        <updated>2010-08-20T16:21:55+02:00</updated>
        <id>http://groovy-forum.de/read.php?2,8032,8032#msg-8032</id>
        <author>
            <name>Wicki</name>
        </author>
        <summary type="html"><![CDATA[ Hallo,<br />
<br />
folgendes Szenario:<br />
  HTML-Datei mit Groovy-Template-Code<br />
  Groovy-Skript mit einer Funktion, die vom Template benutzt werden soll<br />
  Abarbeitung des Ganzen unter Tomcat<br />
<br />
Wenn ich das Skript weglasse und statt der Fehler-Anweisung nur die Funktion aus dem Skript einfach in das<br />
Template einbette funktioniert das Ganze.<br />
Problem: Ich möchte die Funktion nicht einbetten sondern auf das Skript wie folgt verweisen:<br />
<b><u>def check = new KreditkarteSkript()</u></b><br />
Das führt zu dem Fehler:<br />
<pre class="bbcode">
javax.servlet.ServletException: Creation of template failed: groovy.lang.GroovyRuntimeException: Failed to parse template script (your template may contain an error or be trying to use expressions not currently supported): startup failed:
SimpleTemplateScript2.groovy: 32: unable to resolve class KreditkarteSkript 
 @ line 32, column 16.
   			def check = new KreditkarteSkript()
                  ^</pre>
<br />
Hier nun der Code der HTML-Datei, Template zwischen &lt;% ... %&gt;:<br />
<pre class="bbcode">
&lt;html&gt;
  &lt;head&gt;
    &lt;title&gt;Kreditkartentest&lt;/title&gt;
  &lt;/head&gt;
  &lt;body&gt;
    &lt;form action='Kreditkarten.html' method='post'&gt;
      &lt;h1 style='color:red'&gt;Kreditkartentest&lt;/h1&gt;
      &lt;table border='0'&gt;
        &lt;tr&gt;
          &lt;td&gt;Nummer der Kreditkarte&lt;/td&gt;
          &lt;td&gt; &lt;/td&gt;
          &lt;td&gt;
            &lt;input type='text' name='Nummer' /&gt;
          &lt;/td&gt;
          &lt;td&gt; &lt;/td&gt;
          &lt;td&gt;
            &lt;select name='Hersteller'&gt;
              &lt;option&gt;1 - MasterCard&lt;/option&gt;
              &lt;option&gt;2 - Visa&lt;/option&gt;
              &lt;option&gt;3 - AmericanExpress&lt;/option&gt;
            &lt;/select&gt;
          &lt;/td&gt;
        &lt;/tr&gt;
      &lt;/table&gt;
      &lt;%
		def nummer = params.Nummer
		def hersteller = params.Hersteller
		def farbe = 'black'
		def text = ''
		if(nummer) {
			def check = new KreditkarteSkript()
			def erg = check.nummerGueltig(hersteller[0], nummer)
			switch(erg) {
			case Boolean:
			    if(erg) {
					farbe = 'green'
					text = 'Die Nummer ist RICHTIG'
			    } else {
					farbe = 'red'
					text = 'Die Nummer ist FALSCH'
	    		}
				break
			case String:
				farbe = 'red'
				text = erg
				break
			}
		}
%&gt;
      &lt;h2 style='color:${farbe}'&gt;${text}&lt;/h2&gt;
      &lt;input type='submit' value='Nummer prüfen' /&gt;
    &lt;/form&gt;
  &lt;/body&gt;
&lt;/html&gt;</pre>
<br />
Es folgt das Skript:<br />
<pre class="bbcode">
  def input = new BufferedReader(new InputStreamReader(System.in))
  println 'Kreditkartentest'
  println '----------------'
  def nummer
  def hersteller
  def herstellerMap = [ 1 : 'MasterCard', 2 : 'Visa', 3 : 'AmericanExpress']
  while(true) {
	println 'Liste der Hersteller: ' + herstellerMap
	print 'Bitte geben Sie die Nummer des Herstellers ein: '
	hersteller = input.readLine()
	if(nummer == null || nummer.length() == 0)
		break
	print 'Bitte geben Sie eine Kreditkartennummer ein: '
	nummer = input.readLine()
	if(nummer == null || nummer.length() == 0)
		break
	def erg = nummerGueltig(hersteller, nummer)
	switch(erg) {
	case Boolean:
	    if(erg)
			println('Die Nummer ist RICHTIG')
		else
			println('Die Nummer ist FALSCH')
		break
	case String:
		println erg
		break
	}
  }
  
  def nummerGueltig(hersteller, nummer) {
	if(hersteller &lt; '1' || hersteller &gt; '3')
	  return 'Der Hersteller ist ungültig'
	if(nummer == null)
      return 'Die Nummer ist null'
	if (nummer.length() == 13 &amp;&amp; nummer[0] == &quot;4&quot;)
	  return true
	else
	  return false
  }</pre>
<br />
und die web.xml:<br />
<pre class="bbcode">
&lt;!DOCTYPE web-app
    PUBLIC &quot;-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN&quot;
    &quot;[<a href="http://java.sun.com/j2ee/dtds/web-app_2_2.dtd&quot" rel="nofollow" >java.sun.com</a>]; &gt;

&lt;web-app&gt;
    &lt;display-name&gt;Groovlet Demonstrator&lt;/display-name&gt;
    &lt;description&gt;
        Groovlets and Templates
    &lt;/description&gt;
    &lt;servlet&gt;
        &lt;servlet-name&gt;Groovy&lt;/servlet-name&gt;
        &lt;servlet-class&gt;groovy.servlet.GroovyServlet&lt;/servlet-class&gt;
    &lt;/servlet&gt;
    &lt;servlet-mapping&gt;
        &lt;servlet-name&gt;Groovy&lt;/servlet-name&gt;
        &lt;url-pattern&gt;*.groovy&lt;/url-pattern&gt;
    &lt;/servlet-mapping&gt;
    &lt;servlet&gt;
        &lt;servlet-name&gt;Template&lt;/servlet-name&gt;
        &lt;servlet-class&gt;groovy.servlet.TemplateServlet&lt;/servlet-class&gt;
    &lt;/servlet&gt;
    &lt;servlet-mapping&gt;
        &lt;servlet-name&gt;Template&lt;/servlet-name&gt;
        &lt;url-pattern&gt;*.html&lt;/url-pattern&gt;
    &lt;/servlet-mapping&gt;
&lt;/web-app&gt;</pre>
<br />
Ich habe auch schon das Skript separat kompiliert aber ohne Erfolg.<br />
Bitte um Hilfe.<br />
<br />
Gruß Wicki]]></summary>
    </entry>
    <entry>
        <title type="html">Tomcat, Groovy Script &quot;The requested resource () is not available.&quot; (no Antworten)</title>
        <link href="http://groovy-forum.de/read.php?2,8031,8031#msg-8031" />
        <category term="Groovy" />
        <published>2010-08-17T12:55:41+02:00</published>
        <updated>2010-08-17T12:55:41+02:00</updated>
        <id>http://groovy-forum.de/read.php?2,8031,8031#msg-8031</id>
        <author>
            <name>wilhelm.nagy@bfw.gv.at</name>
        </author>
        <summary type="html"><![CDATA[ Hallo Leute,<br />
<br />
vielleicht kann mir jemand bei einem Problem helfen, welches mich schon länger quält...<br />
<br />
Seit Groovy Version 1.7.x gibt es das Problem, dass bei nochmaligen Aufruf eines ganz normalen Skript folgende Fehlermeldung gibt:<br />
<br />
The requested resource () is not available.<br />
<br />
auf der Konsole erscheint:<br />
<br />
GroovyServlet Error:  script: '/start.groovy':  Script not found, sending 404.<br />
<br />
das Skirpt start.groovy befindet sich in ./WEB-INF/groovy (so wie empfohlen) <br />
Es mach auch das selbe, wenn des direkt im Applikationsroot liegt.<br />
<br />
Das Skript ist dzg. auf das notwendigste reduziert...<br />
<pre class="bbcode">
println &quot;****${new Date().toString()}  ${request.getParameter('x')}******&quot;</pre>
<br />
Web-XML hat folgenden Inhalt:<br />
<pre class="bbcode">
   &lt;servlet&gt;
      &lt;servlet-name&gt;Groovy&lt;/servlet-name&gt;
      &lt;servlet-class&gt;groovy.servlet.GroovyServlet&lt;/servlet-class&gt;
   &lt;/servlet&gt;
   
   &lt;servlet-mapping&gt;
      &lt;servlet-name&gt;Groovy&lt;/servlet-name&gt;
      &lt;url-pattern&gt;*.groovy&lt;/url-pattern&gt;
   &lt;/servlet-mapping&gt;

	&lt;welcome-file-list&gt;
        &lt;welcome-file&gt;index.html&lt;/welcome-file&gt;
    &lt;/welcome-file-list&gt;

	&lt;session-config&gt;
	  &lt;session-timeout&gt;180&lt;/session-timeout&gt;
	&lt;/session-config&gt;</pre>
<br />
Ab und zu funktioniert es auch 2,3 mal hintereinander aber dann kommt die Fehlermeldung (aber eher selten).<br />
<br />
<br />
Lg]]></summary>
    </entry>
    <entry>
        <title type="html">Domain-Instanz mit variablem Domainnamen auslesen (3 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8027,8027#msg-8027" />
        <category term="Grails" />
        <published>2010-08-15T23:20:02+02:00</published>
        <updated>2010-08-17T01:22:35+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8027,8027#msg-8027</id>
        <author>
            <name>Schmettermann</name>
        </author>
        <summary type="html"><![CDATA[ Guten Abend,<br />
<br />
weiß weiß jemand, wie ich einen Zugriff wie <pre class="bbcode">Book.get(1)</pre> so gestalten kann, dass die Domain-Class (in diesem Beispiel &quot;Book&quot;) variabel ist?<br />
<br />
Beispiel:<br />
<pre class="bbcode">
def myDomainClassName = &quot;Book&quot;
def bookInstance = getDomainByName(myDomainClassName).get(1)</pre>
Die Funktion getDomainByName() gibt es leider nicht und ich konnte bis jetzt auch nichts ähnliches finden. Hat jemand eine Idee, wie man das Beispiel realisieren könnte?<br />
<br />
Vielen Dank vorab und einen schönen Sonntag!<br />
<br />
LG Schmettermann]]></summary>
    </entry>
    <entry>
        <title type="html">Ganz Neu in der Welt von Grails! - Wie Starten? (2 Antworten)</title>
        <link href="http://groovy-forum.de/read.php?3,8024,8024#msg-8024" />
        <category term="Grails" />
        <published>2010-08-14T21:25:13+02:00</published>
        <updated>2010-08-25T21:32:19+02:00</updated>
        <id>http://groovy-forum.de/read.php?3,8024,8024#msg-8024</id>
        <author>
            <name>germanse</name>
        </author>
        <summary type="html"><![CDATA[ Hallo an alle<br />
<br />
Ich habe mit Grails, Groovy und Java noch nichts am Hut gehabt.<br />
Mit der Programmierung schon, Python bspw. ist mir geläufig, sehr gut kannte ich mich auch in der Anwendungsprogrammierung mit Visual Basic 6 aus.<br />
Allerdings scheint mir dieses Vorwissen bei Groovy/Java/Grails nicht sonderlich behilflich zu sein.<br />
<br />
Denn die Art der Programmier-Logik und der Entwicklung ganz allgemein von Web Applikationen scheint doch schon eine ganz andere zu sein.<br />
Langsam scheine ich mich schon mit dem MVC System vertraut zu machen, doch bleiben sehr sehr viele Fragen offen.<br />
<br />
Ich denke schon, das Grails die richtige Umgebung für mich ist - doch wie kann ich den richtigen Einstieg finden?<br />
<br />
Ich möchte alles ganz genau wissen, doch viele Bücher setzen leider fundierte Java Kenntnisse voraus, wenn sie sich mit Groovy und Grails beschäftigen.<br />
Muss ich erst Java lernen, damit mir der Einstieg zu Groovy/Grails gelingt?!<br />
Durchaus bin ich bereit mir mein Wissen anhand von Sprachreferenzen selbst anzueignen - sehr gern sogar.<br />
Doch fehlt es mir an Hintergrundwissen, schon ganz allgemein die Logik, der Sinn und Zweck dahinter ist es, welche ich nicht verstehe.<br />
<br />
<br />
Ist jemanden ein gutes Tutorial/Buch/Seite bekannt, welche inspirierten auf mich einwirken könnte? Ich möchte gerne die Hintergründe erfahren - wieso und warum, ganz ausführlich - und  kein Halbwissen.<br />
Damit meine ich nicht nur die Hintergründe zum Thema Web Development, sondern auch zu Java - insoweit man es für Groovy und Grails benötigt.<br />
Eins welches an den Wurzeln ansetzt - alles von Anfang an. :-)<br />
<br />
<br />
Ich hoffe jemand versteht mich und kann mir weiterhelfen.<br />
<br />
In diesem Sinne ...<br />
germanse]]></summary>
    </entry>
</feed>
