Ir ao conteúdo
  • Cadastre-se
Gabriel2222

Java Property varcidade not found on type br.com.brasil.controller.fornecedorContr

Recommended Posts

Pessoal boa noite, eu estava fazendo um crud para a classe fornecedores, e nela eu queria puxar uma combox de cidade, porém esta aparecendo esse erro ai eu ja tentei de tudo.... me ajudem por favor.

 

Message /paginas/fornecedores.xhtml @16,74 value="#{fornecedorController.varcidade}": Property [varcidade] not found on type [br.com.brasil.controller.fornecedorController]

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception

javax.servlet.ServletException: /paginas/fornecedores.xhtml @16,74 value="#{fornecedorController.varcidade}": Property [varcidade] not found on type [br.com.brasil.controller.fornecedorController] javax.faces.webapp.FacesServlet.service(FacesServlet.java:671) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

Root Cause

javax.el.PropertyNotFoundException: /paginas/fornecedores.xhtml @16,74 value="#{fornecedorController.varcidade}": Property [varcidade] not found on type [br.com.brasil.controller.fornecedorController] com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:111) javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194) javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182) javax.faces.component.UIOutput.getValue(UIOutput.java:174) javax.faces.component.UIInput.getValue(UIInput.java:291) com.sun.faces.renderkit.html_basic.MenuRenderer.getCurrentSelectedValues(MenuRenderer.java:648) com.sun.faces.renderkit.html_basic.MenuRenderer.renderOptions(MenuRenderer.java:749) com.sun.faces.renderkit.html_basic.MenuRenderer.renderSelect(MenuRenderer.java:847) com.sun.faces.renderkit.html_basic.MenuRenderer.encodeEnd(MenuRenderer.java:297) javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:920) com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:312) com.sun.faces.renderkit.html_basic.GridRenderer.renderRow(GridRenderer.java:185) com.sun.faces.renderkit.html_basic.GridRenderer.encodeChildren(GridRenderer.java:129) javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856) javax.faces.render.Renderer.encodeChildren(Renderer.java:176) javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:458) com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:134) com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120) com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219) javax.faces.webapp.FacesServlet.service(FacesServlet.java:659) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

Root Cause

javax.el.PropertyNotFoundException: Property [varcidade] not found on type [br.com.brasil.controller.fornecedorController] javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:260) javax.el.BeanELResolver$BeanProperties.access$300(BeanELResolver.java:212) javax.el.BeanELResolver.property(BeanELResolver.java:347) javax.el.BeanELResolver.getValue(BeanELResolver.java:92) com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176) com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203) org.apache.el.parser.AstValue.getValue(AstValue.java:169) org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:184) com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109) javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194) javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182) javax.faces.component.UIOutput.getValue(UIOutput.java:174) javax.faces.component.UIInput.getValue(UIInput.java:291) com.sun.faces.renderkit.html_basic.MenuRenderer.getCurrentSelectedValues(MenuRenderer.java:648) com.sun.faces.renderkit.html_basic.MenuRenderer.renderOptions(MenuRenderer.java:749) com.sun.faces.renderkit.html_basic.MenuRenderer.renderSelect(MenuRenderer.java:847) com.sun.faces.renderkit.html_basic.MenuRenderer.encodeEnd(MenuRenderer.java:297) javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:920) com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:312) com.sun.faces.renderkit.html_basic.GridRenderer.renderRow(GridRenderer.java:185) com.sun.faces.renderkit.html_basic.GridRenderer.encodeChildren(GridRenderer.java:129) javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856) javax.faces.render.Renderer.encodeChildren(Renderer.java:176) javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859) com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:458) com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:134) com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120) com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219) javax.faces.webapp.FacesServlet.service(FacesServlet.java:659) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

 

 

 

 

Classe fornecedor>>>>>>>>>>>

 

 

package br.com.brasil.modelo;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;


@Entity
public class Fornecedor {
    
    @Id
    @GeneratedValue(strategy= GenerationType.IDENTITY)
    private Integer idFornecedor;
    
    private String Empresa;
    private String Cnpj;
    private String Telefone;
    
    
    @ManyToOne
    private Cidade cidade;
    

    public Integer getIdFornecedor() {
        return idFornecedor;
    }

    public void setIdFornecedor(Integer idFornecedor) {
        this.idFornecedor = idFornecedor;
    }

    public String getEmpresa() {
        return Empresa;
    }

    public void setEmpresa(String empresa) {
        Empresa = empresa;
    }

    public String getCnpj() {
        return Cnpj;
    }

    public void setCnpj(String cnpj) {
        Cnpj = cnpj;
    }

    public String getTelefone() {
        return Telefone;
    }

    public Cidade getCidade() {
        return cidade;
    }

    public void setCidade(Cidade cidade) {
        this.cidade = cidade;
    }

    public void setTelefone(String telefone) {
        Telefone = telefone;
    }

    

}
 

 

fornecedor bean  >>>>>>>>>>>>
 

package br.com.brasil.controller;

import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import br.com.brasil.dao.DAO;
import br.com.brasil.modelo.Cidade;
import br.com.brasil.modelo.Fornecedor;

@ManagedBean 
@ViewScoped  
public class fornecedorController {

    public Fornecedor fornecedor = new Fornecedor();
    public Integer varcidade;
    
    
    public Fornecedor getFornecedor() {
        return fornecedor;
    }
    public void setFornecedor(Fornecedor fornecedor) {
        this.fornecedor = fornecedor;
    }
    public Integer getVarcidade() {
        return varcidade;
    }
    public void setVarcidade(Integer varcidade) {
        this.varcidade = varcidade;
    }
    
    
    public void gravar () {
        Cidade cdd = new DAO<Cidade>(Cidade.class).listaPorId(this.varcidade);
        fornecedor.setCidade(cdd);
        if(this.fornecedor.getIdFornecedor() == null) {
            new DAO<Fornecedor>(Fornecedor.class).adiciona(fornecedor);
        } else {
            new DAO<Fornecedor>(Fornecedor.class).atualiza(fornecedor);
        }this.fornecedor= new Fornecedor();
    }
    
    //////////////////////
    
    
    public List<Fornecedor> getTodosFornecedores(){ 
        return new DAO<Fornecedor>(Fornecedor.class).listaTodos();
        
    }
    /////////////////////
    
    public void remover(Fornecedor f){         
        new DAO<Fornecedor>(Fornecedor.class).remove(f.getIdFornecedor());
    }
    
    ////////////////////
    public void carregar (Fornecedor f){ 
        this.fornecedor = f;    
        this.varcidade = f.getCidade().getIdCidade(); //combo
    }
    //////////////////////
    
    public List<Cidade> getTodasCidades(){  
        
        return new DAO<Cidade>(Cidade.class).listaTodos();
        
    }
}
 

 

fornecedor xhtml (obs so coloquei a caixa de combo para realizar o testes, falta os outros campos ainda) >>>>>>>>>>>>>>>>>>.

 

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core"
>  


<h:body> 

    <h:form> <!-- formulario --> 
    <fieldset>                         
    <legend> Dados fonecedores</legend>
    <h:panelGrid>  <!--Um painel--> 
 <h:outputText value="Selecione um cidade" for="cidade"/> 
     <h:selectOneMenu id="cidade" value="#{fornecedorController.varcidade}"> <!--  quando selecionar o meu produto e o seu tipo, ele vai salvar pra mim o meu tipo que alias é de outra tabela -->
     <f:selectItems itemLabel="Selecionar" noSelectionOption="true"/>
     <f:selectItems value="#{fornecedorController.todasCidades}"
     var="estado" itemLabel="#{cidade.nomeCidade}" itemValue="#{cidade.idCidade}"/>  
     </h:selectOneMenu>
     
        
    
    <h:commandButton  value= "Gravar" action="#{fornecedorController.gravar}"/>   
    </h:panelGrid>
    </fieldset>

    
    <h:dataTable value= "#{fornecedorController.todasFornecedores}" var="fornecedores">  
        <h:column>
            <f:facet name="header">Empresa</f:facet> 
            <h:outputText value="#{fornecedores.empresa}"/>  
        </h:column> 
        
        <h:column>
            <f:facet name="header">Cnpj</f:facet> 
            <h:outputText value="#{fornecedores.cnpj}"/>  
        </h:column> 
        
            <h:column>
            <f:facet name="header">Telefone</f:facet> 
            <h:outputText value="#{fornecedores.telefone}"/>  
        </h:column> 
        
        
        
    
        
        <h:column>
            <f:facet name="header">Remover</f:facet> <!-- titulo  -->
            <h:commandLink  value="remove" action="#{fornecedorController.remover(fornecedores)}"/>  <!-- vai ser um link -->
        </h:column> 
        
        
        
        
        
            
        <h:column>
            <f:facet name="header">Alterar</f:facet> <!-- titulo  -->
            <h:commandLink  value="altera" action="#{fornecedorController.carregar(fornecedores)}"/>  <!-- vai ser um link -->
        </h:column> 
        
        
    </h:dataTable>
        </h:form>
</h:body>
</html>

 

 

 

 

me ajudem urgente :(

 

 

 

 

 

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×