Id generator não funciona mais

Estou convertendo meu projeto para ejb, porem ao tentar inserir no banco de dados o id fica null.

@Transational
	public void gravar(){
//		candidatoService.gravar(candidato, pessoa, pessoaId, candidatoid);
		try{
			this.candidatoDao.begin();
			this.pessoa.setIdPessoa(pessoaId);
			this.pessoaDao.create(this.pessoa);
			this.candidato.setPessoa(this.pessoa);
			this.candidatoDao.create(this.candidato);
			this.candidatoDao.commit();
			this.candidatoDao.close();
			System.out.println("Inserção feita com sucesso");
			adicionaMensagemInfo("Candidato inserido");
		}catch(Exception e){
			this.pessoaDao.rollback();
			this.candidatoDao.rollback();
			this.candidato.setCandidatoId(0);
			this.pessoa.setIdPessoa(0);
			this.candidatoDao.close();
			System.out.println("erro no insert");
			adicionaMensagemError("Erro");
		}finally{
			this.candidato = new Candidato();		
			this.pessoa = new Pessoa();	
		}
	}

Na classe pessoa estou usando o @GeneratedValue