Bom, estou utilizando pela primeira vez o Spring MVC (antes usava o Struts) e por isso estou tendo alguma difuiculdade em alguns detalhes que diferem do Struts. Um deles é como disponibilizar o um objeto para o view (no caso uma JSP) e assim poder exibi-lo em formato de tabela ou combo box por exemplo.
na minha Action (Controller) eu tenho o método que pesquisa no banco uma lista de objetos e redireciona para uma jsp.
Reparem que eu já estou tentando usar o tal Model do spring mvc. que conforme alguns tutoriais que li deveria dar certo e eu conseguiria acessar a lista “moedas” na JSP através de Expression Language (no caso: ${moedas}). Só que o redirecionamento acontece normalmente, mas não consigo acessar o tal objeto. Não sei o que frazer… alguém tem alguma dica !!!
Sim, o moedas ta vindo preenchido certinho. só que quando chega na JSP, eu coloco com ${moedas.nome} e ao invés de exibir o nome, ele continua exibindo ${moedas.nome}… ele simplesmente não reconhece.
Utilize String como retorno quando precisar fazer algum redirect. Como você quer retornar uma lista de moedas, pode mandar a lista diretamente como retorno do método, sem precisar dessas complicações com ModelMap.
Eu não tinha notado como a String usada no retorno é complicada. Se não for possível simplificar os caminhos para as jsps a ponto de não precisar passá-lo com a String, recomendo fazer uso da classe ModelAndView.
Galera, agradeço a todos pelas dicas mas no final foi mais simples que eu pesava…
o grande problema é que o meu projeto estava ignorando toda e qualquer Expression Language.
tive que colocar no web.xml o seguinte:
depois disso, tudo voltou a funcionar. Dei uma pesquisa pra entender o porque disso, e pelo que entendi (posso estar errado) por causa do Spring MVC, as Expression Language são ignoradas por padrão e é necessário vc ativá-las novamente. Caso que não ocorrer se vc utilizar Struts por exemplo. Enfim, problema resolvido e fica a dica caso alguém passe por isso!!!