Dúvida no getProperty

5 respostas
Lelis_el_Quatilas

Olá pessoal,

estou com um problema que está me deixando realmente chateado. Não estou entendendo o que está acontecendo. Deve algo muito simples e imbecil, mas que não consigo enxegar. Talvez vocês possam me ajudar.

Tenho uma página JSP que exibe os resultados de uma consulta no Banco de Dados

E aqui está o código que interessa do meu Bean, o EmpresarioBean:

No JOptionPane é exibido “Levi”, que foi o valor encontrado no Banco de dados, mas no JSP é exibido “sdfg”. O que pode estar acontecendo?

Grato pela atenção,

5 Respostas

skill_ufmt

Esse seu bean me parece estranho, e nesse trecho "this.nome = “sdfg”;
" você esta alterando o valor da variavel para “sdfg”, assim como todos os outros valores desse bean.

Seu bean deveria se algo assim:

public EmpresarioBean() {

this.id = id;

this.idEmpresa = idEmpresa;

this.nomeEmpresa = …;

this.nome = …

…

}

tenta ai…

Diogenes

Vc tah referenciando objetos diferentes…
Tenta testar algo do tipo:

<% EmpresarioBean[] empresariosBean = (EmpresarioBean[])request.getAttribute("empresarios"); %>

<table align=center>
<%for (int i = 0; i < empresariosBean.length; i++) {

Beans.EmpresarioBean empr = empresariosBean[i];
javax.swing.JOptionPane.showMessageDialog(null, empr.getNome());

%> 
<tr>
  <%=empr.getNome()%>
</tr>
<%}%>
Lelis_el_Quatilas

Valeu gente!

Com o &lt;%=empr.getNome()%&gt; funcionou. Mas eu acho tudo isso estranho. Era para ter funcionado com getProperty.

Uma outra solução que funcionou foi fazer o seguinte para todos os campos do Bean:

empr.setNome(empresariosBean[i].getNome());

ao invés de

empr = empresariosBean[i];

Vou fazer como você disse Diogenes, mas eu gostaria de entender porque não está funcionando. Se alguém puder explicar!! :lol:

Muito Obrigado,

Diogenes

Não sei ao certo cara, sei q a galera pode te explicar melhor, mas seria interessante vc ver a documentação da JSTL, particularmente há muuuuuuuito tempo q não uso JSTL…

Mas no chutômetro, vc está definindo o scope como session no jsp:useBean…teoricamente ele procuraria um objeto com escopo de sessão… E não eh esse o objetivo…
Tente testar o código sem o scope=“session”…

Lelis_el_Quatilas

Eu tentei sem isso também Diogenes… Mas não deu certo. Já tinha escrito outros códigos exatamente dessa forma e funcionou. Quando terminar o meu trabalho vou procurar saber o porquê. Se descobrir algo eu posto aqui no fórum. No meio tempo se mais alguém quiser nos ajudar! :smiley:

Valeu cara!!

inté,

Criado 25 de fevereiro de 2005
Ultima resposta 25 de fev. de 2005
Respostas 5
Participantes 3