Connexion MS sql 2005

Connexion MS sql 2005 - Java - Programmation

Marsh Posté le 24-04-2008 à 16:50:41    

Bonjour,
je voudrais réalisé une appli qui se connect a un base de donnée de type MS sql server 2005.
le probleme est pour l'instant que je n'arrive pas a "inclure" JDBC dans le jar enfin si mais il dit :
C:\Documents and Settings\topart>java -jar D:\jar\testsqlsv3.jar
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Unknown Source)
        at CSqlServer2005.Connect(CSqlServer2005.java:31)
        at MainVisu.<init>(MainVisu.java:23)
        at MainVisu.main(MainVisu.java:100)
 
alors que le driver JDBC pour sql server est bien inclue dans le .jar
voila je recherche en vain la solution :)
 
merci d'avance

Reply

Marsh Posté le 24-04-2008 à 16:50:41   

Reply

Marsh Posté le 25-04-2008 à 08:46:08    

Il ne faut pas inclure le JAR de SQLServer dans on JAR, mais le rajouter dans le classpath du manifest de ton JAR.
http://java.sun.com/docs/books/tutorial/deployment/jar/downman.html


---------------
Light is right
Reply

Marsh Posté le 28-04-2008 à 11:34:33    

je pense avoir réussi a avancé mais bon pas des masses :x
 
java mssv.jar
Exception in thread "main" java.lang.NoClassDefFoundError: mssv/jar
Caused by: java.lang.ClassNotFoundException: D:\workspace\mssv\mssv.jar
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
 
quand j'exécute le jar il me dit qu'il n'y a pas de main class définie alors que si!!
dans le manifest :
"Main-Class: maintest"
 
si vous avez une idée je suis pour :)

Reply

Marsh Posté le 28-04-2008 à 11:41:12    

Pour lancer un jar en ligne de commande il faut utiliser l'option -jar soit:
  java -jar mssv.jar


---------------
Light is right
Reply

Marsh Posté le 28-04-2008 à 11:50:11    

Ah oui oups :x
 
java -jar  mssv.jar
Exception in thread "main" java.lang.SecurityException: invalid SHA1 signature file digest  
for com/microsoft/sqlserver/jdbc/SQLServerException.class
        at sun.security.util.SignatureFileVerifier.verifySection(Unknown Source)
        at sun.security.util.SignatureFileVerifier.processImpl(Unknown Source)
        at sun.security.util.SignatureFileVerifier.process(Unknown Source)
        at java.util.jar.JarVerifier.processEntry(Unknown Source)
        at java.util.jar.JarVerifier.update(Unknown Source)
        at java.util.jar.JarFile.initializeVerifier(Unknown Source)
        at java.util.jar.JarFile.getInputStream(Unknown Source)
        at sun.misc.URLClassPath$JarLoader$2.getInputStream(Unknown Source)
        at sun.misc.Resource.cachedInputStream(Unknown Source)
        at sun.misc.Resource.getByteBuffer(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$000(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
 
 
voila


Message édité par vkzord le 28-04-2008 à 11:50:40
Reply

Marsh Posté le 28-04-2008 à 14:47:15    

re moi,
 
j'ai réussi a utilisé JDBC c'est bon mais maintenant j'ai une erreur :
 
pilote charger
com.microsoft.sqlserver.jdbc.SQLServerException: Échec de la connexion TCP/IP à l'hôte . java.net.UnknownHostException:  
 at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(Unknown Source)
 at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(Unknown Source)
 at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(Unknown Source)
 at java.sql.DriverManager.getConnection(Unknown Source)
 at java.sql.DriverManager.getConnection(Unknown Source)
 at CSqlServer2005.Connect(CSqlServer2005.java:32)
 at maintest.main(maintest.java:16)
not connected
 
j'ai définie l'URL comme ceci :

Code :
  1. pilote = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
  2.  userName = "sa";// login & mdp
  3.  password = "***";
  4.  url = "jdbc:sqlserver://localhost:1433";
  5. ...
  6.                                 Class.forName(pilote);
  7.                   Connection connexion = DriverManager.getConnection(url
  8.     + ";databaseName=ensam;" + "user=" + userName
  9.     + ";password=" + password);


Message édité par vkzord le 28-04-2008 à 14:56:58
Reply

Marsh Posté le 28-04-2008 à 22:44:38    

Essaye peut être en remplacant localhost par 127.0.0.1


---------------
Light is right
Reply

Marsh Posté le 29-04-2008 à 10:41:19    

bonjour,  
je te remercie nerisson :)  
mais j'ai toujours des problèmes il me dit "objet non valide"
quand je veux fair un select sur un table, il faut respecté les maj ? et mettre guest.Prodution ou simplement Prodution :'(  
je suis perdu jamais touché a MS sql server :/  
merci d'avance


Message édité par vkzord le 29-04-2008 à 10:41:46
Reply

Marsh Posté le 29-04-2008 à 11:49:53    

Déjà est-ce que ta connexion fonctionne ? Tu peut faire un "select 1" comme requête et voir si tu as une erreur ?
Ensuite il nous faudrait un peu plus de précision sur le schéma de ta base et la requête que tu veux y exécuter.


---------------
Light is right
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed