Comportement de Class.forName() dans un test Junit
cs_Luffy59
Messages postés1Date d'inscriptionjeudi 9 mars 2006StatutMembreDernière intervention23 avril 2008
-
23 avril 2008 à 18:21
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023
-
24 avril 2008 à 20:32
Bonjour,
Voila mon probleme, je cherche à acceder à une base de données depuis un test Junit et je ne peux pas charger le driver approprié.
Lorsque j'utilise la methode de la classe en dehors du test Junit pas de soucis mais dedans impossible de trouver la ressource :
static final String dbURL = "jdbc:derby://localhost:1527/myDB_fle"
static final String dbPassword = "xxx";
static final String dbUser = "xxx";
java.lang.ClassNotFoundException: org.apache.derby.jdbc.ClientDriver
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:402)
at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:347)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:83)
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)
Ombitious_Developper
Messages postés2333Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention26 juillet 201338 24 avril 2008 à 09:54
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 24 avril 2008 à 20:32
Salut,
Class.forName(xxx) va chercher la classe dans le classpath et ensuite charger le byte code de celle-ci en mémoire pour pouvoir l'instancier par la suite.
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."