javaBean

10 respostas
S

galera,

eu tenho um metodo na minha classe fachada que é o eguinte:

public Collection listar() throws ProdutoInexistenteException{

return cadastroProdutos.listar();

}

na minha pagina jsp to querendo chamar esse metodo e jogar o valor em uma varialvel do tipo LinkedList.

comecei fazendo assim:

<html>
<head>
<title>TESTE</title>
<meta http-equiv=“Content-Type” content=“text/html; charset=iso-8859-1”>
</head>

<body bgcolor="#FFFFFF">

<jsp:useBean id=“f” class=“fachada.Fachada” scope=“page” />

<% LinkedList lista = f.listar() %>

</body>

</html>

isso nao funciona. o que devo fazer?

10 Respostas

J

Bom kra… a classe LinkedList implementa algumas interfaces, dentre delas a Collection. Quando você chama o método listar ele te retorna um Collection, não uma LinkedList, e com essa Collection você quer jogar numa variável do tipo LinkedList. Para fazer isso você precisa fazer um casting:

&lt;% LinkedList lista = &#40;LinkedList&#41; f.listar&#40;&#41; %&gt;

Espero ter ajudado…
Flw…

S

cara, fiz do geito q vc indicou e ta dando esse erro:

Generated servlet error:
[javac] Compiling 1 source file

C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost_\org\apache\jsp\teste_jsp.java:60: cannot resolve symbol
symbol : class LinkedList
location: class org.apache.jsp.teste_jsp
LinkedList lista = (LinkedList) f.listar();
^

eu tenho que importar o pacote java.util.*; ?

como importo na pagina se precidar?

M

Salve,

cara é claro que não dá certo… heheheh importe java.util.LinkedList

Tente e aí…

J

Você importa assim numa página jsp:

&lt;%@page import="java.util.*"%&gt;

Flw…

S

importei mais ta dando esse erro:

C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost_\org\apache\jsp\teste_jsp.java:62: cannot resolve symbol
symbol : variable listar
location: class fachada.Fachada
LinkedList lista = (LinkedList) f.listar;
^
1 error

que erro é esse?

J

Na classe fachada.Fachada você também deve colocar:

import java.util.*;

Flw…

S

tb ja ta. o problema nao é mais o java.util nao. o problema é esse erro: cannot resolve symbol na variavel listar.

pq isso ta acontecendo?

J

Substitua:

LinkedList lista = &#40;LinkedList&#41; f.listar;

Por:

LinkedList lista = &#40;LinkedList&#41; f.listar&#40;&#41;;

Flw…

S

cara quando coloco: <% LinkedList lista = (LinkedList) f.listar(); %>

acosa erro, dizendo que nao se aplica ().
tem que ficar sem as ().

quando executo no jbuider essa função funciona. ja quando passo pro javaBeans da esse erro:

C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost_\org\apache\jsp\teste_jsp.java:62: cannot resolve symbol
symbol : variable listar

J

Vc naum deve ter declarado como listar… verifica lá a declaração desse listar… se for uma função, obviamente vai precisar ().

Flw…

Criado 16 de fevereiro de 2005
Ultima resposta 18 de fev. de 2005
Respostas 10
Participantes 3