Problemas com Managed Bean

3 respostas
D

[color=blue]Segue abaixo o Xhtml e a classe com anotations do managed bean e gostaria de uma ajuda...

este exercicio faz parte do livro java para web do Décio Heinzelmann Lucko, mais especificamente o cap 2

ele cadastra usuarios com login e senha mas nao persiste no bd, porem o meu codigo da o seguinte erro:

"HTTP Status 500 - /usuario.xhtml @19,85 value="#{usuarioBean.nome}": Target Unreachable, identifier 'usuarioBean' resolved to null"

o erro eh no mapeamento do managed bean mais aonde...?

agradeço desde já!!!

[/color][size=24] [/size]

xhtml[size=18] [/size]
<!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:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core">

<head>
<title>Cadastro de Usuários</title>
</head>
<h:body>
	<title>Cadastro de Usuários</title>
	<h:form>
		<h:messages />

		<h:panelGrid columns="2">
			<h:outputText value="Nome: " for="nome" />
			<h:inputText id="nome" label="Nome" value="#{usuarioBean.nome}" required="true"/>
			<h:outputText value="Email: " for="email" />
			<h:inputText id="email" label="Email" value="#{usuarioBean.email}" required="true" />
			<h:outputText value="Senha: " for="senha" />
			<h:inputSecret id="senha" label="Senha" value="#{usuarioBean.senha}" required="true" />
			<h:outputText value="Confirmar Senha: " for="confirmaSenha" />
			<h:inputSecret id="confirmaSenha" label="confirmaSenha" value="#{usuarioBean.confirmaSenha}" />
		
			<h:commandButton action="#{usuarioBean.salvar}" value="Salvar"/>
		</h:panelGrid>


	</h:form>
</h:body>
</html>

Usuario Manage Bean com Anotations

package br.com.deivsoft.financeiro.web;

import java.util.Map;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ManagedProperty;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;

@ManagedBean(name="usuariobean")
@RequestScoped
public class UsuarioBean {

	private String nome;
	private String email;
	private String senha;
	private String confirmaSenha;


	@ManagedProperty(value="#{param}")
	private Map<String,String> parametros = null;
	
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) {
		this.nome = nome;
	}
	
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public String getSenha() {
		return senha;
	}
	public void setSenha(String senha) {
		this.senha = senha;
	}
	public String getConfirmaSenha() {
		return confirmaSenha;
	}
	public void setConfirmaSenha(String confirmaSenha) {
		this.confirmaSenha = confirmaSenha;
	}
	
	public Map<String, String> getParametros() {
		return parametros;
	}
	public void setParametros(Map<String, String> parametros) {
		this.parametros = parametros;
	}
	
	//Inicio dos Métodos
	
	public String novo(){
		
		return "usuario";
	}
	
	public String salvar(){
		FacesContext context = FacesContext.getCurrentInstance();
		if(!this.senha.equalsIgnoreCase(this.confirmaSenha)){
			context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR,"Senhas não coincidem!",""));
		return "usuario";
		}
	return "Sucesso";
	}
	

}

3 Respostas

H

Olha como está no botão: action="#{usuarioBean.salvar}"
E olha como você mapeou o MB @ManagedBean(name=“usuariobean”)

Lembre-se, o Java é case sensitive.

D

Obrigadão Hebert :-D!!!
Deu certooooo!!!

D

aproveita o ensejo poderia me explicar a parte do managed bean que trata do MAP?

pq o uso dele?

Criado 15 de outubro de 2012
Ultima resposta 15 de out. de 2012
Respostas 3
Participantes 2