E então pessoal, cá estou eu novamente com mais dúvidas.
Criei um Dao que tem a função de salvar dados em duas tabelas. O problema é que preciso recuperar os dados que foram armazenados na sessão dentro deste Dao. O que estou querendo dizer é que preciso recuperar um objeto, na verdade, um atributo deste objeto que foi armazenado ao usuário iniciar a sessão.
Quando tento retomar o objeto através desta linha de comando:
Dá uma exceção de que o objeto não foi encontrado JavaNullPointException
Eis a parte do código do DAO
[code]
//método para Salvar
public void salvar(ParametroAvaliacao parametros,Avaliacao avaliacao) throws DAOException, SQLException{
int avaliacaoId;
PreparedStatement ps = null;
Connection conn = null;
Professor prof = new Professor();
//DADOS DE AVALIACAO
if (avaliacao == null)
throw new DAOException("O valor passado não pode ser nulo");
try {
//RECUPERANDO O OBJETO DA SESSÃO
prof = (Professor) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("usuario");
//INSERINDO VALORES PARA A TABELA AVALIAÇÃO
String SQL01 = "insert into avaliacao (avaliacaoid,professorid,descricao) values (0,?,?)";
conn = this.conn;
ps = conn.prepareStatement(SQL01);
ps.setInt(1, prof.getId());//NESTA LINHA DÁ ERRO DIZENDO QUE O OBJETO É NULO
ps.setString(2, avaliacao.getDescricao());
ps.executeUpdate();[/code]
Com certeza seu o “ControladorValidaLogin” está na sessão (pressupondo que está mapeado no faces-config). O mesmo não posso dizer de “Usuario” (não vi seu faces-config).
Com certeza seu o “ControladorValidaLogin” está na sessão (pressupondo que está mapeado no faces-config). O mesmo não posso dizer de “Usuario” (não vi seu faces-config).[/quote]
Z,
Então no código abaixo
usuario se refere ao nome que dei ao Managed Bean quando o mapeio?