AJUDA URGENTE... hibernate+spring+jsf+jpa...etc 01/01 05:24 ERROR [ProcessValidationsPhase] Error te

Galera, estou precisando colocar um DAO para funcionar, e não estou conseguindo. Pode ser algum erro nos arquivos web.xml, applicationContext.xml ou até mesmo no facesConfig.xml. O negócio é que não estou conseguindo achar o erro. Vou colocar o código completo aqui… alguém por favor… veja se me ajude…

arquivo web.xml
[color=blue]<?xml version="1.0"?>

<context-param>
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    <param-value>server</param-value>
</context-param>

<context-param>
    <param-name>javax.faces.CONFIG_FILES</param-name>
    <param-value>/WEB-INF/faces-config.xml</param-value>
</context-param>

<listener>
   <listener-class>br.com.netservice.aplicacao.Inicializacao</listener-class>
</listener>


<!-- Faces Servlet -->
<servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup> 1 </load-on-startup>
</servlet>


<!-- Faces Servlet Mapping -->
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.jsf</url-pattern>
</servlet-mapping>
[/color]

arquivo applicationContext.xml
[color=blue]

<?xml version="1.0" encoding="UTF-8"?>
<bean id="entityManagerFactory" 
      class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
    <property name="persistenceUnitName" value="Telefonia" />
</bean>

<context:component-scan base-package="br.com.netservice.controller"/>    

<!--<bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />-->

<context:annotation-config/>


<bean id="transactionManager" 
      class="org.springframework.orm.jpa.JpaTransactionManager">
    <property name="entityManagerFactory" ref="entityManagerFactory" />
</bean>

<tx:annotation-driven />


<bean id="localidadeDao" class="br.com.netservice.dao.imp.LocalidadeDaoImp">
     <property name="sessionFactory" ref="sessionFactory"/>  
</bean>   

<bean id="enviarEmail"
	class="org.springframework.mail.javamail.JavaMailSenderImpl">
  <property name="host" value="HOST"/>
  <property name="username" value="USUARIO"/>
  <property name="password" value="SENHA"/>
 </bean>	
[/color]

arquivo facesConfig.xml
[color=blue]

<?xml version="1.0"?> Login br.com.netservice.login.Login session /pages/login.jsp #{Login.ValidaUsuario} success /pages/principal.jsp #{Login.ValidaUsuario} fail /pages/falhalogin.jsp
<managed-bean>
	<managed-bean-name>LocalidadeController</managed-bean-name>
	<managed-bean-class>br.com.netservice.controller.LocalidadeController</managed-bean-class>
	<managed-bean-scope>session</managed-bean-scope>

</managed-bean>
<navigation-rule>
	<from-view-id>/pages/localidade.jsp</from-view-id>
	<navigation-case>
		<from-action>#{Localidade.inserir}</from-action>
		<from-outcome>lista</from-outcome>
		<to-view-id>/pages/localidade.jsp</to-view-id>
	</navigation-case>

	<navigation-case>
		<from-action>#{Localidade.pesquisar}</from-action>
		<from-outcome>lista</from-outcome>
		<to-view-id>/pages/localidadeLista.jsp</to-view-id>
	</navigation-case>
</navigation-rule>

<managed-bean>
	<managed-bean-name>Localidade</managed-bean-name>
	<managed-bean-class>br.com.netservice.cadastros.Localidade</managed-bean-class>
	<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
<navigation-rule>
	<from-view-id>/pages/localidade.jsp</from-view-id>
	<navigation-case>
		<from-action>#{Localidade.inserir}</from-action>
		<from-outcome>lista</from-outcome>
		<to-view-id>/pages/localidade.jsp</to-view-id>
	</navigation-case>

	<navigation-case>
		<from-action>#{Localidade.pesquisar}</from-action>
		<from-outcome>lista</from-outcome>
		<to-view-id>/pages/localidadeLista.jsp</to-view-id>
	</navigation-case>
</navigation-rule>	
<managed-bean>
	<managed-bean-name>UnidadeFederacao</managed-bean-name>
	<managed-bean-class>br.com.netservice.cadastros.UnidadeFederacao</managed-bean-class>
	<managed-bean-scope>session</managed-bean-scope>
	   <managed-property>
          <property-name>unf_Id</property-name>
          <value>#{Unf_Id}</value>
       </managed-property>
	   <managed-property>
          <property-name>unf_Sigla</property-name>
          <value>#{Unf_Sigla}</value>
       </managed-property>
	   <managed-property>
          <property-name>unf_Nome</property-name>
          <value>#{Unf_Nome}</value>
       </managed-property>
</managed-bean>

<managed-bean>
	<managed-bean-name>Operadora</managed-bean-name>
	<managed-bean-class>br.com.netservice.cadastros.Operadora</managed-bean-class>
	<managed-bean-scope>session</managed-bean-scope>
	   <managed-property>
          <property-name>ope_Id</property-name>
          <value>#{Ope_Id}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Codigo</property-name>
          <value>#{Ope_Codigo}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_RazaoSocial</property-name>
          <value>#{Ope_RazaoSocial}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Cnpj</property-name>
          <value>#{Ope_Cnpj}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_InscricaoEstadual</property-name>
          <value>#{Ope_InscricaoEstadual}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Endereco</property-name>
          <value>#{Ope_Endereco}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Bairro</property-name>
          <value>#{Ope_Bairro}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Cep</property-name>
          <value>#{Ope_Cep}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Cidade</property-name>
          <value>#{Ope_Cidade}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Site</property-name>
          <value>#{Ope_Site}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Login</property-name>
          <value>#{Ope_Login}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Senha</property-name>
          <value>#{Ope_Senha}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Contato</property-name>
          <value>#{Ope_Contato}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Email</property-name>
          <value>#{Ope_Email}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Telefone</property-name>
          <value>#{Ope_Telefone}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_Celular</property-name>
          <value>#{Ope_Celular}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_TelefonePos</property-name>
          <value>#{Ope_TelefonePos}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_TelefoneTam</property-name>
          <value>#{Ope_TelefoneTam}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_DataServicoPos</property-name>
          <value>#{Ope_DataServicoPos}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_DataServicoTam</property-name>
          <value>#{Ope_DataServicoTam}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_ServicoPos</property-name>
          <value>#{Ope_ServicoPos}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_ServicoTam</property-name>
          <value>#{Ope_ServicoTam}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_RamalChamadorPos</property-name>
          <value>#{Ope_RamalChamadorPos}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_RamalChamadorTam</property-name>
          <value>#{Ope_RamalChamadorTam}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_NumeroChamadoPos</property-name>
          <value>#{Ope_NumeroChamadoPos}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_NumeroChamadoTam</property-name>
          <value>#{Ope_NumeroChamadoTam}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_HoraChamadaPos</property-name>
          <value>#{Ope_HoraChamadaPos}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_HoraChamadaTam</property-name>
          <value>#{Ope_HoraChamadaTam}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_DuracaoPos</property-name>
          <value>#{Ope_DuracaoPos}</value>
       </managed-property>
	   <managed-property>
          <property-name>ope_DuracaoTam</property-name>
          <value>#{Ope_DuracaoTam}</value>
       </managed-property>
</managed-bean>

<managed-bean>
	<managed-bean-name>RamalCelular</managed-bean-name>
	<managed-bean-class>br.com.netservice.cadastros.RamalCelular</managed-bean-class>
	<managed-bean-scope>session</managed-bean-scope>
	   <managed-property>
          <property-name>rce_Id</property-name>
          <value>#{Rce_Id}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_Tipo</property-name>
          <value>#{Rce_Tipo}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_DddCidade</property-name>
          <value>#{Rce_DddCidade}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_Numero</property-name>
          <value>#{Rce_Numero}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_Matricula</property-name>
          <value>#{Rce_Matricula}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_Responsavel</property-name>
          <value>#{Rce_Responsavel}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_DiretoriaExecutiva</property-name>
          <value>#{Rce_DiretoriaExecutiva}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_Diretoria</property-name>
          <value>#{Rce_Diretoria}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_GerenciaGeral</property-name>
          <value>#{Rce_GerenciaGeral}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_Gerencia</property-name>
          <value>#{Rce_Gerencia}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_UnidadeControle</property-name>
          <value>#{Rce_UnidadeControle}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_CentroCusto</property-name>
          <value>#{Rce_CentroCusto}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_Carrier</property-name>
          <value>#{Rce_Carrier}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_LocalInstalacao</property-name>
          <value>#{Rce_LocalInstalacao}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_NumeroSerie</property-name>
          <value>#{Rce_NumeroSerie}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_Imei</property-name>
          <value>#{Rce_Imei}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_Status</property-name>
          <value>#{Rce_Status}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_InicioValidade</property-name>
          <value>#{Rce_InicioValidade}</value>
       </managed-property>
	   <managed-property>
          <property-name>rce_FimValidade</property-name>
          <value>#{Rce_FimValidade}</value>
       </managed-property>
[/color]

DaoGenerico

package br.com.netservice.dao;

import java.io.Serializable;
import java.util.List;
import java.util.Map;


public interface DaoGenerico<T, ID extends Serializable> {
	public Class<T> getObjectClass();
	public T salvar(T object);
	public T pesquisarPorId(ID id);
	public T atualizar(T object);
	public void excluir(T object);
	public List<T> todos();
	public List<T> listPesqParam(String query, Map<String, Object> params);
	public List<T> listPesqParam(String query, Map<String, Object> params, 
			int maximo, int atual);
	public List<T> listPesq(String query);
	public T pesqParam(String query, Map<String, Object> params);
	
}

LocalidadeDao

package br.com.netservice.dao;

import br.com.netservice.cadastros.Localidade;

public interface LocalidadeDao extends DaoGenerico<Localidade, Integer>
{

}

DaoGenericoImp

package br.com.netservice.dao.imp;

import java.io.Serializable;
import java.lang.reflect.ParameterizedType;
import java.util.List;
import java.util.Map;

import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import br.com.netservice.dao.DaoGenerico;

@Transactional(readOnly = true, propagation = Propagation.REQUIRED)
public class DaoGenericoImp<T, ID extends Serializable> 
implements DaoGenerico<T, ID> {

	private EntityManager entityManager; 

	private final Class<T> oClass;//object class

	public Class<T> getObjectClass() {
		return this.oClass;
	}


	@SuppressWarnings("unchecked")
	@PersistenceContext
	public void setEntityManager(EntityManager em) {
		this.entityManager = em;
	}


	protected EntityManager getEntityManager() {
		if (entityManager == null)
			throw new IllegalStateException("Erro");
		return entityManager;
	}

	@SuppressWarnings("unchecked")
	public DaoGenericoImp() {
		this.oClass = (Class<T>)
		( (ParameterizedType) getClass().getGenericSuperclass() ).
		getActualTypeArguments()[0];

	}


	@Override
	@Transactional(readOnly = false, propagation = Propagation.REQUIRED)
	public T atualizar(T object) {
		getEntityManager().merge(object);

		return object;

	}

	@Override
	@Transactional(readOnly = false, propagation = Propagation.REQUIRED)
	public void excluir(T object) {
		object = getEntityManager().merge(object);
		getEntityManager().remove(object);
	}



	@Override
	public T pesquisarPorId(ID id) {
		return (T) getEntityManager().find(oClass, id);
	}	


	@Override
	@Transactional(readOnly = false, propagation = Propagation.REQUIRED)
	public T salvar(T object) 
	{
		System.out.println("passou 11");
		getEntityManager().clear();
		System.out.println("passou 12");
		getEntityManager().persist(object);
		System.out.println("passou 13");

		return object;
	}

	@SuppressWarnings("unchecked")
	public List<T> todos(){
		String queryS = "SELECT obj FROM "+oClass.getSimpleName()+" obj";
		Query query = getEntityManager().createQuery(queryS);
		return query.getResultList();

	}

	@SuppressWarnings("unchecked")
	public List<T> listPesqParam(String query, Map<String, Object> params){
		Query q = getEntityManager().createQuery(query);
		for(String chave : params.keySet()){
			q.setParameter(chave, params.get(chave));

		}
		return q.getResultList();
	}

	@SuppressWarnings("unchecked")
	public List<T> listPesqParam(String query, Map<String, Object> params,
			int maximo, int atual){
		Query q = getEntityManager().
					createQuery(query).
					setMaxResults(maximo).
					setFirstResult(atual);
		
		for(String chave : params.keySet()){
			q.setParameter(chave, params.get(chave));

		}
		return q.getResultList();
	}	
	
	@SuppressWarnings("unchecked")
	public List<T> listPesq(String query){
		Query q = getEntityManager().createQuery(query);
		return q.getResultList();
	}	
	
	@SuppressWarnings("unchecked")
	public T pesqParam(String query, Map<String, Object> params){
		Query q = getEntityManager().createQuery(query);
		for(String chave : params.keySet()){
			q.setParameter(chave, params.get(chave));

		}
		try{
			return (T) q.getSingleResult();
		}catch(NoResultException nre){
			return null;
		}
	}

}

LocalidadeDaoImp

package br.com.netservice.dao.imp;

import br.com.netservice.cadastros.Localidade;
import br.com.netservice.dao.LocalidadeDao;

public class LocalidadeDaoImp extends DaoGenericoImp<Localidade, Integer> implements LocalidadeDao 
{

}

bean Localidade

package br.com.netservice.cadastros;

import static javax.persistence.GenerationType.IDENTITY;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;


import br.com.netservice.controller.LocalidadeController;
@Entity
@Table(name="LOCALIDADE")
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
public class Localidade implements Serializable
{
   private static final long serialVersionUID = 1L;	
	
   @Id
   @GeneratedValue(strategy=IDENTITY)
   @Column(name="LOC_ID")
   public Integer Loc_Id;
   @Column(name="LOC_NOME")
   public String Nome;
   @Column(name="LOC_CIDADE")
   public String Cidade;
   @Column(name="LOC_ORGANIZACAOINVENTARIO")
   public String OrganizacaoInventario;
   @Column(name="LOC_CARRIER")
   public String Carrier;
   @Column(name="LOC_PREFIXO")
   public String Prefixo;
   @Column(name="LOC_MODELOPABX")
   public String ModeloPABX;
   @Column(name="LOC_IPPABX")
   public String IpPABX;
   @Column(name="LOC_DDDCIDADE")
   public String DddCidade;
   @Column(name="LOC_NOINTERNO")
   public String NoInterno;
   

//   @JoinColumn(name="codSubfamilia",insertable=true,updatable=true,nullable=false)   
   
//   @ManyToOne(fetch=FetchType.LAZY)
//   @JoinColumn(name="unf_id", referencedColumnName="unf_id")
//   private UnidadeFederacao unidadeFederecao;   

  
   public Localidade()
   {
	  super(); 
   }
   
   public Integer getLoc_Id() {
		return this.Loc_Id;
	}
	public void setLoc_Id(Integer loc_Id) {
		this.Loc_Id = loc_Id;
	}

   public String getDddCidade() 
   {
	return this.DddCidade;
   }

public void setDddCidade(String dddCidade) {
	this.DddCidade = dddCidade;
   }
   public String getModeloPABX() 
   {
	return this.ModeloPABX;
   }
	public void setModeloPABX(String modeloPABX) 
	{
		this.ModeloPABX = modeloPABX;
	}
	public String getIpPABX() 
	{
		return this.IpPABX;
	}
	public void setIpPABX(String ipPABX) 
	{
		this.IpPABX = ipPABX;
	}
	public String getNoInterno() 
	{
		return this.NoInterno;
	}
	public void setNoInterno(String noInterno) 
	{
		this.NoInterno = noInterno;
	}
	public String getNome() 
   {
	return this.Nome;
   }
   public void setNome(String nome) 
   {
	   this.Nome = nome;
   }
   public String getCidade() 
   {
	return this.Cidade;
   }
   public void setCidade(String cidade) 
   {
	   this.Cidade = cidade;
   }
   public String getOrganizacaoInventario() 
   {
	return this.OrganizacaoInventario;
   }
   public void setOrganizacaoInventario(String organizacaoInventario) 
   {
	   this.OrganizacaoInventario = organizacaoInventario;
   }
   public String getCarrier() 
   {
	return this.Carrier;
   }
   public void setCarrier(String carrier) 
   {
	   this.Carrier = carrier;
   }
   public String getPrefixo() 
   {
	return this.Prefixo;
   }
   public void setPrefixo(String prefixo) 
   {
	   this.Prefixo = prefixo;
   }
   
   
	public String inserir()
    {

		System.out.println(this.getNome());
		LocalidadeController localidadeController = new LocalidadeController();
		localidadeController.setLocalidade(this);
		localidadeController.salvar();
		return "sucesso";
		/*
		Session sessao = SessionFactory.currentSession();
		
		try 
		{
			sessao.beginTransaction();

			System.out.println(this.getNome());
			sessao.flush();
			
			sessao.save(this);

			sessao.beginTransaction().commit();

			return "sucesso";
		}
		catch (Exception excessao) 
		{
			System.out.println(excessao);
			return "falhou";
		} 
		finally 
		{
			SessionFactory.closeSession();
		}
		*/
	}
	
	public String pesquisar()
	{
		System.out.println("passou em pesquisar");

		return "lista";
		
		/*
		Session sessao = SessionFactory.currentSession();

		try 
		{
			StringBuffer qry = new StringBuffer(
					"select x from x in class Localidade ");
			
				
				if ((getNome().isEmpty())|| 
				   	(getCidade().isEmpty()) ||
				   	(getDddCidade().isEmpty()))
				{
				    qry.append("where locNome like '%");
					qry.append("");
					qry.append("%' ");
				}

			qry.append("order by locNome");

			List resultSet = sessao.createQuery(qry.toString()).list();
			
			return resultSet;

		} 
		catch (Exception excessao) 
		{
			System.out.println(excessao);
			return null;
		} 
		finally 
		{
			SessionFactory.closeSession();
		}
		*/
	}
	

}


controladora LocalidadeController

package br.com.netservice.controller;

import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;

import javax.annotation.Resource;
import javax.faces.model.DataModel;
import javax.faces.model.ListDataModel;

import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import br.com.netservice.cadastros.Localidade;
import br.com.netservice.cadastros.UnidadeFederacao;
import br.com.netservice.dao.DaoGenerico;
import br.com.netservice.util.FacesUtils;


@Controller("localidadeController")
@Scope("session")
public class LocalidadeController {

	private Localidade localidade;
	/*
	 * Injetado pelo Spring
	 * 
	 */
	@Resource
	private DaoGenerico<Localidade, Integer> localidadeDao;
	
	/*
	 * Injetado pelo Spring
	 * 
	 */
	@Resource
	private DaoGenerico<UnidadeFederacao, Integer> unidadeFederacaoDao;


	public DaoGenerico<Localidade, Integer> getLocalidadeDao() {
		return localidadeDao;
	}

	public void setLocalidadeDao(DaoGenerico<Localidade, Integer> localidadeDao) {
		this.localidadeDao = localidadeDao;
	}

	public DataModel getModel() {
		return model;
	}

	public void setModel(DataModel model) {
		this.model = model;
	}

	public Map<String, Object> getUnidadeFederacaoItem() {
		return unidadeFederacaoItem;
	}

	public void setUnidadeFederacaoItem(Map<String, Object> unidadeFederacaoItem) {
		this.unidadeFederacaoItem = unidadeFederacaoItem;
	}

	public void setUnidadeFederacaoDao(DaoGenerico<UnidadeFederacao, Integer> unidadeFederacaoDao) {
		this.unidadeFederacaoDao = unidadeFederacaoDao;
	}

	public DaoGenerico<UnidadeFederacao, Integer> getUnidadeFederacaoDao() {
		return unidadeFederacaoDao;
	}

	private DataModel model;

	private Map<String, Object> unidadeFederacaoItem = null;

	public LocalidadeController() 
	{
		// mostrar erro por não inicializar
		
		this.localidade = new Localidade();
		
//		this.localidade.setUnidadeFederacao(new UnidadeFederacao());

	}

	public void setLocalidade(Localidade localidade) {
		this.localidade = localidade;
	}

	public Localidade getLocalidade() {
		return localidade;
	}


	// preenche o combo com as categorias disponíveis
	// no formulário de cadastro de localidades
	public Map<String, Object> getUnidadeFederacao() {

		unidadeFederacaoItem = new LinkedHashMap<String, Object>();

		for (Iterator<?> iter = unidadeFederacaoDao.todos().iterator(); iter.hasNext();) {
			UnidadeFederacao c = (UnidadeFederacao) iter.next();
			unidadeFederacaoItem.put(c.getUnf_Sigla(), c.getUnf_Id());// label,value
		}

		return unidadeFederacaoItem;
	}

	
	public String novaLocalidade() {
		this.localidade = new Localidade();
//		this.localidade.setUnidadeFederacao(new UnidadeFederacao());
		this.getUnidadeFederacao();

		return "formLocalidade";
	}

	// mostra todos os localidades em um DataTable
	public DataModel getTodos() {
		model = new ListDataModel(localidadeDao.todos());
		return model;
	}



	
	// salva o localidade
	public String salvar() 
	{
		
		try 
		{   
			System.out.println("passou 1");

		// se não há um id,
			// estamos com um novo registro
			
			//this.localidade = new Localidade();
			//System.out.println("passou construtor");
			
			if (localidade.getLoc_Id() == null) 
			{

				System.out.println("passou 2 mesmo");
				System.out.println(localidade.getNome());
				//localidade.setLoc_Id(-1);
				
				localidadeDao.salvar(localidade);
				System.out.println("passou 3");
				FacesUtils.mensInfo("Cadastrado com sucesso");

			} 
			else 
			{
				// pega a categoria escolhida para atualização
//				UnidadeFederacao unidadeFederacao = unidadeFederacaoDao.pesquisarPorId(localidade.getUnidadeFederacao()
//						.getUnf_Id());
				// altera
//				localidade.setUnidadeFederacao(unidadeFederacao);
				// atualiza o localidade
				localidadeDao.atualizar(localidade);
				System.out.println("passou 4");
				FacesUtils.mensInfo("Atualizado com sucesso");

			}

		} 
		catch 
		(Exception e) {
			FacesUtils.mensErro("Um erro ocorreu");
			e.printStackTrace();
		}

		return "sucesso";

	}

	public Localidade getLocalidadeParaEditarExcluir() {
		Localidade localidade = (Localidade) model.getRowData();

		return localidade;

	}

	public String editar() {
		setLocalidade(getLocalidadeParaEditarExcluir());
		return "formLocalidade";
	}

	public String excluir() {
		Localidade localidade = getLocalidadeParaEditarExcluir();

		localidadeDao.excluir(localidade);

		return "mostrarLocalidades";
	}

}

E por fim o arquivo localidade.jsp (este arquivo está deste jeito, mas pretendo passá-lo para xhtml)…
[color=blue]<%@ taglib uri=“http://java.sun.com/jsf/core” prefix=“f” %>
<%@ taglib uri=“http://java.sun.com/jsf/html” prefix=“h” %>

<%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c” %>

<f:view>

    <td valign="top" width="111" height="250">
       <div align="center"></div>        
       <div align="center">
         <table width="101" border="1" cellpadding="0" cellspacing="0">
          <tr>
             <td><div align="center"><strong>Menu</strong></div></td>
           </tr>
           <tr>
             <td><div align="center"><h:outputLink value="localidade.jsf"><f:verbatim>Localidade</f:verbatim></h:outputLink></div></td>
           </tr>
           <tr>
             <td><div align="center"><h:outputLink value="login.jsf"><f:verbatim>Voltar</f:verbatim></h:outputLink></div></td>
           </tr>
           <tr>
             <td><div align="center"><h:outputLink value="login.jsf"><f:verbatim>Voltar</f:verbatim></h:outputLink></div></td>
           </tr>

         </table>
       </div>        
       <div align="center"></div>        
       <div align="center"></div>        
       <div align="center"></div>        
       <div align="center"></div>        
       <div align="center"></div>        
       <div align="center"></div>        
       <div align="center"></div>
    </td>
    
    <td width="645" colspan="2">
       
		<table width="100%" height="87" border="0" cellpadding="0" cellspacing="0">
             <h:form>
		         <table>
		              <tr>
			            <td>Localidade</td>
		              </tr>
		              <tr>
			            <td colspan="2"><h:inputText id="nome" value="#{localidadeController.localidade.nome}" required="true" size="70" maxlength="60"></h:inputText></td>
		              </tr>
		              <tr>
			            <td>Cidade</td>
			          <td>Estado</td>
		              </tr>
		              <tr>
			            <td><h:inputText id="cidade" value="#{localidadeController.localidade.cidade}" size="70" maxlength="60"></h:inputText></td>
		              </tr>
		              <tr>
			            <td>Organizacao do Inventario</td>
		              </tr>
		              <tr>  
			            <td><h:inputText id="organizacaoInventario" value="#{localidadeController.localidade.organizacaoInventario}" size="7" maxlength="3"></h:inputText></td>
		              </tr>
		              <tr>
			            <td>Modelo PABX</td>
			            <td>IP do PABX</td>
		              </tr>
		              <tr>
			            <td><h:inputText id="modeloPABX" value="#{localidadeController.localidade.modeloPABX}" size="30" maxlength="20"></h:inputText></td>
			            <td><h:inputText id="ipPABX" value="#{localidadeController.localidade.ipPABX}" size="30" maxlength="20"></h:inputText></td>
		              </tr>
		              <tr>
			            <td>DDD</td>
			            <td>No(NNO)</td>
		              </tr>
		              <tr>
			            <td><h:inputText id="dddCidade" value="#{localidadeController.localidade.dddCidade}" size="7" maxlength="3"></h:inputText></td>
			            <td><h:inputText id="noInterno" value="#{localidadeController.localidade.noInterno}" size="30" maxlength="20"></h:inputText></td>
		              </tr>
		              <tr>
			            <td>Carrier</td>
			            <td>Prefixo</td>
		              </tr>
		              <tr>
			            <td><h:inputText id="carrier" value="#{localidadeController.localidade.carrier}" size="7" maxlength="3"></h:inputText></td>
			            <td><h:inputText id="prefixo" value="#{localidadeController.localidade.prefixo}" size="7" maxlength="2"></h:inputText></td>
		              </tr>

	                  <tr>	              
                         <td colspan="2" width="272" align="right"><h:commandButton value="Inserir" action="#{localidadeController.salvar}"/></td>
	                  </tr> 

		            </table>  


                 </h:form>
            <jsp:include page="rodape.jsp"/>
	    </table>
	  	
    </td>

</tr>

 

 

 

 

[/color][color=blue] [/color]

O erro que está acontecendo agora é o seguinte: 01/01 05:24 ERROR [ProcessValidationsPhase] Error testing property ‘nome’ in bean of type null.
Pelo que pesquisei, está tentando testar um propriedade de um bean que está nulo… mas não estou conseguindo solucionar o erro… alguém pode me dar uma força aí… eu já fiz de tudo… o erro pode estar também nos arquivos xml (pode estar precisando de carregar alguma biblioteca…) … etc, … obrigado

Primeiro: não coloque urgente no título, todo mundo tem urgência nos problemas e colocando isso ninguém vai querer te ajudar,
pois aqui todos são tratados iguais, urgentes e não urgentes, e prefirimos com certeza resolver não urgentes.
Vou quebrar seu galho te alertando dessa vez.

Segundo faça o post corretamente dentro das tags code, edita ele ai porque está dando dor de cabeça com tanto código e colorido. :evil:

Segundo até onde consegui analisar, parei pela dor nas vistas que me deu esse código colorido, no seu bean LocalidadeController, não tem uma propriedade para o bean Localidade.
e você está acessando assim:

#{localidadeController.localidade.nome}

ou você declara o Localidade sendo property de LocalidadeController, ou então acesse assim:

#{localidade.nome}

[]'s Hewerton Crisóstomo

Javabuntu… obrigado pelas dicas … não leve a mal pelo urgente…mas é falta de informação mesmo… é que eu fiquei o final de semana tentando gravar no banco com este código… sei que estou perto… valeu…
mas voltando ao assunto … eu declarei o bean localidade em LocalidadeController desta forma: private Localidade locadalide… e gerei o get e set… já pesquisei muito… e realmente não sei o que pode ser…
e da próxima vez eu coloco tudo dentro da tag [code]…rsrsrsrs… valeu… e não leve a mal também pela demora em responder… hoje no meu trabalho nem acessei internet…

[quote=jocamsg]Javabuntu… obrigado pelas dicas … não leve a mal pelo urgente…mas é falta de informação mesmo… é que eu fiquei o final de semana tentando gravar no banco com este código… sei que estou perto… valeu…
mas voltando ao assunto … eu declarei o bean localidade em LocalidadeController desta forma: private Localidade locadalide… e gerei o get e set… já pesquisei muito… e realmente não sei o que pode ser…
e da próxima vez eu coloco tudo dentro da tag code…rsrsrsrs… valeu… e não leve a mal também pela demora em responder… hoje no meu trabalho nem acessei internet…[/quote]
ok, mas o que eu disse foi pra colocar o Localidade como sendo propriedade de Controller.
Altere no faces-config seu bean LocalidadeController e deixe declarado como abaixo, faça isso e veja se funciona:

 <managed-bean> 
     <managed-bean-name>LocalidadeController</managed-bean-name> 
     <managed-bean-class>br.com.netservice.controller.LocalidadeController</managed-bean-class> 
     <managed-bean-scope>session</managed-bean-scope> 
	<managed-property>
		<property-name>localidade</property-name>
		<property-class> br.com.netservice.cadastros.Localidade</property-class>
		<value>#{localidade}</value>
	</managed-property>
</managed-bean> 

valeu pela ajuda. mas não deu certo não. o bean continua nulo. o que poderá ser?