Re:Struts BeanUtils.populate

5 respostas
fabiozoroastro

Existe algum atirbuto no na sua Classe form que é obrigatória a sua página *.jsp.
Tem que descobrir qual é. Esse erro ocorreu comigo semana passada, tive que ver toda a herança das classes pra descobrir o maldito campo.
=]

5 Respostas

fabiozoroastro

Voce pode ter seu atributo no action form e não tê-la no JSP sem problemas, desde que vc não use esse esse atributo.

No meu caso por exemplo tava ocorrendo o seguinte:
Minha ActionForm extendia de outra que extendia de outra que extendia de outra.
E a Mãe de todas tinha um atributo chamado: acao que em um momento lá era preciso verificar o valor deste atributo, mas como ele não existia, ocorria o erro.
:slight_smile:

Deu certo aí agora?

Charlie_Brown

Galera, estou com o seguinte problema no struts:

javax.servlet.ServletException: BeanUtils.populate
	org.apache.struts.util.RequestUtils.populate(RequestUtils.java:495)

Causado por:

java.lang.IllegalArgumentException: No bean specified
org.apache.commons.beanutils.PropertyUtilsBean.getPropertyDescriptor(PropertyUtilsBean.java:751)

O que eu estou usando é um JSP, com uma propriedade do tipo:

<html:text property="tpnatope.descricao" />

Cujo ValidatorForm possui um objeto tpnatope com getters e setters, dentro deste objeto uma String descricao também com getters e setters…

O Action Mapping está assim:

<action path="/salvarTipoNaturezaOperacao"
	type="tiponaturezaoperacao.SalvaTipoNaturezaOperacaoAction"
	scope="request"
	name="tipoNaturezaOperacaoForm"
	validate="true"/>

Alguma luz??
Obrigado!

Charlie_Brown

Tem disso??
Eu pensei que era obrigatório os campos dos JSPs existirem nos ActionForms e não o contrário… :confused:
Quer dizer que eu não posso ter uma propriedade no ActionForm que não exista no JSP?? Ou entendi errado? hehehe

Obrigado!:slight_smile:

Charlie_Brown

Não funciona… e meu ActionForm extende ValidatorForm (que extende ActionForm) direto… :confused:
Não estou usando nada além daquilo que eu passei aí… :frowning:

Não sei mais o que fazer também…

Charlie_Brown

Isso aqui resolveu:

public TipoNaturezaOperacaoForm() {
		this.tpnatope = new TpNatOpeVO();
	}

Obrigado aos que tentaram me ajudar mesmo assim…

Criado 26 de setembro de 2006
Ultima resposta 29 de set. de 2006
Respostas 5
Participantes 2