Erro ao Carregar pagina usuario.jsf

Java

02/01/2013


Bom dia a todos por gentileza alguem poderia me dizer porque esta dando este erro abaixo.



HTTP Status 500 - javax.servlet.ServletException: /publico/usuario.xhtml @79,124 value="#{usuarioBean.conta.descricao}": Property 'conta' not found on type financeiro.web.UsuarioBean

type Exception report

message javax.servlet.ServletException: /publico/usuario.xhtml @79,124 value="#{usuarioBean.conta.descricao}": Property 'conta' not found on type financeiro.web.UsuarioBean

description The server encountered an internal error that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: javax.servlet.ServletException: /publico/usuario.xhtml @79,124 value="#{usuarioBean.conta.descricao}": Property 'conta' not found on type financeiro.web.UsuarioBean
	financeiro.web.filter.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:44)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:343)
	org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
	org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
	org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
	org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
	org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
	org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:119)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
	org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
	org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
	org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:188)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
	org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
	org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
	org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355)
	org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:149)
	org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
	org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)




import java.util.List;

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

import financeiro.conta.Conta;
import financeiro.conta.ContaRN;
import financeiro.usuario.Usuario;
import financeiro.usuario.UsuarioRN;


@ManagedBean(name="usuarioBean")
@RequestScoped
public class UsuarioBean {
	
	private Usuario	 usuario = new Usuario();
	private String	confirmarSenha;
	private List<Usuario>	lista;
	private String	       destinoSalvar;
	private Conta conta = new Conta();
	
	public String novo() {
		this.destinoSalvar = "usuarioSucesso";
		this.usuario = new Usuario();
		this.usuario.setAtivo(true);
		return "usuario";
	}
	
	public String salvar() {
		FacesContext context = FacesContext.getCurrentInstance();

		String senha = this.usuario.getSenha();
		if (!senha.equals(this.confirmarSenha)) {
			FacesMessage facesMessage = new FacesMessage("A senha não foi confirmada corretamente");
			context.addMessage(null, facesMessage);
			return null;
		}

		UsuarioRN usuarioRN = new UsuarioRN();
		usuarioRN.salvar(this.usuario);
		
		if(this.conta.getDescricao() != null){
			this.conta.setUsuario(this.usuario);
			this.conta.setFavorita(true);
			ContaRN contaRN = new ContaRN();
			contaRN.salvar(this.conta);
		}
		
		return this.destinoSalvar;
	}
	
	public String ativar() {
		if (this.usuario.isAtivo())
			this.usuario.setAtivo(false);
		else
			this.usuario.setAtivo(true);

		UsuarioRN usuarioRN = new UsuarioRN();
		usuarioRN.salvar(this.usuario);
		return null;
	}
	
	public String excluir() {
		UsuarioRN usuarioRN = new UsuarioRN();
		usuarioRN.excluir(this.usuario);
		this.lista = null;
		return null;
	}
	
	public String editar() {
		this.confirmarSenha = this.usuario.getSenha();
		return "/publico/usuario";
	}
	
	

	public Conta getConta() {
		return conta;
	}

	public void setConta(Conta conta) {
		this.conta = conta;
	}

	public String getDestinoSalvar() {
		return destinoSalvar;
	}

	public void setDestinoSalvar(String destinoSalvar) {
		this.destinoSalvar = destinoSalvar;
	}

	public Usuario getUsuario() {
		return usuario;
	}

	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}

	public String getConfirmarSenha() {
		return confirmarSenha;
	}

	public void setConfirmarSenha(String confirmarSenha) {
		this.confirmarSenha = confirmarSenha;
	}

	public List<Usuario> getLista() {
		if (this.lista == null) {
			UsuarioRN usuarioRN = new UsuarioRN();
			this.lista = usuarioRN.listar();
		}
		return this.lista;
	}

	public void setLista(List<Usuario> lista) {
		this.lista = lista;
	}
	
	public String atribuiPermissao(Usuario usuario, String permissao) {
		this.usuario = usuario;
		java.util.Set<String> permissoes = this.usuario.getPermissao();
		if (permissoes.contains(permissao)) {
			permissoes.remove(permissao);
		} else {
			permissoes.add(permissao);
		}
		return null;
	}
	
	

}


<?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://java.sun.com/jsf/html" 
      xmlns:f="http://java.sun.com/jsf/core">
	<h:head>
		<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
		<title>Cadastro Usuários</title>
	</h:head>

	<h:body>
		<h1>Cadastro de Usuários</h1>
		<hr />
		<h:form id="cadastro">
			<h:messages />
			
			<h:inputHidden value="#{usuarioBean.usuario.codigo}"/>
			<h:inputHidden value="#{usuarioBean.usuario.ativo}"/>
			<h:inputHidden value="#{usuarioBean.destinoSalvar}"/>
			
			<h:panelGrid columns="2">
				
				<h:outputLabel value="Nome:" for="nome" />
				<h:inputText id="nome" label="Nome" value="#{usuarioBean.usuario.nome}" size="30" required="true"
			 		maxlength="30" requiredMessage="Você não tem nome?">
			 		<f:validateLength minimum="10" maximum="30" />
			 	</h:inputText>
			 
			 	<h:outputLabel value="Data Nascimento:" for="data" />
			 	<h:inputText id="data" label="Data Nascimento" value="#{usuarioBean.usuario.nascimento}"
			  		size="10" maxlength="10" required="true">
			  		<f:convertDateTime dateStyle="medium" /> 
			 	</h:inputText>
			 
			 	<h:outputLabel value="Celular:" for="celular" />
			 	<h:inputText id="celular" label="Celular" value="#{usuarioBean.usuario.celular}" size="10" />
			 	
			 	<h:outputLabel value="e-Mail:" for="email" />
			<h:panelGroup>
				<h:inputText id="email" 
						 label="e-Mail" 
						 value="#{usuarioBean.usuario.email}"  
						 size="50" maxlength="50" required="true"
						 validatorMessage="e-Mail inválido">
						 <f:validateRegex pattern="[a-zA-Z0-9\-\_\.]+@[a-zA-Z0-9\-\_\.]+"/>
				</h:inputText>
				<h:message for="email"/>
			</h:panelGroup>
			
			<h:outputLabel value="Idioma:" for="idioma"/>
				<h:selectOneMenu id="idioma" value="#{usuarioBean.usuario.idioma}">
					<f:selectItem itemValue="pt_BR" itemLabel="Português"/>
					<f:selectItem itemValue="en_US" itemLabel="English"/>
					<f:selectItem itemValue="es_ES" itemLabel="Espanol"/>
				</h:selectOneMenu>
			
			<h:outputLabel value="Login:" for="login"/>
				<h:inputText id="login" 
				             label="Login" 
				             value="#{usuarioBean.usuario.login}" 
				             size="15" maxlength="15" required="true"
				             validatorMessage="Login deve ter no mínimo 5 e no máximo 15 caracters e só pode ter os simbolos '.' e '_'.">
					<f:validateRegex pattern="([a-z]|[0-9]|[.]|[_]){5,15}"/>
				</h:inputText>
				
			<h:outputLabel value="Senha:" for="senha"/>
				<h:inputSecret id="senha" label="Senha" value="#{usuarioBean.usuario.senha}" size="10" 
				maxlength="10" required="true" redisplay="true"/>
				
				<h:outputLabel value="Confirmar Senha:" for="confirmarsenha"/>
				<h:inputSecret id="confirmarsenha" label="Confirmar Senha" value="#{usuarioBean.confirmarSenha}" 
				size="10" maxlength="10" required="true" redisplay="true"/>
			</h:panelGrid>
			
			<h:panelGroup rendered="#{empty contextoBean.usuarioLogado}">
				<fieldset><legend>Conta Inicial</legend>
				<h:panelGrid columns="2">
					<h:outputLabel value="Descrição: " for="descricao" />
					<h:inputText id="descricao" label="Descrição" value="#{usuarioBean.conta.descricao}" required="true" maxlength="45" />
	
					<h:outputLabel value="Saldo Inicial: " for="saldoInicial" />
					<h:inputText id="saldoInicial" value="#{usuarioBean.conta.saldoInicial}" size="10">
						<f:convertNumber minFractionDigits="2" />
					</h:inputText>
				</h:panelGrid>
				</fieldset>
			</h:panelGroup>
			
			<h:commandButton action="#{usuarioBean.salvar}" value="Salvar" />
		</h:form>
	</h:body>
</html>

Wilson Moraes

Wilson Moraes

Curtidas 0

Respostas

Josué Júnior

Josué Júnior

02/01/2013

Wilson, este erro ocorre quando a propriedade conta do seu ManagedBean não tem os métodos de acessos getConta e setConta, dei uma olhada, e vi que você os implementou. Talvez por algum motivo, causa ou circunstancia a sua atualização não tenha "subido" para o seu servidor, então limpe o servidor e publique novamente o seu projeto, caso persista o erro, nos fale qual a versão do seu JSF, Facelets, servidor, Spring, tudo que você está utilizando no projeto.
GOSTEI 0
Wilson Moraes

Wilson Moraes

02/01/2013

JOSUÉ obrigado por responder estou usando tomcat 7.0.33, jsf 2.1.14, spring 3.0.1 e spring security 3.0.2

Limpe o servidor e mesmo assim continua o erro.

Sem mais obrigado.

GOSTEI 0
Jilles Ragonha

Jilles Ragonha

02/01/2013

tente colocar o bean seu como Serializable
GOSTEI 0
Davi Costa

Davi Costa

02/01/2013

O erro continua?
Parece ser problema de build mesmo

att Davi
GOSTEI 0
Thiago Lopes

Thiago Lopes

02/01/2013

Olá, é como nosso amigo falou mesmo, geralmente é erro de GET/SET do objeto, mas vi que voce o implementou tambem, tente limpar e recontruir o projeto na sua IDE, pode ser q ele esteja lendo uma versao antiga desse seu codigo.

(a sua ide esta realmente rodando no TOMCAT?)
caso nao de.. faz uma tentativa de SCOPO como SESSION inves de REQUEST.
nao custa tentar ne.
GOSTEI 0
Wisley Souza

Wisley Souza

02/01/2013

Já que você está utilizando Spring, faz um método inicializar, com a anotação @PostConstruct, e inicializa os teus objetos nele, não faz global não, verifica a entidade conta tbm, ver ser todos os atributos tem get e set.
GOSTEI 0
José

José

02/01/2013

Como a dúvida aparentemente foi sanada, estou dando o tópico por concluído.
GOSTEI 0
POSTAR