Problemas com chain()
27/04/2010 00:00
0
Olá a todos. Tenho uma aplicação na empresa onde trabalho que mexe com cadastro de pessoas e impressão de relatórios usando grails 1.0, jasper report 0.8. Imprime em pdf. Mas estou com um problemas esquisito. Quando estou no RelatorioController na ação correspondente à impressão de relatório chamo um chain() pondo params, modelo e etc. Vai tudo bunitinho tirando uma string que passo por params. Se chama "Liderança", mas fica "Liderana". Este chain chama JasperController para imprimir. Se eu passar como redirect() o caractere especial "ç" permanece. Mas se eu usar o chama todo e qualquer caractere passado dentro de "params" é removido.


Obs: o "model" vai com todos os caracteres especiais.

chain(controller:'jasper', action:'index', model:[data:result], params:params)



Eu usei o redirect() só para testar. Eu tenho que usar o chain mesmo. mas precisa descobrir como passar esta string para ser impressa no relatório com o caractere especial.
Tags: Tópicos avançados


0
Descobri o problema. Era a versão que eu estava usando. Eu estava usando grails 1.0 e migrei para o 1.0.3. Nesta versão este problema não acontece.
17/05/2010 00:00


0
Faz muito sentido. Esta foi a PIOR versão do Grails.

Eu me lembro que a apresentei no WebDays 2008 e boa parte da apresentação era ensinando a como lidar com os bugs dela.

De lá pra ca as coisas melhorara muito. Eu se fosse você inclusive migraria para a última versão, que possui qualidade anos luz à frente.


0
Eu o faria se a empresa permitisse. Acontece que a merda do meu chefe está nem aí para este projeto e não liga para os bugs que ele têm.

Mas sabe que você me animou para fazer isso <!-- s:P --><img src="{SMILIES_PATH}/icon_razz.gif" alt=":P" title="Razz" /><!-- s:P -->. Se eu fosse fazer, quais seriam os problemas que eu iria enfrentar na migração?
19/05/2010 00:00


0
Olha, eu faria um upgrade gradual.

Visto que você está na versão 1.0, eu primeiro passaria para a 1.1 e testaria nesta nova versão.
Em seguida, faria o mesmo pra 1.2 e pra 1.3.

Algumas coisas mudam, como por exemplo localização de alguns arquivos (filtros, página inicial).
Mas no geral, o upgrade normalmente é 100% tranquilo.


0
Resolvi fazer a migração para o 1.1. Você que seria tranquilo mas não está sendo não. Ele gerou o seguinte erro :


[groovyc] org.codehaus.groovy.control.MultipleCompilationErrorsException&#58; startup failed, C&#58;\java\Projetos\GappWebOnGrailsTeste\grails-app\controllers\GraficoEleicaoController.groovy&#58; 1&#58; unable to resolve class org.hibernate.FetchMode
[groovyc] @ line 1, column 1.
[groovyc] import org.hibernate.FetchMode as FM
[groovyc] ^


Eu removi todos estes imports que haviam no projeto mas não sei se isto vai afetar em alguma coisa. Porque será que ele gerou este erro? Antes não tinha problema.

E depois de remover estes imports todos ele gerou estes erros aqui



Base Directory&#58; C&#58;\java\Projetos\GappWebOnGrailsTeste
Running script C&#58;\java\grails-1.1\scripts\RunApp.groovy
Environment set to development
[groovyc] Compiling 1 source file to C&#58;\Documents and Settings\daniel.costa\.grails\1.1\projects\GappWebOnGrailsTeste\classes
Running Grails application..
2010-05-21 15&#58;23&#58;12,751 [main] ERROR context.ContextLoader - Context initialization failed
org.springframework.beans.factory.BeanCreationException&#58; Error creating bean with name 'trocaMunicipioService'&#58; Cannot resolve reference to bean 'transactionManager' while setting bean property 'transactionManager'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException&#58; No bean named 'transactionManager' is defined
at java.security.AccessController.doPrivileged(Native Method)
at grails.web.container.EmbeddableServer$start.call(Unknown Source)
at _GrailsRun_groovy$_run_closure5_closure11.doCall(_GrailsRun_groovy&#58;145)
at _GrailsRun_groovy$_run_closure5_closure11.doCall(_GrailsRun_groovy)
at _GrailsSettings_groovy$_run_closure10.doCall(_GrailsSettings_groovy&#58;269)
at _GrailsRun_groovy$_run_closure5.doCall(_GrailsRun_groovy&#58;137)
at _GrailsRun_groovy.runInline(_GrailsRun_groovy&#58;104)
at _GrailsRun_groovy.this$4$runInline(_GrailsRun_groovy)
at _GrailsRun_groovy$_run_closure1.doCall(_GrailsRun_groovy&#58;58)
at RunApp$_run_closure1.doCall(RunApp.groovy&#58;33)
at gant.Gant$_dispatch_closure4.doCall(Gant.groovy&#58;324)
at gant.Gant$_dispatch_closure6.doCall(Gant.groovy&#58;334)
at gant.Gant$_dispatch_closure6.doCall(Gant.groovy)
at gant.Gant.withBuildListeners(Gant.groovy&#58;344)
at gant.Gant.this$2$withBuildListeners(Gant.groovy)
at gant.Gant$this$2$withBuildListeners.callCurrent(Unknown Source)
at gant.Gant.dispatch(Gant.groovy&#58;334)
at gant.Gant.this$2$dispatch(Gant.groovy)
at gant.Gant.invokeMethod(Gant.groovy)
at gant.Gant.processTargets(Gant.groovy&#58;495)
at gant.Gant.processTargets(Gant.groovy&#58;480)
Caused by&#58; org.springframework.beans.factory.NoSuchBeanDefinitionException&#58; No bean named 'transactionManager' is defined
... 21 more
2010-05-21 15&#58;23&#58;12,782 [main] ERROR mortbay.log - Failed startup of context org.mortbay.jetty.webapp.WebAppContext@1dffb78{/GappWebOnGrails,C&#58;\java\Projetos\GappWebOnGrailsTeste/web-app}
org.springframework.beans.factory.BeanCreationException&#58; Error creating bean with name 'trocaMunicipioService'&#58; Cannot resolve reference to bean 'transactionManager' while setting bean property 'transactionManager'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException&#58; No bean named 'transactionManager' is defined
at java.security.AccessController.doPrivileged(Native Method)
at grails.web.container.EmbeddableServer$start.call(Unknown Source)
at _GrailsRun_groovy$_run_closure5_closure11.doCall(_GrailsRun_groovy&#58;145)
at _GrailsRun_groovy$_run_closure5_closure11.doCall(_GrailsRun_groovy)
at _GrailsSettings_groovy$_run_closure10.doCall(_GrailsSettings_groovy&#58;269)
at _GrailsRun_groovy$_run_closure5.doCall(_GrailsRun_groovy&#58;137)
at _GrailsRun_groovy.runInline(_GrailsRun_groovy&#58;104)
at _GrailsRun_groovy.this$4$runInline(_GrailsRun_groovy)
at _GrailsRun_groovy$_run_closure1.doCall(_GrailsRun_groovy&#58;58)
at RunApp$_run_closure1.doCall(RunApp.groovy&#58;33)
at gant.Gant$_dispatch_closure4.doCall(Gant.groovy&#58;324)
at gant.Gant$_dispatch_closure6.doCall(Gant.groovy&#58;334)
at gant.Gant$_dispatch_closure6.doCall(Gant.groovy)
at gant.Gant.withBuildListeners(Gant.groovy&#58;344)
at gant.Gant.this$2$withBuildListeners(Gant.groovy)
at gant.Gant$this$2$withBuildListeners.callCurrent(Unknown Source)
at gant.Gant.dispatch(Gant.groovy&#58;334)
at gant.Gant.this$2$dispatch(Gant.groovy)
at gant.Gant.invokeMethod(Gant.groovy)
at gant.Gant.processTargets(Gant.groovy&#58;495)
at gant.Gant.processTargets(Gant.groovy&#58;480)
Caused by&#58; org.springframework.beans.factory.NoSuchBeanDefinitionException&#58; No bean named 'transactionManager' is defined
... 21 more
2010-05-21 15&#58;23&#58;12,829 [main] ERROR mortbay.log - Nested in org.springframework.beans.factory.BeanCreationException&#58; Error creating bean with name 'trocaMunicipioService'&#58; Cannot resolve reference to bean 'transactionManager' while setting bean property 'transactionManager'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException&#58; No bean named 'transactionManager' is defined&#58;
org.springframework.beans.factory.NoSuchBeanDefinitionException&#58; No bean named 'transactionManager' is defined
at java.security.AccessController.doPrivileged(Native Method)
at grails.web.container.EmbeddableServer$start.call(Unknown Source)
at _GrailsRun_groovy$_run_closure5_closure11.doCall(_GrailsRun_groovy&#58;145)
at _GrailsRun_groovy$_run_closure5_closure11.doCall(_GrailsRun_groovy)
at _GrailsSettings_groovy$_run_closure10.doCall(_GrailsSettings_groovy&#58;269)
at _GrailsRun_groovy$_run_closure5.doCall(_GrailsRun_groovy&#58;137)
at _GrailsRun_groovy.runInline(_GrailsRun_groovy&#58;104)
at _GrailsRun_groovy.this$4$runInline(_GrailsRun_groovy)
at _GrailsRun_groovy$_run_closure1.doCall(_GrailsRun_groovy&#58;58)
at RunApp$_run_closure1.doCall(RunApp.groovy&#58;33)
at gant.Gant$_dispatch_closure4.doCall(Gant.groovy&#58;324)
at gant.Gant$_dispatch_closure6.doCall(Gant.groovy&#58;334)
at gant.Gant$_dispatch_closure6.doCall(Gant.groovy)
at gant.Gant.withBuildListeners(Gant.groovy&#58;344)
at gant.Gant.this$2$withBuildListeners(Gant.groovy)
at gant.Gant$this$2$withBuildListeners.callCurrent(Unknown Source)
at gant.Gant.dispatch(Gant.groovy&#58;334)
at gant.Gant.this$2$dispatch(Gant.groovy)
at gant.Gant.invokeMethod(Gant.groovy)
at gant.Gant.processTargets(Gant.groovy&#58;495)
at gant.Gant.processTargets(Gant.groovy&#58;480)
Server running. Browse to http&#58;//localhost&#58;8080/GappWebOnGrails
21/05/2010 00:00


0
Hmm... ClassNotFound normalmente é sinal de que você está com problemas no cache de plugins da sua aplicação.

Execute grails clean e depois me diga se sua aplicação volta a funcionar ok?


0
Cheguei a fazer isso mas não funcionou. Quando isto aconteceu eu simplesmente havia mandado ele usar o grails 1.1 ao invés de usar o grails 1.0.3. Depois de mandar a mensagem anterior catei na internet sobre alterações necessárias. Mas fiquei desanimado pq não são poucas e eu sou noob demais em grails para tentar algo assim.
01/06/2010 00:00


0
Você tentou apagar a sua aplicação do diretório USER_HOME/.grails/versaoDoGrails/projects/seuprojeto ? Não é nem um pouco recomendando, mas seria uma boa tentar!
Poderia também disponibilizar para nós também as alterações necessárias que você conseguiu na internet?
01/06/2010 00:00



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