Erro com Bean nao encontra property

23 respostas
A

Olá,

Eu aqui de novo …olha só tenho uma classe chamada Frete que tem um metodo que calcula o frete a partir do input do peso, eu não sei o que está acontecendo os dois metodos que chama o BD (incluir,alterar) está normal agora esse do calculo deu problema, há antes de mais nada já tentei colocar minuscula, maiscula…etc…e nada …sei que é case-sensitive…

===========Metodo Classe Frete===============

public float getCalcularFrete() {
	this.valor = (this.peso * 10) + this.cidade.getTaxa();
	// R$ 10,00 é o valor fixo para o calculo
	return this.getValor();

==========================================

==============frete.jsp========================

<jsp:useBean id=“frete” scope=“page” class=“cadastro.Frete”/>

<jsp:setProperty name=“frete” property="*"/>
<%CALCULAR%>

<%if(request.getParameter(metodo) != null && request.getParameter(metodo).equals(CalcularFrete))

{%>

<script>

alert(’<jsp:getProperty name=“frete” property= “CalcularFrete” />’);

</script>
<tr>

<td valign=“top” class=titulocampo> Peso: </td>

<td><input name=“peso” type=“text” id=“peso” class=“campos”/></td>

</tr>

<tr>
<td valign=“top” class=titulocampo> Valor: </td>
<td><input name=“valor” type=“text” id=“valor” class=“campos”><jsp:getProperty name=“frete” property=“CalcularFrete”/>&gt</td> // ERRO !
</tr>

Amigos conto com a ajuda !

23 Respostas

V

===========Metodo Classe Frete===============

public float getCalcularFrete() {

this.valor = (this.peso * 10) + this.cidade.getTaxa();

// R$ 10,00 é o valor fixo para o calculo

[color=red]return this.getValor(); [/color]

Por acaso nao seria isso ?

return valor();[color=green] [/color]

A

Vinicius,

Entao no inicio achei que era tentei mudar o retrun do metodo, mas nao deu certo…
Agora levantei a lebre este formulario ja tem um bean que cadastrar no BD.Por exemplo nao aceita um bean para calcular dentro de outro que é cadastrar ?

A

Entao mudei aqui adicionei um botao calcular :

<input name=“Submit” type=“submit” class=“botao” value=“Calcular”<jsp:getProperty name=“frete” property=“CalcularFrete”/>>
Mas continua o erro ! alguem já passou por isso …=============Erro==============

org.apache.jasper.JasperException: Cannot find any information on property ‘CalcularFrete’ in a bean of type ‘cadastro.Frete’

A

Olha pessoal,

Tentei fazer assim na tag colocar a variavel valor mas tbm NÃO deu certo:

<jsp:setProperty name=“frete” property="*"value=“valor”/>

A
Oi JOMI,

entao fiz aqui teste.jsp,

importei :

<%@page import=“cadastro.Frete.*” %>

<body>

<%=frete.getCalcularFrete()%>

</body>
dá erro nao encontra "frete"
A

ops,

foi falta de atencao desculpe-me entao fiz da forma que vc falou:

<input name=“Submit” type=“submit” class=“botao” value=“Calcular”<%=frete.getCalcularFrete()%>/>
Mas continua com o mesmo erro…

furutani

Adriana Cardoso:

ops,

foi falta de atencao desculpe-me entao fiz da forma que vc falou:

<input name=“Submit” type=“submit” class=“botao” value=“Calcular”<%=frete.getCalcularFrete()%>/>
Mas continua com o mesmo erro…

Se voce fez da forma acima, o erro deve ter mudado.
Experimenta apagar o diretorio localhost dentro do tomcat_home/work/catalina
pode ser que não ajude muito mas é uma tentativa.

A

JOMI,

Entao o mtodo existi sim verifiquei aqui gerou o .class e ele esta´lá.

Mas desculpe-me o que vc quis dizer trocou as duas :

<jsp:getProperty name=“frete” property= “CalcularFrete” />

furutani

Não seria

<jsp:getProperty name="frete" property= "calcularFrete" />

com c minusculo?

A

entao pessoal,

  • já mudei para c minusculo;
  • deletei da pasta work do tomcat;
  • fiz outro projeto e fiz rodar mas dá agora erro :

======================erro tomcat==========
org.apache.jasper.JasperException: Exception in JSP: /indexfrete.jsp:82

82: <input name=“Submit” type=“submit” class=“botao” value=“Calcular”><jsp:getProperty name=“frete” property=“calcularFrete”/>&gt
java.lang.NullPointerException

Nao encontra o metodo , pode ser isto por exemplo no campo Peso espera um input que a partir dai vai gerar o valor conforme a funcao do metodo , será que é isso que está dando erro ?

Pessoal agradeço mas preciso resolver isso , alguem tem um projeto que tem um metodo de calculo que chama jsp usando um bean, assim dou uma olhada aqui por fvr …

Obrigada

A

Oi alguem pode me ajudar por fvr !!!
com o post anterior …

furutani

Se a exceçao agora é java.lang.NullPointerException deve ser por que no metodo getCalcularFrete() tem algum valor nulo.
Faça um debug e veja qual variavel esta com o valor null.

Ainda em tempo, utiliza as tags code para por seu código, a forma como vc esta postando o código é pessima pra ler.

A

ok obrigada pela ajuda ,

Mas quanto as tags o meu navegador nao habilita ou ocorre um erro aqui no guj , ja tentei verificar varias vezes sem sucesso …
Adriana

A

é isto mesmo JOMI …

A

Deixa-me explicar melhor,

Este formulario tem 3 campos :

Descricao
Peso
Valor

Botoes : Cadastrar (direto no bd)
Calcular( pega o metodo calcular frete, que é esse o problema)
Qdo usuario digita o peso calcula instantaneamente o valor !

J

Tente fazer um teste
<%=frete.getCalcularFrete()%>

e veja se dá erro.

J

Ola Adriana, vc tem que deixar como estava com o jsp:useBean
<jsp:useBean id=“frete” scope=“page” class=“cadastro.Frete”/>

So substitui o seu getProperty por essa linha que te mandei

<%=frete.getCalcularFrete()%>

J

Bom, se isso nao funcionou, realmente o metodo CalcularFrete nao existe.
Isso ja me aconteceu, porem, era pq a classe nao tinha sido compilada e portanto nao existia mesmo. Vc deu deploy, tem certeza que este metodo existe na classe Frete compilada (.class) ?

J

Na sua jsp vc vejo que vc tem em duas localidades

<jsp:getProperty name=“frete” property= “CalcularFrete” />

vc substituiu nas duas ne?

J

Conforme o Furutani disse, o erro deveria mudar.

Veja que na sua frete.jsp vc tem em dois locais o
<jsp:getProperty name=“frete” property= “CalcularFrete” />

<%CALCULAR%>

<%if(request.getParameter(metodo) != null && request.getParameter(metodo).equals(CalcularFrete))

{%>

E na parte :

> // ERRO !
J

Exatamente Furutani, nem reparei.

c minusculo!!!

J

Pelo que entendi vc ta querendo que o usuario digite o peso e faça o calculo “instantaneamente”…é isso?

J

Ai ta o problema…instantaneamente nao ne…heheehe
Se vc so digitou o valor e nao fez nada…nao tem como calcular…
Bom, se vc quer instantaneamente, colocaria no campo de texto Peso uma chamada para um metodo do javascript quando ele saisse de foco para fazer esse calculo. Claro que quando saisse do foco do campo peso, teria q verificar se esta vazio ou nao…se nao, faria o calculo.

Ou por chamada a action…

Criado 6 de dezembro de 2006
Ultima resposta 7 de dez. de 2006
Respostas 23
Participantes 4