web-dev-qa-db-fra.com

oracle.jdbc.driver.OracleDriver ClassNotFoundException

Ceci est mon code pour lequel je reçois une erreur. Mon classes12.jar a été importé en tant que jar externe.

import Java.io.IOException;
import Java.io.PrintWriter;
import Java.sql.Connection;
import Java.sql.DriverManager;
import Java.sql.ResultSet;
import Java.sql.SQLException;
import Java.sql.Statement;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class LoginAction extends HttpServlet {
Connection conn;
Statement stmt;
ResultSet rs;
String query = "SELECT * FROM v_urja_login";
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    PrintWriter out = response.getWriter();
    out.println("Hello");
    String u_name = request.getParameter("uname");
    String u_pass = request.getParameter("upass");
    out.println(u_name);
    out.println(u_pass);
    try{
        Class.forName("Oracle.jdbc.driver.OracleDriver");
        conn = DriverManager.getConnection("jdbc:Oracle:thin:@localhost:1521:XE","urja","urja");
        stmt = conn.createStatement();
        rs = stmt.executeQuery(query);
    }catch(SQLException sex){
        sex.printStackTrace();
    } catch (ClassNotFoundException cnf) {
        cnf.printStackTrace();
    }
}
}

Trace de la pile:

Java.lang.ClassNotFoundException: Oracle.jdbc.driver.OracleDriver
    at org.Apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.Java:1714)
    at org.Apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.Java:1559)
    at Java.lang.ClassLoader.loadClassInternal(ClassLoader.Java:320
    at Java.lang.Class.forName0(Native Method)
    at Java.lang.Class.forName(Class.Java:169)
    at LoginAction.doPost(LoginAction.Java:27)
    at javax.servlet.http.HttpServlet.service(HttpServlet.Java:647)
    at javax.servlet.http.HttpServlet.service(HttpServlet.Java:728)
    at org.Apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.Java:305)
    at org.Apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.Java:210)
    at org.Apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.Java:222)
    at org.Apache.catalina.core.StandardContextValve.invoke(StandardContextValve.Java:123)
    at org.Apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.Java:472)
    at org.Apache.catalina.core.StandardHostValve.invoke(StandardHostValve.Java:171)
    at org.Apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.Java:99)
    at org.Apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.Java:931)
    at org.Apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.Java:118)
    at org.Apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.Java:407)
    at org.Apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.Java:1004)
    at org.Apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.Java:589)
    at org.Apache.Tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.Java:310)
    at Java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.Java:886)
    at Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:908)
    at Java.lang.Thread.run(Thread.Java:619)
3
Mavrick
   Class.forName("Oracle.jdbc.driver.OracleDriver");

Cette ligne provoque ClassNotFoundException, car vous n'avez pas placé le fichier ojdbc14.jar dans votre dossier lib du projet. ou vous n'avez pas défini la classpath du bocal requis

9
Pragnani

Java.lang.ClassNotFoundException: Oracle.jdbc.driver.OracleDriver

Ajoutez simplement le ojdbc14.jar à votre chemin de classe.

Voici les étapes à suivre pour ajouter ojdbc14.jar dans Eclipse:

1) Dans votre projet

2) Bibliothèques

3) Faites un clic droit sur la bibliothèque système JRE

4) chemin de construction

5) Sélectionnez Configure Build Path

6) Cliquez sur Ajouter des fichiers JAR externes ...

7) C:\oraclexe\app\Oracle\produit\10.2.0\serveur\jdbc\lib

8) Ici, vous obtiendrez ojdbc14.jar

9) sélectionnez ici

10) ouvert

11) ok

sauvegardez et exécutez le programme que vous obtiendrez en sortie.

6
Karthik Reddy

Dans Eclipse, cliquez avec le bouton droit sur votre application. 

Exécuter en tant que -> Exécuter les configurations -> sélectionnez votre serveur dans tapez la zone de texte du filtre  

Puis dans Classpath sous Entrées d'amorçage ajoutez votre classes12.jar Fichier et cliquez sur Appliquer .
Maintenant, lancez le fichier ...... Cela a fonctionné pour moi !!

3
Ampati Hareesh

1.Cliquez à droite sur votre projet Java.

2.Sélectionnez "RUN AS".

3.Sélectionnez "RUN CONFIGURATIOS ...".

4.Here sélectionnez votre serveur sur le côté gauche de la page et vous verrez alors l'onglet "CLASS PATH" sur le côté droit, cliquez simplement dessus.

5.Cliquez sur "ENTREES UTILISATEUR" et sélectionnez "AJOUTER DES POTS EXTERNES".

6.Sélectionnez le fichier "ojdbc14.jar".

7.Cliquez sur Apply.

8.Cliquez sur Exécuter.

9. Enfin redémarrez votre serveur alors il serait exécuter.

0
Rambabu

essayez d'ajouter ojdbc6.jar ou une autre version via la bibliothèque de serveur "C:\Apache-Tomcat-7.0.47\lib",

Puis redémarrez le serveur dans Eclipse.

0
zedtimi

Dans Eclipse,

Lorsque vous utilisez JDBC dans votre servlet, le fichier jar du pilote doit être placé dans le répertoire WEB-INF/lib de votre projet.

0
Sanchi Bansal

Méthode 1: Télécharger ojdbc.jar

ajoutez ojdbc6.jar au déploiement Assembly. Faites un clic droit sur le projet-> Propriétés-> sélectionnez le déploiement Assemblage-> cliquez sur 'Ajouter' -> sélectionnez 'Archives à partir du système de fichiers' -> accédez au dossier où ojdbc6.jar est enregistré .-> ajoutez le jar-> cliquez sur Terminer -> Appliquer/OK.

Méthode 2:

si vous souhaitez ajouter ojdbc.jar à vos dépendances maven, suivez ce lien: http://www.mkyong.com/maven/how-to-add-Oracle-jdbc-driver-in-your-maven-local -repository/ . . Même si vous utilisez un projet maven, il n’est pas nécessaire d’ajouter ojdbc aux dépendances maven (méthode 2), la méthode 1 (ajout direct au déploiement Assembly) fonctionne très bien.

0
Ayush Srivastava