Bom Dia, estou na seguinte situação, tenho um jsp que em seu corpo possui uma displaytag, e uma das colunas dessa display tag deve ser o valor de um Map(Que esta no context) que será conseguido passando como parâmetro o valor de um atributo que é Integer e eu não posso mudar… seria algo assim na EL: ${mapa[prod.cd_prod]}, porem cd_prod é um Integer e qdo executo assim, estoura uma “java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer”, alguém tem alguma idéia de como resolver isso no JSP ???
Obrigado !!!
Pelo que eu entendi, seu mapa deve ter como chave uma STRING e não um integer, ou seja,
ele ta declarado como
Map<String, algumacoisa>
Ai tu ta passando um Integer como chave, e ele ta esperando uma string, aí já viu neh
ehhehe
Fala cara, blz ?? Valeu pela ajuda… Então, de prima eu achei que era isso, ai mudei a chave para Integer, mas pelo que li, a EL nesse formato ${mapa[cod]} ‘cod’ obrigatoriamente deve ser uma String, e no meu caso, ‘cod’ é um Integer, não sei se consegui explicar direito…
Saquei…
Tu vai ter q fazer um toString então…
Faz o getter do seu COD retornar: return cod.toString(); ao invés dele retornar um INT…
Aí é meio gambiarra mas vai funcionar =P
Ou então, cria um campo codEmString e toda vez q vc setar o cod, vc seta essa codEmString também, com o seu valor em string…