Ola Boa tarde a todos.
Como faço para fazer um parseLong de um parametro recebido de uma JSP ? Recebo o paramêtro como string via EL e estou usando Scriptlet para tentar setar ele em um objeto, porém esta acusando erro 500 na linha do ParseLong.
Código da Jsp que recebe o paramêtro:
<%
ParamCompra compra = new ParamCompra();%>
<% compra.setQtSacos(Long.parseLong("${novoParamCompra.qtSacos}"));
%>
Erro:
org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/views/Planilha/analise.jsp at line 21
18: <%
19: ParamCompra compra = new ParamCompra();%>
20: <%=compra.getQtSacos() %>
21: <%compra.setQtSacos(Long.parseLong("${novoParamCompra.qtSacos}"));
22: %>
23:
24:
Existe alguma outra forma mais fácil de se fazer isto ? Ou mais correta ?
Não, você não usa EL dessa maneira.
EL é só para que, ao interpretar a JSP, o java já escreva o valor direto daquele atributo.
Você vai precisar obter o parâmetro do escopo onde o colocou (request, session) e, então, pegar o valor que deseja.
Algo como:
<%
Pessoa pes = (Pessoa) session.getAttribute("pessoa");
int idade = pes.getIdade();
%>
Note que existe um cast explícito, afinal, o que fica na sessão ou no request é um object.
Entendeu?
Só lembrado que usar scriptlet é mais feio que encoxar a mãe no tanque.
Blz, obrigado Darlan vou usar a Session e trocar pra TagLibs !
Ri alto do encoxar a mãe no tanque kkkk
A título de curiosidade, quando eu comecei a desenvolver em Java, em 2010, já não se usava, há tempos, scriptlet.
É importante saber como funciona e tals, mas, eu sou absolutamente radical com relação ao uso de tecnologias retrógradas.
E o mãe no tanque vem de um ditado a respeito dos punks “punk que é punk encoxa a mãe no tanque”.