Problemas ao mudar versão do grails
20/12/2012 17:28
0
Olá pessoal, eu estava utilizando a versão 1.3.4 do grails e resolvi mudar para a versão 2.1.1, consegui resolver alguns problemas simples com relação a versão do hibernate e tomcat, porém estou enfrentando um erro dificil de resolver.

tenho este controler:


package exemplograils

class UsuarioController {

def scaffold = Usuario

def search = {}

def doSearch = {

return [ usuarios: Usuario.findAllByNomeLike("%"+params.nome+"%") ]

}

def readFromFile = {
def openAgain = new File("documentos/"+params.id+".pdf")

response.setHeader("Content-disposition", "filename=documentos/teste.pdf")

response.outputStream << openAgain.getBytes()
response.outputStream.flush()
return
}
}


e as views (search.gsp):


<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->

<%@ page contentType="text/html;charset=UTF-8" %>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Buscar Usuários</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta name="layout" content="main"/>
<script type="text/javascript" src="/exemplograils/js/application.js"></script>
<g:javascript library="prototype" />

</head>
<body>
<div id="spinner" class="spinner" style="display:none;">
<img src="/exemplograils/images/spinner.gif" alt="Loading..." />
</div>

<div class="nav">
<span class="menuButton"><a class="home" href="/exemplograils/">Home</a></span>
<span class="menuButton"><a href="/exemplograils/usuario/create" class="create">New Usuario</a></span>
</div>
<div class="body">
<h1>Buscar Usuários</h1>
<g:if test="${flash.message}">
<div class="message">${flash.message}</div>
</g:if>
<g:hasErrors bean="${usuario}">
<div class="errors">
<g:renderErrors bean="${usuario}" as="list" />
</div>
</g:hasErrors>

<g:formRemote name="ajaxForm"
url="[controller:'usuario',action:'doSearch']"
update="[success:'message', failure: 'error']">


<div class="dialog">
<table>
<tr class='prop'>
<td valign='top' class='name'>
<label for='nome'> Nome :</label>
</td>
<td valign='top' class='value' ${hasErrors(bean:usuario,field:'nome','errors')} >
<input type='text' name='nome' size="40" value='${usuario?.nome}'/>
</td>
</tr>
</table>
</div>
<div class="buttons">
<span class="formButton">
<input type="submit" value="Buscar">
</span>
</div>
</g:formRemote>

</div>
<div class="body" id="message"></div>
<div class="body" id="error"></div>
</body>
</html>


e doSearch:


<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->

<%@ page contentType="text/html;charset=UTF-8" %>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Sample title</title>
</head>
<body>

<g:if test="${!usuarios}">
<div class="message"> Busca não retornou resultados para: ${params.nome} </div>
</g:if>
<table>
<tr>
<th>Id</th>
<th>Nome</th>
<th>Email</th>
<th></th>
</tr>
<g:each in="${usuarios}">
<tr>
<td>${it.id}</td>
<td>${it.nome}</td>
<td>${it.email}</td>
<td class=actionButtons">
<g:link controller="usuario" action="show" id="${it.id}">Detalhes</g:link>
</td>
<td class=actionButtons">
<g:link controller="usuario" action="readFromFile" id="${it.id}" target="_blank">Arquivo</g:link>
</td>
</tr>
</g:each>
</table>

</body>
</html>


e quando vou usar a action:

<g:link controller="usuario" action="search">Buscar Usuário</g:link>



tenho o seguinte erro:

HTTP Status 500 - Error applying layout : main

type Exception report

message Error applying layout : main

description The server encountered an internal error that prevented it from fulfilling this request.

exception

org.codehaus.groovy.grails.web.pages.exceptions.GroovyPagesException: Error applying layout : main
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
java.lang.Thread.run(Thread.java:680)
root cause

org.codehaus.groovy.grails.web.pages.exceptions.GroovyPagesException: Error processing GroovyPageView: Error executing tag <r:layoutResources>: No module found with name [prototype]
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
java.lang.Thread.run(Thread.java:680)
root cause

org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException: Error executing tag <r:layoutResources>: No module found with name [prototype]
Users_fabianoferreiraluz_aplicativosJava_exemplograils_grails_app_views_layouts_main_gsp$_run_closure1.doCall(Users_fabianoferreiraluz_aplicativosJava_exemplograils_grails_app_views_layouts_main_gsp:43)
Users_fabianoferreiraluz_aplicativosJava_exemplograils_grails_app_views_layouts_main_gsp.run(Users_fabianoferreiraluz_aplicativosJava_exemplograils_grails_app_views_layouts_main_gsp:46)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
java.lang.Thread.run(Thread.java:680)
root cause

java.lang.IllegalArgumentException: No module found with name [prototype]
org.grails.plugin.resource.ResourceProcessor.getAllModuleNamesRequired(ResourceProcessor.groovy:1110)
org.grails.plugin.resource.ResourceTagLib$_closure6.doCall(ResourceTagLib.groovy:375)
Users_fabianoferreiraluz_aplicativosJava_exemplograils_grails_app_views_layouts_main_gsp$_run_closure1.doCall(Users_fabianoferreiraluz_aplicativosJava_exemplograils_grails_app_views_layouts_main_gsp:43)
Users_fabianoferreiraluz_aplicativosJava_exemplograils_grails_app_views_layouts_main_gsp.run(Users_fabianoferreiraluz_aplicativosJava_exemplograils_grails_app_views_layouts_main_gsp:46)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
java.lang.Thread.run(Thread.java:680)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.30 logs.

Apache Tomcat/7.0.30




Alguem pode me ajudar?

Desde já agradeço pela atenção
Tags: mudar versão do grails


0
Boa noite, Fabiano.

Já tentou remover a declaração do "prototype"?
<g:javascript library="prototype" />


Você poderia gerar as views novamente, automaticamente, e adaptar o que foi gerado ao que você tinha na versão anterior. Pode funcionar também.

Abraço.
27/12/2012 22:23



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto