Ajuda com Tratamento de excessão

3 respostas
F

Ola pessoal!!
Possuo uma pagina em jsp q faz a inserção de dados no banco de dados, até ai beleza... ele faz a inserção certo(já conferi em meu banco), mas quando eu peço para listar a tabela com as informações dentro do banco me dá a seguinte exceptiom:

javax.servlet.ServletException: /inserirFuncionario.jsp(35,23) '#{procedimentos.listaFuncionario}' Method not found: [email removido]()
javax.faces.webapp.FacesServlet.service(FacesServlet.java:256)

.... já olhei no meu manager bean e faces-config, está tudo bem. Alguém poderia me dar uma dica onde eu poderia estar errando?

manager bean - Procedimentos
package br.empresa.web;

import java.util.List;

import br.empresa.Funcionario;
import br.empresa.FuncionarioNaoEncontradoException;
import br.empresa.FuncionarioNaoUnicoException;
import br.empresa.FuncionarioServiceImpl;

public class Procedimentos {

	private FuncionarioServiceImpl servico = new FuncionarioServiceImpl();

	private Funcionario funcionario;

	public Procedimentos() {
		System.out.println("\n\npassou pelo construtor");
		funcionario = new Funcionario();
	}

	public Funcionario getFuncionario() {
		return funcionario;
	}

	public void setFuncionario(Funcionario funcionario) {
		this.funcionario = funcionario;
	}

	public List<Funcionario> getListaFuncionario()
			throws FuncionarioNaoUnicoException,
			FuncionarioNaoEncontradoException {
		System.out.println("\n\nacessou o metodo getListaFuncionario");

		return servico.carregarTudoOrdenadoNome();

	}

	public void excluirFuncionario(Funcionario funcionario) {
          .....
	}

	public void inserirFuncionario() {
		System.out.println("\n\nacessou o metodo inserirFuncionario");

		this.servico.inserir(funcionario);
		System.out.println("insercao efetuado!");

	}

}
faces-config
<managed-bean>
    <managed-bean-name>login</managed-bean-name>
    <managed-bean-class>br.empresa.web.Login</managed-bean-class>
    <managed-bean-scope>request</managed-bean-scope>
  </managed-bean>
  <managed-bean>
    <managed-bean-name>procedimentos</managed-bean-name>
    <managed-bean-class>br.empresa.web.Procedimentos</managed-bean-class>
    <managed-bean-scope>request</managed-bean-scope>
  </managed-bean>
  <navigation-rule>
     <from-view-id>/login.jsp</from-view-id>
     <navigation-case>
        <from-outcome>listaFuncionario</from-outcome>
        <to-view-id>/listaFuncionario.jsp</to-view-id>
     </navigation-case>
     <navigation-case>
        <from-outcome>erro</from-outcome>
        <to-view-id>/erro.jsp</to-view-id>
     </navigation-case>
     <navigation-case>
        <from-outcome>inserirFuncionario</from-outcome>
        <to-view-id>/inserirFuncionario.jsp</to-view-id>
     </navigation-case>
     <navigation-case>
        <from-outcome>excluirFuncionario</from-outcome>
        <to-view-id>/excluirFuncionario.jsp</to-view-id>
     </navigation-case>
  </navigation-rule>
</faces-config>

minha pagina de inserção de dados

<html>
<head>
<title>Inserir</title>
</head>
<body>
<f:view>
	<h:form>
		<h2>Inserir Funcionario</h2>
		<h3>Entre com os dados do funcionario:</h3>
		<table>
			<tr>
				<td>Nome:</td>
				<td><h:inputText value="#{procedimentos.funcionario.nome}" /></td>
			</tr>
			<tr>
				<td>Cargo:</td>
				<td><h:inputText value="#{procedimentos.funcionario.cargo}" /></td>
			</tr>
			<tr>
				<td>Salario:</td>
				<td><h:inputText value="#{procedimentos.funcionario.salario}" /></td>
			</tr>
			<tr>
				<td>Horas Extras:</td>
				<td><h:inputText value="#{procedimentos.funcionario.horasExtras}" /></td>
			</tr>
			</table>
			<table>
			    <tr>
			       <td colspan="1"><h:commandButton value="Inserir"
					   action = "#{procedimentos.inserirFuncionario}"/>
				   </td>
				   <td colspan="1"><h:commandButton value="Listar"
				       action = "#{procedimentos.listaFuncionario}"/>
				   </td>
			    </tr>
			    <tr></tr>
			    <tr>
			       <td>
		              <h:outputLink value="listaFuncionario.faces">
		                 <f:verbatim>Voltar</f:verbatim>
		              </h:outputLink>
		            </td>
		        </tr>
		    </table>
	</h:form>
</f:view>
</body>
</html>

3 Respostas

eduveks

Como a própria exception diz:

'#{procedimentos.listaFuncionario}' Method not found:

Onde esta o método listaFuncionario na classe Procedimentos? Não tem… será por causa disto?

Vc tem getListaFuncionario, mas listaFuncionario não!

R

<h:commandButton value="Listar" action = "#{procedimentos.listaFuncionario}"/>

Essa declaração de action aponta para um método chamado “listaFuncionario” no seu MB.
E tal método não existe…

F

Pessoal continua dando o mesmo erro!!!

Criado 15 de julho de 2008
Ultima resposta 15 de jul. de 2008
Respostas 3
Participantes 3