Capitulo 4.1 ${bookType} não é interpretado

87 views
Skip to first unread message

Rodrigo Giraldi Silva

unread,
Oct 12, 2015, 9:35:54 PM10/12/15
to livro-springmvc
No Capítulo 41. após inserir o esse o trecho:

<c:forEach items="${types}" var="bookType" varStatus="status">
<div>
<label for="price_${bookType}">${bookType}</label>
<input type="text" name="prices[${status.index}].value"
id="price_${bookType}"/>
<input type="hidden"
name="prices[${status.index}].bookType"
value="${bookType}"/>
</div>
</c:forEach>

Não é exibido os valores do enum na view, é mostrado o código como inserirdo no jsp 

 
 
 
 


Segue o link do projeto que estou usando no github:

No código que foi fornecido no github há algumas diferenças do que está no livro quanto a type e bookType, não sei se é aí que estou errando.


Att,
Rodrigo

Alberto SOUZA

unread,
Oct 13, 2015, 10:01:02 AM10/13/15
to Rodrigo Giraldi Silva, livro-springmvc
Oi Rodrigo,

Conseguiu resolver? Percebi que no seu github o código está um pouco diferente. De todo jeito eu também vi que você tem um web.xml, pode apagar. Ou pelo menos deixe ele apontando para a versão 3 da especificação, nesse momento está com a 2.3.

Abraço!

--
Você recebeu essa mensagem porque está inscrito no grupo "livro-springmvc" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para livro-springm...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/livro-springmvc/f1a0814d-e332-4571-8251-d55f7fa08d34%40googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Rodrigo Giraldi Silva

unread,
Oct 14, 2015, 12:54:43 PM10/14/15
to livro-springmvc, rgiral...@gmail.com
Ainda nao consegui Alberto,
comecei o projeto do zero para ver se havia feito algo errado mas ainda nao consegui. Adotei o nome dos arquivos e diretorios todos em ingles pois em alguns momentos no livro esta em ingles e outros em portugues, mas ainda nao esta funcionando. Tentei colocar @ModelAttribute Product product no controller como esta no codigo final e tambem nao deu resultado, nao se seria usado nesse momento, pois nao foi mostrado ainda ate a parte que estou no livro.
Atualizei o projeto no github, se puder dar olhada ver se encontra o problema agradeco.

Rodrigo

Alberto SOUZA

unread,
Oct 14, 2015, 12:58:31 PM10/14/15
to Rodrigo Giraldi Silva, livro-springmvc

Rodrigo Giraldi Silva

unread,
Oct 14, 2015, 8:19:21 PM10/14/15
to livro-springmvc, rgiral...@gmail.com
Tentei, esse arquivo foi gerado quando criei o projeto com o maven pelo eclipse. Se eu tiro esse arquivo ele fica acusando um erro, mas de qualquer forma o servidor roda do msm jeito e o trecho ${bookType} tambem nao tem nenhuma mudanca

Alberto SOUZA

unread,
Oct 14, 2015, 8:31:56 PM10/14/15
to Rodrigo Giraldi Silva, livro-springmvc
Consegue mandar para o seu github a versão atual do seu código? Não interpretação de expression language geralmente tem a ver com o web.xml do projeto.

Abraço!

Rodrigo Giraldi Silva

unread,
Oct 14, 2015, 8:41:42 PM10/14/15
to livro-springmvc, rgiral...@gmail.com
Acabei de atualizar Alberto

Rodrigo Giraldi Silva

unread,
Oct 17, 2015, 1:50:20 PM10/17/15
to livro-springmvc, rgiral...@gmail.com
Criei o projeto novamente utilizando desta vez o Jboss forge e o eclipse do spring, porem o problema ainda persiste. Continuei até o final do capitulo para verificar se alguma das alterações seguintes iriam corrigir o problema mas isso nao aconteceu. Atualizei o projeto no git, se tiver algum sugestao do que pode estar acontecendo agradeço.


Rodrigo

Alberto SOUZA

unread,
Oct 18, 2015, 2:11:15 PM10/18/15
to Rodrigo Giraldi Silva, livro-springmvc
Oi Rodrigo,

Olhei o projeto e na verdade era só um detalhe mesmo, nem sei porque passou desapercebido. Enfim, você está fazendo {bookTypes} no seu foreeach, ao invés de ${bookTypes}. No seu controller, vc também está associando o BookType.class com a variável "bookTypes", você deve associar o array de objetos(BookType.values()).

Abraço,

Alberto

Rodrigo Giraldi Silva

unread,
Oct 18, 2015, 4:57:15 PM10/18/15
to livro-springmvc, rgiral...@gmail.com
Olá Alberto,
fiz essas alterações e agora deu certo, obrigado pela atenção.

Rodrigo

Rodrigo Magalhães

unread,
Apr 27, 2016, 12:30:41 PM4/27/16
to livro-springmvc
Oi, Alberto

Eu acho que estou com o mesmo sintoma, embora me pareça que a causa é outra. Por algum motivo eu não estou conseguindo passar os valores de bookType do formulário para o objeto product do controller para persistir.

Inclusive, eu coloco breakpoint nos métodos de setBookType e a execução não pára... para os métodos setValue pára que é uma beleza.

Certamente é algo que está na minha cara... você poderia me ajudar dando uma olhadela?


Obrigado!

Alberto SOUZA

unread,
Apr 28, 2016, 11:21:35 AM4/28/16
to Rodrigo Magalhães, livro-springmvc
Oi Rodrigo,

Experimenta criar a enum fora do BookType fora da classe Price?

--
Você recebeu essa mensagem porque está inscrito no grupo "livro-springmvc" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para livro-springm...@googlegroups.com.

Rodrigo Magalhães

unread,
Apr 28, 2016, 2:03:30 PM4/28/16
to livro-springmvc, rodrigo.r...@gmail.com
Oi Alberto, implementei como vi no seu git para o livro:

package org.casadosimba.loja.models;

import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
public enum BookType {
EBOOK,PRINTED,COMBO
}

Mas nenhuma mudança...

Rodrigo Magalhães

unread,
Apr 29, 2016, 7:42:20 AM4/29/16
to livro-springmvc, rodrigo.r...@gmail.com
Oi Alberto,

Eu tive a curiosidade de ver como o post está sendo formado. Usei o wireshark para ver o que realmente está sendo enviado e descobri o seguinte:

title=T%EDtulo+do+livro&description=Descri%E7%E3o+do+livro&pages=1000&prices%5B0%5D.value=2000&prices%5B0%5D.bookType=EBOOK&prices%5B1%5D.value=3000&prices%5B1%5D.bookType=PRINTED&prices%5B2%5D.value=4000&prices%5B2%5D.bookType=COMBO

Bom, os valores parecem estar sendo gerado ok. 

O tipo bookType já está sendo definido fora da classe type... o que mais pode estar acontecendo?

Abraços e obrigado,

Rodrigo 

Rodrigo Magalhães

unread,
Apr 29, 2016, 7:49:30 AM4/29/16
to livro-springmvc, rodrigo.r...@gmail.com
Oi Alberto!

Agora funcionou! O que eu fiz de diferente? Há minutos atras estava com o mesmo problema... daí eu fiz um search/replace de bookType para booktype (todas minúsculas), imaginando que haveria algum detalhe que impedisse variáveis com proper case serem transcritas corretamente... nada mudou, continuou o mesmo problema.

Depois mudei de volta de booktype para bookType e agora funciona! Realmente programação se parece com uma ciência exotérica às vezes.

Obrigado,

Rodrigo

Rodrigo Magalhães

unread,
Apr 29, 2016, 7:55:32 AM4/29/16
to livro-springmvc, rodrigo.r...@gmail.com
Achei!

Fiz uma besteira em cima de outra...

Numa das minhas tentativas de entender o que acontecia eu mudei o setter do parâmetro bookType para:

public void setBooktypex(BookType bookType) { this.bookType = bookType; } Então, quando eu criei o tipo BookType por fora da classe, a mudança não surtiu efeito. Bom, explicações há; mas às vezes a gente não enxerga tão fácil! Obrigado, Rodrigo


Alberto SOUZA

unread,
Apr 29, 2016, 9:39:48 AM4/29/16
to Rodrigo Magalhães, livro-springmvc
Oi Rodrigo, 

Que bom que achou, eu já estava aqui olhando novamente :).

Abraço!

Marco André Machado

unread,
Feb 27, 2017, 12:36:57 PM2/27/17
to livro-springmvc, rodrigo.r...@gmail.com
Desenterrando o tópico, mas só agora comecei a estudar o Spring MVC

Estou com o mesmo problema relatado, a parte do bootType não aparece no JSP

Se alguém puder me ajudar, agradeço

Alberto SOUZA

unread,
Mar 1, 2017, 5:14:04 PM3/1/17
to Marco André Machado, livro-springmvc, rodrigo.r...@gmail.com
Mas ele aparece como se não fosse interpretado? O resto das expression language, são interpretadas?

Marco André Machado

unread,
Mar 1, 2017, 5:40:38 PM3/1/17
to Alberto SOUZA, livro-springmvc, rodrigo.r...@gmail.com
Testei aqui um c:out e funcionou

Quando rodo minha aplicação, essa é a tela que vejo:

Imagem inline 1


--
Marco André Machado

ABC: Always Be Coding

Em 1 de março de 2017 19:13, Alberto SOUZA <alot...@gmail.com> escreveu:
Mas ele aparece como se não fosse interpretado? O resto das expression language, são interpretadas?

Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para livro-springmvc+unsubscribe@googlegroups.com.

Alberto SOUZA

unread,
Mar 1, 2017, 6:24:10 PM3/1/17
to Marco André Machado, livro-springmvc, rodrigo.r...@gmail.com
Sua aplicação tem um web.xml? Se tiver, veja se ele não está referenciando a versão 2.5 ou qq uma menor que a 3. Se tiver, atualize.

Em qua, 1 de mar de 2017 às 19:40, Marco André Machado <marco.sant...@gmail.com> escreveu:
Testei aqui um c:out e funcionou

Quando rodo minha aplicação, essa é a tela que vejo:

Imagem inline 1


--
Marco André Machado

ABC: Always Be Coding
Em 1 de março de 2017 19:13, Alberto SOUZA <alot...@gmail.com> escreveu:
Mas ele aparece como se não fosse interpretado? O resto das expression language, são interpretadas?

Marco André Machado

unread,
Mar 1, 2017, 6:45:14 PM3/1/17
to Alberto SOUZA, livro-springmvc, Rodrigo Magalhães
Criei sem web.xml. Tentei seguir o que o passo-a-passo do livro

Vou tentar atualizar as versões das bibliotecas pra ver se consigo alguma mudança

Valeu pela ajuda Alberto


--
Marco André Machado

ABC: Always Be Coding

Em 1 de março de 2017 20:23, Alberto SOUZA <alot...@gmail.com> escreveu:
Sua aplicação tem um web.xml? Se tiver, veja se ele não está referenciando a versão 2.5 ou qq uma menor que a 3. Se tiver, atualize.
Em qua, 1 de mar de 2017 às 19:40, Marco André Machado <marco.santos.machado@gmail.com> escreveu:
Testei aqui um c:out e funcionou

Quando rodo minha aplicação, essa é a tela que vejo:

Imagem inline 1


--
Marco André Machado

ABC: Always Be Coding
Em 1 de março de 2017 19:13, Alberto SOUZA <alot...@gmail.com> escreveu:
Mas ele aparece como se não fosse interpretado? O resto das expression language, são interpretadas?

Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para livro-springmvc+unsubscribe@googlegroups.com.

Alberto SOUZA

unread,
Mar 1, 2017, 6:49:15 PM3/1/17
to Marco André Machado, livro-springmvc, Rodrigo Magalhães
Opa, bem estranho mesmo. Se quiser, sobe o código no github que eu posso dar uma olhada :)

Em qua, 1 de mar de 2017 às 20:45, Marco André Machado <marco.sant...@gmail.com> escreveu:
Criei sem web.xml. Tentei seguir o que o passo-a-passo do livro

Vou tentar atualizar as versões das bibliotecas pra ver se consigo alguma mudança

Valeu pela ajuda Alberto


--
Marco André Machado

ABC: Always Be Coding

Em 1 de março de 2017 20:23, Alberto SOUZA <alot...@gmail.com> escreveu:
Sua aplicação tem um web.xml? Se tiver, veja se ele não está referenciando a versão 2.5 ou qq uma menor que a 3. Se tiver, atualize.

Marco André Machado

unread,
Mar 1, 2017, 6:53:19 PM3/1/17
to Alberto SOUZA, livro-springmvc, Rodrigo Magalhães


--
Marco André Machado

ABC: Always Be Coding

Em 1 de março de 2017 20:49, Alberto SOUZA <alot...@gmail.com> escreveu:
Opa, bem estranho mesmo. Se quiser, sobe o código no github que eu posso dar uma olhada :)
Em qua, 1 de mar de 2017 às 20:45, Marco André Machado <marco.santos.machado@gmail.com> escreveu:
Criei sem web.xml. Tentei seguir o que o passo-a-passo do livro

Vou tentar atualizar as versões das bibliotecas pra ver se consigo alguma mudança

Valeu pela ajuda Alberto


--
Marco André Machado

ABC: Always Be Coding

Em 1 de março de 2017 20:23, Alberto SOUZA <alot...@gmail.com> escreveu:
Sua aplicação tem um web.xml? Se tiver, veja se ele não está referenciando a versão 2.5 ou qq uma menor que a 3. Se tiver, atualize.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para livro-springmvc+unsubscribe@googlegroups.com.

Marco André Machado

unread,
Mar 3, 2017, 12:07:31 PM3/3/17
to Alberto SOUZA, livro-springmvc, Rodrigo Magalhães
Cara, consegui resolver aqui. Não sei bem ao certo qual era problema, mas acho que era algum nome errado ou qualquer coisa simples assim

Valeu pela ajuda aí


--
Marco André Machado

ABC: Always Be Coding

Em 1 de março de 2017 20:53, Marco André Machado <marco.sant...@gmail.com> escreveu:


--
Marco André Machado

ABC: Always Be Coding

Em 1 de março de 2017 20:49, Alberto SOUZA <alot...@gmail.com> escreveu:
Opa, bem estranho mesmo. Se quiser, sobe o código no github que eu posso dar uma olhada :)

Wagner dos Santos Brito

unread,
Mar 23, 2017, 1:55:04 PM3/23/17
to livro-springmvc, alot...@gmail.com, rodrigo.r...@gmail.com
Prezados, boa tarde.

Estou com uma dificuldade para gravar na base de dados os textos acentuados. Por exemplo se eu informar "descrição" em qualquer campo String o valor gravado na base é "descrição".

Como faço para corrigir isso?

Desde já, grato pela ajuda.

Alberto SOUZA

unread,
Mar 23, 2017, 2:21:39 PM3/23/17
to Wagner dos Santos Brito, livro-springmvc, rodrigo.r...@gmail.com
O SpringMVC disponibiliza o EncodingFilter. Da uma procurada.. aí é só configurar. Se duvidar, aqui no fórum mesmo alguém já perguntou por isso.

Wagner dos Santos Brito

unread,
Mar 25, 2017, 12:41:55 PM3/25/17
to livro-springmvc, wsbri...@gmail.com, rodrigo.r...@gmail.com
Caro Alberto,

Grato pelo seu retorno.

Incluí o seguinte método na classe AppWebConfiguration:

@Bean
CharacterEncodingFilter characterEncodingFilter() {
   CharacterEncodingFilter filter = new CharacterEncodingFilter();
   filter.setEncoding("UTF-8");
   filter.setForceEncoding(true);
   return filter;
}

Mas ainda não obtive nenhum resultado. Os textos acentuado no form já chegam distorcido no bean Product antes da gravação na base de dados.

Att.,

Wagner.
Para ver essa discussão na Web, acesse <a
Reply all
Reply to author
Forward
0 new messages