Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di nulele
    Registrato dal
    Jun 2003
    Messaggi
    107

    [JAVA - TOMCAT] Connessione a SQL Server

    Ciao a tutti,
    devo creare un'applicazione java che si connetta ad un database SQL Server... fino ad oggi ho sempre usato MySQL e per connettermi utilizzavo questo codice all'interno del file web.xml contenuto nella cartella WEB-INF della webapp di Tomcat:

    codice:
    <context-param>
      <param-name>Driver</param-name>
      <param-value>com.mysql.jdbc.Driver</param-value>
    </context-param>
    <context-param>
      <param-name>ConnectionURL</param-name>
      <param-value>jdbc:mysql://localhost/NOME_DEL_DB</param-value>
    </context-param>
    <context-param>
      <param-name></param-name>
      <param-value>USERNAME</param-value>
    </context-param>
    <context-param>
      <param-name>PASSWORD</param-name>
      <param-value></param-value>
    </context-param>
    Il fatto è che non trovo nulla si simile per SQL Server... gli unici esempi trovati mi dicono di scaricarmi il driver della Microsoft, di installarlo e di creare un file di connessione che non ho capito dove vada messo e come va configurato...

    Qualcuno può aiutarmi?
    Grazie in anticipo a chi mi risponde!

  2. #2
    Utente bannato
    Registrato dal
    Feb 2005
    Messaggi
    43

    Ciao sono Rude(Quello del corso )...
    oggi sei un ragazzo fortunato, ho fatto quello che ti serve proprio ieri..
    codice:
      
    
      <context-param>
        <param-name>driver</param-name>
        <param-value>net.sourceforge.jtds.Driver</param-value>
        <description>JDBC driver class</description>
      </context-param>
    
      <context-param>
        <param-name>url</param-name>
        <param-value>jdbc:jtds:sqlserver://localhost/NOME_WEBAPPS</param-value>
        <description>Database connection URL</description>
      </context-param>
    il connector lo trovi qui ..
    quello giusto è jtds-1.0.2-dist.zip
    come al solito scompatti il tutto(dove non importa tanto ti serve solo il file .jar) e metti il file .jar nella cartella lib


    Enjoy

  3. #3
    Utente di HTML.it L'avatar di nulele
    Registrato dal
    Jun 2003
    Messaggi
    107
    MA GRANDE, ma chi si vede?
    Grazie, anche se i dubbi rimangono perchè col tuo metodo non so dove inserire username e password... comunque ho trovato un modo consultando il sito di Microsoft...

    in pratica il Props non cambia, la connessione al driver nel manager nemmeno, bisogna solo modificare il web.xml così:

    codice:
    <context-param>
      <param-name>Driver</param-name>
      <param-value>com.microsoft.jdbc.sqlserver.SQLServerDriver</param-value>
    </context-param>
    <context-param>
      <param-name>ConnectionURL</param-name>
      <param-value>jdbc:microsoft:sqlserver://qui ci va l'IP del pc su cui è sqlserver</param-value>
    </context-param>
    <context-param>
      <param-name>Username</param-name>
      <param-value>qui ci va l'username</param-value>
    </context-param>
    <context-param>
      <param-name>Password</param-name>
      <param-value>qui ci va la password</param-value>
    </context-param>
    inoltre devi scaricarti i driver dal sito Microsoft che si chiamano "Microsoft SQL Server 2000 Driver for JDBC" e mettere i 3 .jar dentro alla cartella C:\Programmi\Microsoft SQL Server 2000 Driver for JDBC\lib, creata dall'installer, dentro al classpath!

    è tutto spiegato a questoindirizzo: http://support.microsoft.com/default.aspx?scid=kb;en-us;313100

    Io sinceramente devo ancora provare perchè qui tomcat è installato con apache e non trovo la sua console, quindi ho degli errori ma non so dove sono e sto impazzendooooooo!!!!

    grazie ancora Rude, saluta anche Daniele...

  4. #4
    Utente bannato
    Registrato dal
    Feb 2005
    Messaggi
    43
    Si cambia solo l'xml...
    eh vabè per user e pass avevo sottinteso... si settano uguali a quelli per mysql,devi farti dare la pass da chi ha installato sqlserver però... lo user dovrebbe essere SA di default.
    Cmq fammi sapere se riesci a far andare tutto...

  5. #5
    Utente di HTML.it L'avatar di nulele
    Registrato dal
    Jun 2003
    Messaggi
    107
    Io non ci salto fuori...
    - non ho toccato il Props
    - non ho toccato il manager
    - Ho copiato jtds-1.0.2.jar dentro alla cartella common\lib di tomcat
    - per sicurezza l'ho copiato anche nella cartella lib della webapp dentro a classes
    - ho inserito il percorso di jtds-1.0.2.jar nel classpath
    - ho modificato l'xml in questo modo:

    codice:
    		
    		  <context-param>
    		    <param-name>Driver</param-name>
    		    <param-value>net.sourceforge.jtds.Driver</param-value>
    		    <description>JDBC driver class</description>
    		  </context-param>
    		  <context-param>
    		    <param-name>ConnectionURL</param-name>
    		    <param-value>jdbc:jtds:sqlserver://192.168.168.23/target</param-value>
    		    <description>Database connection URL</description>
    		  </context-param>
    		  <context-param>
    		 	<param-name>Username</param-name>
    			<param-value>sa</param-value>
    		  </context-param>
    		  <context-param>
    			<param-name>Password</param-name>
    			<param-value>target04</param-value>
    		  </context-param>
    SPECIFICO che non ho il DB in locale ma su una macchina all'indirizzo specificato sopra... ti sembra corretto?

    Inoltre, quando lancio una ricerca la console di tomcat mi da un errore alla riga di caricamento del driver... puoi controllare se va bene? Cazzo è uguale a quello di Garuti!!!

    codice:
    // Assegno le varibili di connessione
    				String dbDriver = context.getInitParameter("Driver");
    				System.out.println("Driver: "+dbDriver);
    				String dbConnectionURL = context.getInitParameter("ConnectionURL");
    				System.out.println("URL: "+dbConnectionURL);
    				String username = context.getInitParameter("Username");
    				System.out.println("username: "+username);
    				String password = context.getInitParameter("Password");
    				System.out.println("password: "+password);
    				props = new Props(dbDriver, dbConnectionURL, username, password);
    				
    				// Carico i driver di connessione
    				try {
    				    Class.forName(dbDriver);
    				} catch(ClassNotFoundException ex) {
    				  ex.printStackTrace();
    				}
    AIUTTTOOOOOO!!!

  6. #6
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Posta il tipo di eccezione che ti da.. altrimenti non sapremo mai che succede.. a primo impatto mi sembra manchi il numero di porta nella stringa di connessione; ad esempio nel caso di oracle si fa:

    jdbcracle:thin:@oradbserv:1521radbdev
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  7. #7
    Utente di HTML.it L'avatar di nulele
    Registrato dal
    Jun 2003
    Messaggi
    107
    E' una cosa vergognosa... l'errore era la mancanza della parola "jdbc" nel valore del Driver... ovvero ho scritto:

    <PARAM-VALUE>net.sourceforge.jtds.jdbc .Driver</PARAM-VALUE>

    ho scoperto la sistassi del driver consultando la documentazione del connector di sourceforge!

    Ho tribolato 2 ore per 4 lettere! 4 LETTERE! mapporcaput...

    Comunque adesso funziona e ancora non so perchè... ma chissenegfrega!

    Grazie comunque a Rude, senza il quale non sarei mai riuscito nemmeno a cominciare!

    Programmate gente, programmate...

  8. #8
    Utente bannato
    Registrato dal
    Feb 2005
    Messaggi
    43
    VVoVe: cavoli hai ragione... mio errore di trascrizione... la prossima volta vedrò di essere meno sbadato scusa...

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.