Secciones

Artículos para tus primeros pasos

Si estás empezando a introducirte en el mundo de Groovy y Grails, no te pierdas nuestros artículos básicos: 

Entrevistas con los expertos
 

Los protagonistas te cuentan de qué van los proyectos más importantes del mundo Groovy:


Un proyecto de:
ImaginaWorks
Campus Escuela de Groovy

Grails

problemas con los controladores

metxito - sábado 10/05/2008
Les cuento.

No he podido iniciar un controlador.
Los pasos que he seguido segun un varios tutoriales, es:
1 grails create-app Demo
2 cd Demo
3 grails create-domain-class Book
4 vim grails-app/domain/Book.groovy
--el archivo Book.groovy quedo:
--class Book{
--      String titulo;
--      String autor;
--}
5 grails create-controller Book
6 vim grails-app/controller/BookController.groovy
--el archivo BookController.groovy quedo:
--class BookController {
--
--     def scaffold = Book
--}
7 grails run-app

Despues reviso el browser... en la direccion correspondiente que me indica el log del run-app
veo sin problemas la página... y veo el link a BookController.. pero una vez que le hago click me tira a una pag con una exception con el stacktrace enorme..
el detalle del error es:

GRAILS RUNTIME EXCEPTION

Message:
Caused by:
Class: Unknown
At Line: [-1]
Code Snippet:



sip.. todo el detalle esta completamente vacio.
en el stacktrace la exception dice:

java.lang.NullPointrException


La verdad ya he intentado muchas cosas.. primero pense que era porq lo habia instalado con el .deb que esta en la pag principal de grails. asi q lo removi y descarge el .zip de grails.org y segui las indicaciones obteniendo el mismo resultado.
otra cosa, que vi en un tutorial que los comandos create-domain-class y create-controller lo hacia con el proyecto ejecutandose... es decir con el run-app corriendo... me parecia extraño que fuera esto, pero lo intente de esta manera. Al final, el mismo problema.
En otros tutoriales hablaba de en vez de usar create-controller, usar generate-all para generar tanto los controles y las vistas más importantes.
Bueno el asunto es q no logro ejecutar este comando.
Despues de creado y modificado la clase de dominio Book
ejecuto grails generate-all Book y me tira error diciendo que la clase Book no existe.

La verdad es q no entiendo. No he podido empezar a probar esta herramienta.. ojala me puedan ayudar.

gracias nos vemos

Re: problemas con los controladores

Nacho - domingo 11/05/2008

Creo que el problema está en la mayúscula. En Grails los comandos reciben el nombre de los arterfactos tal como los vamos a usar en las urls, aunque luego se crean con la mayúscula. Por ejemplo:

grails create-domain-class book

nos crea la clase grails-app/domain/Book, y

grails generate-all book 

nos genera el controlador y las vistas para la clase Book

 

HTH.

 

Re: problemas con los controladores

metxito - lunes 12/05/2008

Nacho. gracias por tu interes. Pero estoy seguro que ese no es el problema, he probado tanto con mayusculas y minisculas. Ademas, no justifica el porque tengo problemas con el controlador cuando lo quiero probar.

 Segui el consejo de otro amigo e instale y probe grails en otra maquina. Lo hice en una con winXP y dio excelentes resultados. Ningun, pero ningun problema.

 Tengo la sospecha de que como estoy trabajando con Ubuntu y este trae instalado OpenJava-jre y yo instale sun-java6-jdk, el openJava me esta generando problemas. Es la unica explicación que tengo. ya que en win y en ubuntu tengo la misma version de sun-java y de grails instalados.

 

Si alguien a escuchado de alguna incompatibilidad entre Grails y OpenJava que me avise. porque de ser asi voy a tener que desinstalar OpenJava con todos los riesgos que esto implica(muchos paquete estan dependientes de OpenJava)

 

Gracias a todos 

Re: problemas con los controladores

srcarro - martes 10/06/2008

Aunque a mi también me llamó la atanción lo de las mayúsculas, probé a realizar tu ejemplo paso a paso, y me funcionó sin problemas. O sea, que eso no es.

Hay otro temilla que podría darte problemas: dices que tienes instalado "OpenJava-jre": las primeras pruebas que yo hice con Grails (en Windows) me dieron problemas por apuntar a una jre, en vez de a una jdk. El error que me daba era otro, pero por si acaso te sirve como pista.

Responder al hilo | Volver al foro "Grails" | Volver a los foros