javax.servlet.ServletException: /IncluirEmpresas.jsp(43,0) ‘#{empresaView.empresa.endereco.logradouro}’ Target Unreachable, ‘endereco’ returned null
javax.faces.webapp.FacesServlet.service(FacesServlet.java:256)
Prezados,
estou fazendo um programa utilizando jsf e está ocorrendo o erro acima quando tento incluir uma nova empresa, quando tento atualizar uma empresa já cadastrada, tudo funciona 100%.
segue as classes …
public class Empresa
{
private int idEmpresa;
private String nome;
private String razSocial;
private String CNPJ;
private Endereco endereco;
private String contato;
private String fones;
public Empresa()
{}
public Empresa
( int idEmpresa , String nome , String razSocial , String CNPJ ,
String logradouro , String bairro , int CEP , String cidade ,
String estado , String contato , String fones )
{
setIdEmpresa(idEmpresa);
setNome(nome);
setRazSocial(razSocial);
setCNPJ(CNPJ);
endereco = new Endereco( logradouro , bairro , CEP , cidade , estado );
setContato(contato);
setFones(fones);
}
public int getIdEmpresa()
{ return idEmpresa; }
public void setIdEmpresa(int idEmpresa)
{ this.idEmpresa = idEmpresa; }
public String getNome()
{ return nome; }
public void setNome(String nome)
{ this.nome = nome; }
public String getRazSocial()
{ return razSocial; }
public void setRazSocial(String razSocial)
{ this.razSocial = razSocial; }
public String getCNPJ()
{ return CNPJ; }
public void setCNPJ(String CNPJ)
{ this.CNPJ = CNPJ; }
public String getContato()
{ return contato; }
public void setContato(String contato)
{ this.contato = contato; }
public String getFones()
{ return fones; }
public void setFones(String fones)
{ this.fones = fones; }
public Endereco getEndereco()
{ return endereco; }
public void setEndereco(Endereco endereco)
{ this.endereco = endereco; }
}
public class Endereco
{
private String logradouro;
private String bairro;
private int CEP;
private String cidade;
private String estado;
public Endereco()
{}
public Endereco( String logradouro , String bairro , int CEP , String cidade , String estado )
{
setLogradouro(logradouro);
setBairro(bairro);
setCEP(CEP);
setCidade(cidade);
setEstado(estado);
}
public String getLogradouro()
{ return logradouro; }
public void setLogradouro(String logradouro)
{ this.logradouro = logradouro; }
public String getBairro()
{ return bairro; }
public void setBairro(String bairro)
{ this.bairro = bairro; }
public int getCEP()
{ return CEP; }
public void setCEP(int CEP)
{ this.CEP = CEP; }
public String getCidade()
{ return cidade; }
public void setCidade(String cidade)
{ this.cidade = cidade; }
public String getEstado()
{ return estado; }
public void setEstado(String estado)
{ this.estado = estado; }
}
public class empresasController
{
private Empresa empresa;
private DataModel model;
private List empresaSelectItem;
public empresasController()
throws scoDaoException
{
Iterator<Empresa> itEmp = null;
empresa = new Empresa();
empresaSelectItem = new ArrayList<SelectItem>();
InterfaceEmpresaDao idao = new EmpresaDAO();
itEmp = idao.todasEmpresas().iterator();
while ( itEmp.hasNext() )
{
empresa = (Empresa) itEmp.next();
empresaSelectItem.add( new SelectItem( empresa.getIdEmpresa(), empresa.getNome() ));
}
}
public List<SelectItem> getEmpresaSelectItem()
{
return empresaSelectItem;
}
public void setEmpresaSelectItem( List<SelectItem> empresaSelectItem )
{
this.empresaSelectItem = empresaSelectItem;
}
public String novaEmpresa()
{
this.empresa = new Empresa();
return "novaEmp";
}
public Empresa getEmpresa()
{
return empresa;
}
public void setEmpresa(Empresa emp)
{
this.empresa = emp;
}
public DataModel getTodos()
throws scoDaoException
{
InterfaceEmpresaDao idao = new EmpresaDAO();
model = new ListDataModel( idao.todasEmpresas());
return model;
}
public Empresa getEmpresaFromEditOrDelete()
{
Empresa emp = (Empresa) model.getRowData();
return emp;
}
public String editar()
{
Empresa emp = getEmpresaFromEditOrDelete();
setEmpresa(emp);
return "editarEmp";
}
public String update()
throws scoDaoException
{
InterfaceEmpresaDao idao = new EmpresaDAO();
idao.atualizar(empresa);
return "sucesso_atuEmp";
}
public String excluir()
{
Empresa emp = getEmpresaFromEditOrDelete();
setEmpresa(emp);
return "excluirEmp";
}
public String delete()
throws scoDaoException
{
InterfaceEmpresaDao idao = new EmpresaDAO();
idao.excluir(empresa);
return "sucesso_excEmp";
}
public String create()
throws scoDaoException
{
InterfaceEmpresaDao idao = new EmpresaDAO();
if ( empresa == null )
System.out.println("vazio emp ");
if ( empresa.getEndereco() == null )
System.out.println("vazio end");
idao.salvar(empresa);
return "sucesso_insEmp";
}
public String validar( String cnpj )
throws scoDaoException
{
InterfaceEmpresaDao idao = new EmpresaDAO();
if ( ! idao.validarCNPJ(cnpj) )
return "CNPJ_invalido";
else
return "";
}
}
página incluir empresa, onde ocorre o erro.
Incluir Empresa<f:view>
<h:form id=“cadEmp” >
..Identificador..:
..Nome...........:
..Razão Social...:
..CNPJ...........:
..Endereço.......:
..Bairro.........:
..Cep............:
..Cidade.........:
..Estado.........:
..Contato........:
..Fones..........:
..................... ... ...
Alguém tem alguma ideia o por que do problema.
Desde já, agradeço, Geraldo.