Chamada JAVASCRIPT e JSP <Resolvido>

3 respostas
lkava

Olá pessoal, estou desenvolvendo uma pequena aplicaçao JSP …

estou com dois prolemas …

o primeiro, que quando no meu jsp tento recuperar o valor de uma variavel passado pelo meu servlet da o erro

inconvertible types
required: int
found: java.lang.Object

o codigo que estou tentando colocar é

<% int a = (int) request.getAttribute("nrs"); %>

sei que o erro apresentado ja é um poucou intuitivo mas como faço para resolver ???

Meu segundo problema é que, dependendo do valor da variavel “A” que estou tentando recuperar no codigo acima, preciso chamar um alert javascript,
quando essa variavel possuir o valor “1” … mas nao tenho ideia de como fazer isso …

espero que me ajudem…

3 Respostas

vi-gb

Não tenho muita experiencia em jsp mas acho que seria assim:

<% int a = (Integer) request.getAttribute("nrs"); %>
E

para converter para int, usa o método parseInt da classe Integer.

int a = Integer.parseInt("1");// acho que era assim

Para chamar o alert, pode fazer algo assim:

<script>
  int a = <%=request.getAttribute("nrs")%>;
  if (a==1){alert("alertado")}
</script>
lkava
Pessoal, o codigo
<script>
  int a = <%=request.getAttribute("nrs")%>;
  if (a==1){alert("alertado")}
</script>

não deu certo , só por um unico detalhe faltou o cast da variavel java... e da parte javascript retirar o int pois javascript nao é tipado de tal forma que ficou ...

<script>
  var a = <%=(Integer) request.getAttribute("nrs")%>;
  if (a==1){alert("alertado")}
</script>
...

Mas como vi mais algumas necessidades no codigo, como testar os valores do meu atribute, se é nulo ou não, criei um hidden, recebendo o valor tratado,
e no meu javascript pelo document.get.... tratei a exibição do meu alert...
Ficou dessa forma...

<input type="hidden" value="<%
                if (request.getAttribute("nrs") != null) {
                    int a = (Integer) request.getAttribute("nrs");
                    out.print(a);
                } else {
                    out.print(-2);
                }%>" id="vlr"/>
            <script type="text/javascript">
                var a = document.getElementById('vlr').value;
                
                if (a==1){alert("Contato Incluido com Sucesso")}
                else if (a==-1) {alert("Erro ao Incluir!")}
            </script>

Pessoal, muito obrigado, graças a vocês consegui resolver...
abraços...

Criado 30 de novembro de 2011
Ultima resposta 30 de nov. de 2011
Respostas 3
Participantes 3