Ola. Estou com um problema e deve ser um erro besta, quando insiro os dados no meu formulario tem um autocomplete das cidades, ele traz certinho e salva certo no banco, porem quando salvo e é “montada” a página novamente da esse erro.
00:12:42,524 SEVERE [javax.enterprise.resource.webcontainer.jsf.application] (http--127.0.0.1-8080-1) Error Rendering View[/matricula.xhtml]: javax.el.PropertyNotFoundException: /matricula.xhtml @100,26 itemLabel="#{cid.descricao}": The class 'java.lang.Integer' does not have the property 'descricao'.
at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:111) [jsf-impl-2.1.3-b02-jbossorg-2.jar:2.1.3-SNAPSHOT]
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194) [jboss-jsf-api_2.1_spec-2.0.0.Beta1.jar:2.0.0.Beta1]
at org.primefaces.component.autocomplete.AutoComplete.getItemLabel(AutoComplete.java:133) [primefaces-3.0.jar:]
at org.primefaces.component.autocomplete.AutoCompleteRenderer.encodeInput(AutoCompleteRenderer.java:137) [primefaces-3.0.jar:]
at org.primefaces.component.autocomplete.AutoCompleteRenderer.encodeMarkup(AutoCompleteRenderer.java:107) [primefaces-3.0.jar:]
at org.primefaces.component.autocomplete.AutoCompleteRenderer.encodeEnd(AutoCompleteRenderer.java:74) [primefaces-3.0.jar:]
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875) [jboss-jsf-api_2.1_spec-2.0.0.Beta1.jar:2.0.0.Beta1]
at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:312) [jsf-impl-2.1.3-b02-jbossorg-2.jar:2.1.3-SNAPSHOT]
at com.sun.faces.renderkit.html_basic.GridRenderer.renderRow(GridRenderer.java:185) [jsf-impl-2.1.3-b02-jbossorg-2.jar:2.1.3-SNAPSHOT]
at com.sun.faces.renderkit.html_basic.GridRenderer.encodeChildren(GridRenderer.java:129) [jsf-impl-2.1.3-b02-jbossorg-2.jar:2.1.3-SNAPSHOT]
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845) [jboss-jsf-api_2.1_spec-2.0.0.Beta1.jar:2.0.0.Beta1]
at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:58) [primefaces-3.0.jar:]
at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:46) [primefaces-3.0.jar:]
at org.primefaces.component.fieldset.FieldsetRenderer.encodeContent(FieldsetRenderer.java:86) [primefaces-3.0.jar:]
at org.primefaces.component.fieldset.FieldsetRenderer.encodeMarkup(FieldsetRenderer.java:68) [primefaces-3.0.jar:]
at org.primefaces.component.fieldset.FieldsetRenderer.encodeEnd(FieldsetRenderer.java:45) [primefaces-3.0.jar:]
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875) [jboss-jsf-api_2.1_spec-2.0.0.Beta1.jar:2.0.0.Beta1]
at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:312) [jsf-impl-2.1.3-b02-jbossorg-2.jar:2.1.3-SNAPSHOT]
at com.sun.faces.renderkit.html_basic.GridRenderer.renderRow(GridRenderer.java:185) [jsf-impl-2.1.3-b02-jbossorg-2.jar:2.1.3-SNAPSHOT]
at com.sun.faces.renderkit.html_basic.GridRenderer.encodeChildren(GridRenderer.java:129) [jsf-impl-2.1.3-b02-jbossorg-2.jar:2.1.3-SNAPSHOT]
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845) [jboss-jsf-api_2.1_spec-2.0.0.Beta1.jar:2.0.0.Beta1]
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1756) [jboss-jsf-api_2.1_spec-2.0.0.Beta1.jar:2.0.0.Beta1]
at javax.faces.render.Renderer.encodeChildren(Renderer.java:168) [jboss-jsf-api_2.1_spec-2.0.0.Beta1.jar:2.0.0.Beta1]
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845) [jboss-jsf-api_2.1_spec-2.0.0.Beta1.jar:2.0.0.Beta1]
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1756) [jboss-jsf-api_2.1_spec-2.0.0.Beta1.jar:2.0.0.Beta1]
matricula.xhtml (somente o autocomplete)
<h:outputLabel value="Cidade:" for="txtACCidade" />
<p:autoComplete id="txtACCidade" minQueryLength="3"
value="#{cadastroAlunoBean.pessoaVO.cidadeVO.cidade}"
completeMethod="#{cidadeBean.completeCidade}" var="cid"
itemLabel="#{cid.descricao}" itemValue="#{cid.cidade}"
queryDelay="1" />
CidadeBean
package br.com.softclean.cidade;
import java.util.ArrayList;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
@ManagedBean(name="cidadeBean")
@SessionScoped
public class CidadeBean {
private CidadeVO cidadeVO;
private CidadeService cidadeServ;
public CidadeVO getCidadeVO() {
return cidadeVO;
}
public void setCidadeVO(CidadeVO cidadeVO) {
this.cidadeVO = cidadeVO;
}
public List<CidadeVO> completeCidade(String prefix){
List<CidadeVO> lsCidade = new ArrayList<CidadeVO>();
cidadeServ = new CidadeService();
lsCidade = cidadeServ.getByPrefix(prefix);
return lsCidade;
}
}
CidadeVO
@Entity
@Table(name="CIDADE")
public class CidadeVO {
@Id
private Integer cidade;
@Column
private String descricao;
@Column
private String uf;
@Column
private String ddd;
//get set
Obs: a cidade salva certo no banco porém, da esse erro logo após