Exercício Deitel JSP

Galera to fazendo um exercício do Deitel cap 24 sobre o Livro de Visitas.

é mais ou menos assim: tenho uma classe que utilizo como meu Bean. Tenho uma outra classe onde há o acesso ao banco e tenho as JSP’s que fazem a parte visual com o usuario. QUando eu tento inserir um novo cadastro no JSP e clico no botão Submit ele me retorna uma exception:

"Não pode dar commit quando autocommit=true".

Alguém sabe o que é?? VLw…

Essa mensagem, muito provavelmente, é personalizada dentro de uma classe sua. Localize o nde é gerada essa exceção e você descobrirá oque está acontecendo.

Mas o que parece é que você esta executando um commit quando não precisa, pois é autocommit… Se a mensagem está correta é só ler mensagem.

é estranho pq eu ja tentei descobrir de onde vem essa mensagem e não encontrei…é exatamente essa a mensagem q e é retornada…

Eu acredito que esse erro seja porque a Connection que você está usando já possui o autoCommit = true
e mesmo assim, depois que o sql é executado, você da um commit.

tenta setar o autoCommit da sua Connection false.

Seria algo assim:

Connection conn = null;  
conn.setAutoCommit(false);
PreparedStatement pstmt = null;  
ResultSet rs4 = null;  
try   
    {                   
         String query = "UPDATE user.tablex "+  
                                "SET co_erro = ? "+                                
                                "WHERE nu_rg = ? ";  
               
         conn = getConnection();           
         pstmt = conn.prepareStatement(query);  
         pstmt.setInt(1,3);
         pstmt.setInt(2,rg[0]);  
         pstmt.executeUpdate();            
         conn.commit();  
     }  catch (SQLException e)  {   
             throw e;   
     }  finally {   
             closeConnection(conn, pstmt, rs);             
}  

Espero ter ajudado.
att
[]s