Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [JAVA] jsp e mysql: eccezione che non mi convince.

    Ciao a tutti,
    chiedo aiuto perchè sto imparando a costruire pagine jsp ed ho un problema con l'interazione con un database MySql.

    Il codice per la connessione è:
    codice:
    <%
    // Connessione DB
    
    Connection conn = null;
    Statement st = null;
    ResultSet rs = null;
    
    
    try{
    	Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    
    	conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://IP_DEL_SERVER ;databasename=NOME_DATABASE", "USER_NAME", "PASSWORD");
    
    	st = conn.createStatement();
    
    	rs = st.executeQuery("SELECT * FROM libri");
    
    }
    catch(Exception ex){
    	ex.printStackTrace();
    }
    finally{
      conn.close();
    }
    %>

    Se nel body della pagina richiamo il ResultSet rs, mi da la seguente eccezione:

    codice:
    javax.servlet.ServletException: [Microsoft][SQLServer 2000 Driver for JDBC]Object has been closed.
    	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:846)
    	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)
    	org.apache.jsp.scelta2_jsp._jspService(org.apache.jsp.scelta2_jsp:115)
    	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:99)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:325)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    non mettendo la chiusura della connessione nel "finally" (ma mettendola in fondo alla pagina), la pagina viene eseguita correttamente.

    Qualcuno sa darmi consigli per risolvere questo prblema ???

    Grazie.
    Perchè camminare quando posso volare ??
    http://www.fkc.it

  2. #2
    ma dopo questo pezzo di codice utilizzi ancora lo statement?
    la connessione devi chiuderla dopo che hai finito di utilizzare il ResultSet e lo Statement che dovresti chiudere come la connessione


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.