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 !!!
Converter Integer para String EL
3 Respostas
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…