Je suis nouveau sur Grails (mais pas sur Groovy ou le développement web). J'essaie d'écrire une application Web qui accepte les demandes REST. Le problème que j'ai est qu'en dépit de suivre - autant que je peux dire - la documentation, je reçois toujours 404s en frappant ce que je crois est l'URL correcte.Les mappages d'URL REST ne fonctionnent pas (Grails 1.3.3, Tomcat6)
Les détails sont les suivants.
Le projet est flambant neuf (en utilisant Grails et IntelliJ IDEA 1.3.3 9.0.3 qui supporte 1.3.3)
Un contrôleur de test très simple:
package com.myproject
class TestController {
def index = { }
def list = {
System.out.println("params = " + params);
}
def save = {
System.out.println("params = " + params);
}
}
et la mise en correspondance également URL , tentant de mapper toutes les requêtes GET à la méthode list() du contrôleur. Selon le document et le livre Grails in Action, le nom du contrôleur "test" dans le mappage sera mappé à TestController.
class UrlMappings {
static mappings = {
"/test" (controller: "test") {
action = [ GET: "list", POST: "save" ]
}
"/"(view:"/index")
"500"(view:'/error')
}
}
L'application est déployée (éclatées) avec succès dans Tomcat6 dans le contexte monappli (j'ai html statique dans la racine que je peux afficher avec succès).
Le contenu de apache-tomcat-6.0.28 \ webapps \ myproject (si c'est important) est inclus ci-dessous. J'ai dépouillé les choses non essentielles. La classe de contrôleur est déployée, même pour la classe UrlMappings.
Toutes les requêtes HTTP aux variations suivantes
http://localhost:8080/myproject/test/list
http://localhost:8080/myproject/test/list/
http://localhost:8080/myproject/test/
http://localhost:8080/myproject/test
retour 404. Soit est un bug bizarre ou, plus probablement, une simple erreur à laquelle je suis aveugle.
Votre aide est appréciée. Je vous remercie!
| index.html
| mysql-connector-java-5.1.13-bin.jar
|
\---WEB-INF
| applicationContext.xml
| sitemesh.xml
|
+---classes
| | BootStrap$_closure1.class
| | BootStrap$_closure2.class
| | BootStrap.class
| | Config$_run_closure1.class
| | Config$_run_closure1_closure3.class
| | Config$_run_closure1_closure4.class
| | Config$_run_closure1_closure5.class
| | Config$_run_closure2.class
| | Config.class
| | resources$_run_closure1.class
| | resources.class
| | UrlMappings$__clinit__closure1.class
| | UrlMappings$__clinit__closure1_closure2.class
| | UrlMappings.class
| |
| +---com
| | \---myproject
| | TestController$_closure1.class
| | TestController$_closure2.class
| | TestController$_closure3.class
| | TestController.class
| |
| \---org
| \---grails
| \---tomcat
| ParentDelegatingClassLoader.class
| SearchFirstURLClassLoader.class
| TomcatLoader.class
| TomcatServer$_preStart_closure3.class
| TomcatServer$_preStart_closure3_closure5.class
| TomcatServer$_start_closure1.class
| TomcatServer$_start_closure1_closure4.class
| TomcatServer$_start_closure2.class
| TomcatServer.class
| TomcatServerFactory.class
|
+---lib
| catalina-ant.jar
| grails-tomcat-plugin-1.0.jar
| jasper-jdt.jar
| mysql-connector-java-5.1.13-bin.jar
| tomcat-dbcp.jar
| tomcat-jasper.jar
| tomcat-juli-adapters.jar
| tomcat-juli.jar
|
\---tld
grails.tld
spring.tld