in
La comunità italiana dedicata a Sviluppatori e Architetti IT delle piattaforme Windows

Errore:DriverODBC

Ultimo messaggio ricevuto il 24-10-2006 13.37 da mdb. 4 risposta(e).
Pagina 1 di 1 (5 elemento/i)
Ordina messaggi: Precedente Successivo
  • 20-10-2006 12.27

    • mdb
    • Utente Top 500
    • Registrato il 20-10-2006
    • Messaggi 3

    Errore:DriverODBC

    Ciao , faccio sviluppo in java ma sono una principiante. ho il seguente Pb.

    Ho fatto un'applicazione web costituita da una servlet che si connette ad un db access ed esegue una query per poi richiamare due jsp di visualizzazione. Utilizzo come webservice NetBeans vs.5

      Il progetto viene compilato,deployato e mandato in esecuzione senza indicazione di errori

    ma quando dal browser richiamo la jsp mi visualizza una pagina vuota.

    ho controllato il file di log e mi da il messaggio sqlexception: no data found.

    Vi dico che ho generato il db su tomcat e il driver odbc e effettuando il test di connessione

    questa viene effettuata correttamente , però non mi fa visualizzare la tabella che ho creato e mi appare il seguente mes. di errore:

    connection is broken Driver ODBC: caratteristica opzionale non implementata.

    che significa?

    scusate se non sono stata abbastanza chiara

    il codice della servlet è il seguente:

    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.io.*;
    import java.sql.*;
    import javax.naming.*;
    import javax.sql.*;
    import java.util.*;
    import it.dbInfo.beans.*;


     public  class ProvincieServlet extends HttpServlet{
        public void doGet(HttpServletRequest req,HttpServletResponse resp)
         throws ServletException, IOException
        {  
            String action=req.getParameter("action");
            String forward="";
            try{
      
       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver",true,this.getClass().getClassLoader());
         }catch(ClassNotFoundException e)
         {e.printStackTrace();}
      Connection con = getconnection();
     if (con == null) {
      throw new ServletException("Errore Connesione al DB");
     }
         if(action==null || action.equals("")){
          ProvinceBean provincieBean= null;
         provincieBean = getProvincie(con);

        if(provincieBean!=null) {
       req.setAttribute("provincie",provincieBean);
                     forward="/listaProvincie.jsp";
      }
            }
     else if (action.equalsIgnoreCase("dettaglio")){
       String siglaProvincia=req.getParameter("siglaProvincia");
      ProvinciaBean provinciaBean = null;
      provinciaBean = getProvincia(con, siglaProvincia);
      if(provinciaBean!=null) {
       req.setAttribute("provincia",provinciaBean);
                     forward="/dettaglioProvincia.jsp";
      }        
                                                 
           } 

     try{
      con.close();}
            catch (Exception ex) { }

           if(!forward.equals("")) {
               RequestDispatcher rd = getServletContext().getRequestDispatcher(forward);
        rd.forward(req,resp);
       
     }
            
     
        
        } 
     
        private Connection getconnection(){
        Connection con=null;
      
         try{
        
               String url="jdbc:odbc:DSUtenti";
     
           con=DriverManager.getConnection(url);
         }   
          catch(Exception e){
           e.printStackTrace();
          }
          return con;
        }
        
        private ProvinceBean getProvincie(Connection con){
         ProvinceBean provincieBean = null;
              
              
         Statement stmt = null;
         ResultSet res = null;
         try{ 
          stmt=con.createStatement();
            String sql="select * from PROVINCIA";
            res=stmt.executeQuery(sql);
            Hashtable htProvince= new Hashtable();
             while(res.next()){
                ProvinciaBean provincia = new ProvinciaBean();
                provincia.setSiglaprovincia((res.getString(1)==null) ? "XX" : res.getString(1));
                provincia.setDescrizione((res.getString(2) == null) ? "Non definita" : res.getString(2));
             
               htProvince.put(provincia.getSiglaprovincia(),provincia);
         
             }
             provincieBean = new ProvinceBean();
            provincieBean.setProvincie(htProvince);
         }   
          catch(Exception e){
           e.printStackTrace();
         
          }
     finally {
      try {
       if (res!=null) res.close();
       if (stmt!=null) stmt.close();
      }
        catch (Exception ex) {
      }
     }
         return provincieBean;
       }
         
       private ProvinciaBean getProvincia(Connection con, String siglaProvincia){
             ProvinciaBean provinciaBean = null;
       Statement stmt = null;
      ResultSet res = null;
      try{ 
           stmt=con.createStatement();
             String sql="SELECT * FROM PROVINCIA WHERE sigla_prov ='"+siglaProvincia+"' ";
            res=stmt.executeQuery(sql);
             if(res.next()){
                provinciaBean = new ProvinciaBean();
                provinciaBean.setSiglaprovincia((res.getString(1)==null) ? "XX" : res.getString(1));
                provinciaBean.setDescrizione((res.getString(2) == null) ? "Non definita" : res.getString(2));
             }
            }   
          catch(Exception e){
           e.printStackTrace();
          }
     finally {
      try {
       if (res!=null) res.close();
       if (stmt!=null) stmt.close();
      }
       catch (Exception ex) {
      }
     }
         return provinciaBean;
       }
         
       
       }             

    mentre la jsp  listaProvincie è  questa:

    <%@ page import="java.util.*"%>
    <%@ page import="it.dbInfo.beans.*"%>
    <jsp:useBean id="provincie" class="it.dbInfo.beans.ProvinceBean" scope="request" />
    <jsp:useBean  id="provincia" class="it.dbInfo.beans.ProvinciaBean" scope="page" />
    <html>
      <head>
       <title>Lista delle Provincie
       </title>


      </head>
       <body>
      <form name="dettaglio" action="<%=request.getContextPath()%>/listaProvincie.do">
        <input type="hidden" name="action" value="dettaglio"/>
        <input type="hidden" name="siglaProvincia" value=""/>
      
      </form>
        <div align="center">
         <table>
          <caption>Elenco Provincie
          </caption>
           <tr>
            <th>sigla</th>
            <th>descrizione</th>
           </tr>
            <%Hashtable htProvince;
              htProvince=provincie.getProvincie();
              Enumeration enSigle=htProvince.keys();
              while(enSigle.hasMoreElements())
              {  
               provincia=(ProvinciaBean)htProvince.get(enSigle.nextElement());
               
            %>
              
            <tr style="cursor:hand;" onclick="BLOCKED SCRIPTdocument.dettaglio.siglaProvincia.value='<%=provincia.getSiglaprovincia()%>';document.dettaglio.submit();return false;" >
               <td><%=provincia.getSiglaprovincia()%></td>   
               <td><%=provincia.getDescrizione()%></td>  
            </tr>
            <% } %>
         </table>
        </div>
       </body>
     </html>

    Mi sto veramente scervellando.Spero che qualcuno mi possa consigliare qualcosa...

    Ciao a tutti e grazie in anticipo.

     


             
                 
               
        
       

     

     

     

     


     

    • Log
  • 20-10-2006 18.37 In risposta a

    Re: Errore:DriverODBC

    Potrebbe trattarsi di un banale errore di librerie "mancanti", tipico dell'accesso ad Access (con un bel gioco di parole...). Prova ad installare l'ultimo MDAC.
    • Log
  • 23-10-2006 13.43 In risposta a

    • mdb
    • Utente Top 500
    • Registrato il 20-10-2006
    • Messaggi 3

    Re: Errore:DriverODBC

    Ciao DevSpy, grazie per l'attenzione.

    Ho verificato e sul mio PC c'è già installato MDAC 2.8 (come sistema operativo ho Windows XP Home)  che da quanto scritto ul sito della microsoft è l'ultima versione.

    Tra l'altro ho provato a reinstallarlo ma nn mi fa neanche lanciare l'eseguibile.

    Ho anche ricontrollato le configurazioni di tomcat e mi sembra tutto apposto non riesco propio a capire xchè mi fa connettere al db ma quando provo a visualizzare la struttura della tabella mi porta quel messaggio d'errore che ti dicevo.

    La stessa applicazione con Weblogic  e costruendo il .war da linea di comando (su windows 98) funziona.

     

     

    • Log
  • 23-10-2006 15.04 In risposta a

    Re: Errore:DriverODBC

    Sicuro che le librerie di run-time Java siano installate correttamente?
    • Log
  • 24-10-2006 13.37 In risposta a

    • mdb
    • Utente Top 500
    • Registrato il 20-10-2006
    • Messaggi 3

    Re: Errore:DriverODBC

    Si credo di si. comunque oggi sono riuscita a far comparire i nodi con le tabella anche se ancora

    nn riesco a visualizzarla è il driver che nn  funziona bene o mi manca qualche parametro di configurazione forse .

    ti farò sapere grazie.

     

     

     

    • Log
Pagina 1 di 1 (5 elemento/i)
Prelevato da http://www.devspy.com/forums/p/4291/4990.aspx
DevSpy.com 6.0 © 2001-2008 - Alcuni Diritti Riservati
Salvo diversa indicazione, tutti i contenuti sono pubblicati sotto licenza "Creative Commons Attribution-Share Alike 3.0"