Problema para listar em JSF

13 respostas
A

Boa Noite Galera..
To com um probleminha aqui usando JSF para listar os dados do meu ManegedBean num página, os dados ja estão incluidos no método, agora é só listar na pagina após o usuário clicar no botão, mais quando o usuário clicar no botão não acontece nada.. to procurando o erro mais não encontro.. vo postar as classes a os outros arquivos referentes a essa programação

Classe Cliente
package br.com.bean;


public class Cliente {
	
	
	private int     codigo;
	private String  nome;
	private String  cidade;
	
	public Cliente(int codigo, String nome, String cidade){
		this.codigo = codigo;
		this.nome = nome;
		this.cidade = cidade;
	}
	
	public int getCodigo() {
		return codigo;
	}
	public void setCodigo(int  codigo) {
		this.codigo = codigo;
	}
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) {
		this.nome = nome;
	}
	public String getCidade() {
		return cidade;
	}
	public void setCidade(String cidade) {
		this.cidade = cidade;
	}
	
}
Classe ConsultarClienteBean
package br.com.managedbean;

import java.awt.event.ActionEvent;
import java.util.ArrayList;
import java.util.List;
import javax.faces.bean.ManagedBean;


import br.com.bean.Cliente;

@ManagedBean
public class ConsultaClienteBean {
	
	private List<Cliente> clientes = new ArrayList<Cliente>();
	
	public void consultar(ActionEvent event){
		
		this.getClientes().clear();
		this.getClientes().add(new Cliente(1,"Anderson Santana", "Paracatu"));
		this.getClientes().add(new Cliente(2,"Peres Julião", "Araguari"));
		this.getClientes().add(new Cliente(3,"Evandro Gaio", "Divinopolis"));
		this.getClientes().add(new Cliente(4,"Alex Francois", "Uberlândia"));
		this.getClientes().add(new Cliente(5,"Jhoseper", "Rondônia"));
		this.getClientes().add(new Cliente(6,"Nem sei", "Caralho"));
		
	}
	
	
	public List<Cliente> getClientes(){
		return this.clientes;
	}

}
Página JSP
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="f"  uri="http://java.sun.com/jsf/core"%>
<%@ taglib prefix="h"  uri="http://java.sun.com/jsf/html"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Consulta de Clientes</title>
</head>
<body>
<f:view>
       <h:form id="form">
          
             <h:commandButton value="Consultar..."
                              actionListener="#{cliente.consultar}"/>
                              
             <h:dataTable value="#{cliente.clientes}" var="item">
                  <h:column>
                     <h:outputText value="#{item.codigo}" />
                  </h:column>
                  <h:column>
                     <h:outputText value="#{item.nome}"/>
                  </h:column>
                  <h:column>
                     <h:outputText value="#{item.cidade}"/>
                  </h:column>
             
             </h:dataTable>                 
       
       </h:form>
</f:view>
</body>
</html>
Arquivo Faces-Config
<?xml version="1.0" encoding="UTF-8"?>

<faces-config
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"
    version="1.2">
    
	<managed-bean>
		<managed-bean-name>cliente</managed-bean-name>
		<managed-bean-class>br.com.managedbean.ConsultaClienteBean</managed-bean-class>
		<managed-bean-scope>session</managed-bean-scope>
	</managed-bean>
	
</faces-config>
Arquivo Web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>AlgaWorks</display-name>
  <welcome-file-list>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  
  <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  
  <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
  </servlet-mapping>
  
</web-app>

13 Respostas

drsmachado

Vamos a algumas considerações:
1 - Você deve ter programado muito em Swing, afinal, manteve a mania de usar ActionEvent como argumento dos eventos. E eu pergunto por que?

public void consultar(ActionEvent event){  
//remova este ActionEvent dai, deixe o metodo ser argumentos

2 - Por que mapear com annotation e no xml? Ou um ou outro, não acha?
3 - jsp pode ser utilizada, mas prefira xhtml

A

drsmachado:
Vamos a algumas considerações:
1 - Você deve ter programado muito em Swing, afinal, manteve a mania de usar ActionEvent como argumento dos eventos. E eu pergunto por que?

public void consultar(ActionEvent event){  
//remova este ActionEvent dai, deixe o metodo ser argumentos

2 - Por que mapear com annotation e no xml? Ou um ou outro, não acha?
3 - jsp pode ser utilizada, mas prefira xhtml

Boa Noite !!!

1) por incrivel que pareca que acerto em relação a programação om SWING… rrsrsrsrs
mais eu to estudando JSF seguindo uma apostila de estudo, estou fazendo tudo que o cara faz lá, esse parametro Action Event eu coloquei por que lá ele coloca…rsrs

2) Como estou aprendendo agora não sei o que vc quis dizer com a opção 2… :frowning:

3) A maioria das coisas que o cara faz na apostila é usando as Tags HTML da JSF…

A

drsmachado:
Vamos a algumas considerações:
1 - Você deve ter programado muito em Swing, afinal, manteve a mania de usar ActionEvent como argumento dos eventos. E eu pergunto por que?

public void consultar(ActionEvent event){  
//remova este ActionEvent dai, deixe o metodo ser argumentos

2 - Por que mapear com annotation e no xml? Ou um ou outro, não acha?
3 - jsp pode ser utilizada, mas prefira xhtml

Vou remover o Action Event do método e ver se vai dar certo…

A
drsmachado:
Vamos a algumas considerações: 1 - Você deve ter programado muito em Swing, afinal, manteve a mania de usar ActionEvent como argumento dos eventos. E eu pergunto por que?
public void consultar(ActionEvent event){  
//remova este ActionEvent dai, deixe o metodo ser argumentos
2 - Por que mapear com annotation e no xml? Ou um ou outro, não acha? 3 - jsp pode ser utilizada, mas prefira xhtml
Ai mano, infelizmente a solução que vc me falou nã deu certo também, o erro continua persistindo, o erro que aparece é esse aqui..
INFO: Server startup in 10732 ms
11/03/2012 10:59:31 javax.faces.event.MethodExpressionActionListener processAction
SEVERE: 'org.apache.jasper.el.JspPropertyNotFoundException' recebido ao invocar escuta de ação '#{cliente.consultar}' para o componente 'j_id_jsp_222883316_2'
11/03/2012 10:59:31 javax.faces.event.MethodExpressionActionListener processAction
SEVERE: org.apache.jasper.el.JspPropertyNotFoundException: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
	at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:74)
	at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:148)
	at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
	at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:769)
	at javax.faces.component.UICommand.broadcast(UICommand.java:300)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:409)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Unknown Source)

11/03/2012 10:59:31 com.sun.faces.context.ExceptionHandlerImpl log
SEVERE: JSF1073: javax.faces.event.AbortProcessingException obtido durante o processamento de INVOKE_APPLICATION 5: UIComponent-ClientId=frm:j_id_jsp_222883316_2, Message=/cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
11/03/2012 10:59:31 com.sun.faces.context.ExceptionHandlerImpl log
SEVERE: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
javax.faces.event.AbortProcessingException: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
	at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:182)
	at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
	at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:769)
	at javax.faces.component.UICommand.broadcast(UICommand.java:300)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:409)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.jasper.el.JspPropertyNotFoundException: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
	at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:74)
	at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:148)
	... 21 more
11/03/2012 10:59:33 javax.faces.event.MethodExpressionActionListener processAction
SEVERE: 'org.apache.jasper.el.JspPropertyNotFoundException' recebido ao invocar escuta de ação '#{cliente.consultar}' para o componente 'j_id_jsp_222883316_2'
11/03/2012 10:59:33 javax.faces.event.MethodExpressionActionListener processAction
SEVERE: org.apache.jasper.el.JspPropertyNotFoundException: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
	at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:74)
	at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:148)
	at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
	at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:769)
	at javax.faces.component.UICommand.broadcast(UICommand.java:300)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:409)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Unknown Source)

11/03/2012 10:59:33 com.sun.faces.context.ExceptionHandlerImpl log
SEVERE: JSF1073: javax.faces.event.AbortProcessingException obtido durante o processamento de INVOKE_APPLICATION 5: UIComponent-ClientId=frm:j_id_jsp_222883316_2, Message=/cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
11/03/2012 10:59:33 com.sun.faces.context.ExceptionHandlerImpl log
SEVERE: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
javax.faces.event.AbortProcessingException: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
	at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:182)
	at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
	at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:769)
	at javax.faces.component.UICommand.broadcast(UICommand.java:300)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:409)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.jasper.el.JspPropertyNotFoundException: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
	at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:74)
	at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:148)
	... 21 more
11/03/2012 10:59:33 javax.faces.event.MethodExpressionActionListener processAction
SEVERE: 'org.apache.jasper.el.JspPropertyNotFoundException' recebido ao invocar escuta de ação '#{cliente.consultar}' para o componente 'j_id_jsp_222883316_2'
11/03/2012 10:59:33 javax.faces.event.MethodExpressionActionListener processAction
SEVERE: org.apache.jasper.el.JspPropertyNotFoundException: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
	at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:74)
	at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:148)
	at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
	at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:769)
	at javax.faces.component.UICommand.broadcast(UICommand.java:300)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:409)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Unknown Source)

11/03/2012 10:59:33 com.sun.faces.context.ExceptionHandlerImpl log
SEVERE: JSF1073: javax.faces.event.AbortProcessingException obtido durante o processamento de INVOKE_APPLICATION 5: UIComponent-ClientId=frm:j_id_jsp_222883316_2, Message=/cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
11/03/2012 10:59:33 com.sun.faces.context.ExceptionHandlerImpl log
SEVERE: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
javax.faces.event.AbortProcessingException: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
	at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:182)
	at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
	at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:769)
	at javax.faces.component.UICommand.broadcast(UICommand.java:300)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:409)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.jasper.el.JspPropertyNotFoundException: /cliente.jsp(13,15) '#{cliente.consultar}' Target Unreachable, identifier 'cliente' resolved to null
	at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:74)
	at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:148)
	... 21 more
A

Esse probleminha ta “Osso” galera, ta dificil encontrar a solução dele…
:shock:

A

;;;;

R

Tem que saber ler o stacktrace…

Target Unreachable, identifier 'cliente' resolved to null
ArthurTurtle

Bom Dia!

Pelo oque eu vi você esta chamando o metodo do bena de maneira errada na view:

<h:commandButton value="Consultar..."  
                              actionListener="#{cliente.consultar}"/>

O seu bean se chama ConsultaClienteBean, por tanto deveria ser algo assim:

<h:commandButton value="Consultar..."  
                              actionListener="#{consultaClienteBean.consultar}"/>

Tenta la e depois da um toque :wink:

A

ArthurTurtle:
Bom Dia!

Pelo oque eu vi você esta chamando o metodo do bena de maneira errada na view:

<h:commandButton value="Consultar..."  
                              actionListener="#{cliente.consultar}"/>

O seu bean se chama ConsultaClienteBean, por tanto deveria ser algo assim:

<h:commandButton value="Consultar..."  
                              actionListener="#{consultaClienteBean.consultar}"/>

Tenta la e depois da um toque ;)

Bom dia…
Cliente é o nome que eu dei para a classe ConsultarClienteBean no arquivo faces-config
exatamente onde <managed-bean-class>br.com.managedbean.ConsultaClienteBean</managed-bean-class> é a classe que represente meu ManegedBean e <managed-bean-name>cliente</managed-bean-name> é o nome que eu dei para referenciar meu ManegedBean… acho que até aii ta normal… eu acho… :frowning:
Mesmo assim vou tentar alterar isso ai que você falou, qualquer coisa dou o toque ai…

Obrigado pela ajuda!!

A

raf4ever:
Tem que saber ler o stacktrace…

Target Unreachable, identifier 'cliente' resolved to null

Bom dia, eu não sei fazer isso ai que você solicitou amigo!!!
:frowning:

ArthurTurtle

Porque você declarou no seu web.xml e também colocou a anotação @ManagedBean na classe?
Ou um ou outro.

Talvez seja isso, retire um dos dois e volte a testar :wink:

[]'s

A

ArthurTurtle:
Porque você declarou no seu web.xml e também colocou a anotação @ManagedBean na classe?
Ou um ou outro.

Talvez seja isso, retire um dos dois e volte a testar :wink:

[]'s

Bom dia…
Eu tirei a Anotation da classe e deixei só no arquivo XML, mesmo assim continua dando o erro!!!
:frowning:

diogoprosoft

Faz assim

Deixa seu annotations @ManagedBean, retire o mapeamento no xml, depois no seu bean adicione na lista normalmente

package br.com.managedbean;  
      
    import java.awt.event.ActionEvent;  
    import java.util.ArrayList;  
    import java.util.List;  
    import javax.faces.bean.ManagedBean;  
      
      
    import br.com.bean.Cliente;  
      
    @ManagedBean  
    public class ConsultaClienteBean {  
          
        private List<Cliente> clientes = new ArrayList<Cliente>();  
          
        public void consultar(){  
                          
            clientes.add(new Cliente(1,"Anderson Santana", "Paracatu"));  
            clientes.add(new Cliente(2,"Peres Julião", "Araguari"));  
            clientes.add(new Cliente(3,"Evandro Gaio", "Divinopolis"));  
            clientes.add(new Cliente(4,"Alex Francois", "Uberlândia"));  
            clientes.add(new Cliente(5,"Jhoseper", "Rondônia"));  
            clientes.add(new Cliente(6,"Nem sei", "Caralho"));  
              
        }  
          
          
        public List<Cliente> getClientes(){  
            return this.clientes;  
        }  
      
    }

Ai depois passe sua xhtml assim

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>  
    <%@ taglib prefix="f"  uri="http://java.sun.com/jsf/core"%>  
    <%@ taglib prefix="h"  uri="http://java.sun.com/jsf/html"%>  
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
    <html>  
    <head>  
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">  
    <title>Consulta de Clientes</title>  
    </head>  
    <body>  
    <f:view>  
           <h:form id="form">  
                
                 <h:commandButton value="Consultar..."  
                                  actionListener="#{consultaClienteBean.consultar}"/>  
                                    
                 <h:dataTable value="#{consultaClienteBean.clientes}" var="item">  
                      <h:column>  
                         <h:outputText value="#{item.codigo}" />  
                      </h:column>  
                      <h:column>  
                         <h:outputText value="#{item.nome}"/>  
                      </h:column>  
                      <h:column>  
                         <h:outputText value="#{item.cidade}"/>  
                      </h:column>  
                   
                 </h:dataTable>                   
             
           </h:form>  
    </f:view>  
    </body>  
    </html>

Creio que deva funcionar assim, qualquer posta o erro ai.

Criado 9 de março de 2012
Ultima resposta 16 de mar. de 2012
Respostas 13
Participantes 5