Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.lang.ClassNotFoundException:oracle.jdbc.driver.OracleDriver_Java_Servlets_Jdbc_Tomcat7 - Fatal编程技术网

java.lang.ClassNotFoundException:oracle.jdbc.driver.OracleDriver

java.lang.ClassNotFoundException:oracle.jdbc.driver.OracleDriver,java,servlets,jdbc,tomcat7,Java,Servlets,Jdbc,Tomcat7,我编写了一个JavaServlet程序,但当我运行它时,它显示了异常 java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver 我的代码是 package skypark; import java.io.*; import javax.servlet.*; import java.text.*; import javax.servlet.http.*; import java.sql.*; import java.sq

我编写了一个JavaServlet程序,但当我运行它时,它显示了异常

java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
我的代码是

package skypark;

import java.io.*;
import javax.servlet.*;
import java.text.*;
import javax.servlet.http.*;
import java.sql.*;
import java.sql.Date;

public class Registration extends HttpServlet {

    private static final long serialVersionUID = 1L;

    public static Connection prepareConnection() throws ClassNotFoundException, SQLException {
        String dcn = "oracle.jdbc.driver.OracleDriver";
        String url = "jdbc:oracle:thin:@JamesPJ-PC:1521:skypark";
        String usname = "system";
        String pass = "tiger";
        Class.forName(dcn);
        return DriverManager.getConnection(url, usname, pass);
    }

    public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html");
        PrintWriter out = resp.getWriter();

        try {
            String phone1, dofb, date1, month, year, uname, fname, lname, address, city, state, country;
            String pin, email, password, gender, lang, qual, relegion, privacy, hobbies, fav;

            uname = req.getParameter("uname");
            fname = req.getParameter("fname");
            lname = req.getParameter("lname");
            date1 = req.getParameter("date");
            month = req.getParameter("month");
            year = req.getParameter("year");
            address = req.getParameter("address");
            city = req.getParameter("city");
            state = req.getParameter("state");
            country = req.getParameter("country");
            pin = req.getParameter("pin");
            email = req.getParameter("email");
            password = req.getParameter("password");
            gender = req.getParameter("gender");
            phone1 = req.getParameter("phone");

            lang = "";
            qual = "";
            relegion = "";
            privacy = "";
            hobbies = "";
            fav = "";

            dofb = date1 + "-" + month + "-" + year;
            int phone = Integer.parseInt(phone1);
            DateFormat formatter;
            java.util.Date dob;
            formatter = new SimpleDateFormat("dd-MM-yy");
            dob = formatter.parse(dofb);

            Connection con = prepareConnection();
            String Query = "Insert into regdetails values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
            PreparedStatement ps = con.prepareStatement(Query);

            ps.setString(1, uname);
            ps.setString(2, fname);
            ps.setString(3, lname);
            ps.setDate(4, (Date) dob);
            ps.setString(5, address);
            ps.setString(6, city);
            ps.setString(7, state);
            ps.setString(8, country);
            ps.setString(9, pin);
            ps.setString(10, lang);
            ps.setString(11, qual);
            ps.setString(12, relegion);
            ps.setString(13, privacy);
            ps.setString(14, hobbies);
            ps.setString(15, fav);
            ps.setString(16, gender);

            int c = ps.executeUpdate();

            String query = "insert into passmanager values(?,?,?,?)";
            PreparedStatement ps1 = con.prepareStatement(query);

            ps1.setString(1, uname);
            ps1.setString(2, password);
            ps1.setString(3, email);
            ps1.setInt(4, phone);

            int i = ps1.executeUpdate();

            if (c == 1 || c == Statement.SUCCESS_NO_INFO && i == 1 || i == Statement.SUCCESS_NO_INFO) {
                out.println("<html><head><title>Login</title></head><body>");
                out.println("<center><h2>Skypark.com</h2>");
                out.println("<table border=0><tr>");
                out.println("<td>UserName/E-Mail</td>");
                out.println("<form action=login method=post");
                out.println("<td><input type=text name=uname></td>");
                out.println("</tr><tr><td>Password</td>");
                out.println("<td><input type=password name=pass></td></tr></table>");
                out.println("<input type=submit value=Login>");
                out.println("</form></body></html>");
            } else {
                out.println("<html><head><title>Error!</title></head><body>");
                out.println("<center><b>Given details are incorrect</b>");
                out.println(" Please try again</center></body></html>");
                RequestDispatcher rd = req.getRequestDispatcher("registration.html");
                rd.include(req, resp);
                return;
            }
        } catch (ClassNotFoundException cnfe) {
            out.println("<html><head><title>Error!</title><body>");
            out.println("<b><i>Class not found " + cnfe + "</i></b>");
            out.println("</body></html>");
        } catch (SQLException sqle) {
            out.println("<html><head><title>Error!</title><body>");
            out.println("<b><i>Unable to process try after some time Sql error</i></b>");
            out.println("</body></html>");
        } catch (ParseException e) {
            out.println("<html><head><title>Error!</title><body>");
            out.println("<b><i>Unable to process Parseint exc " + e + "</i></b>");
            out.println("</body></html>");
        }

        out.flush();
        out.close();
    }
}
当我给

 java oracle.jdbc.driver.OracleDriver 
命令提示符中的命令,它显示以下行

Error: Main method not found in class oracle.jdbc.driver.OracleDriver, please define the main method as:
       public static void main(String[] args)

您已经在web应用程序的lib文件夹中复制了classes12.jar,并在eclipse中设置了类路径

在包资源管理器中右键单击项目 生成路径->添加外部存档

选择ojdbc6.jar归档文件

按OK

仔细阅读,仔细做

现在应该在包资源管理器下的“引用的库”中引用该库。
现在再次尝试运行您的程序。

通过
C:\apache-tomcat-7.0.47\lib
路径(此路径可能因您安装tomcat服务器的位置而异),然后通过
ojdbc14.jar
,如果它不包含


然后在eclipse中重新启动服务器,然后在服务器上运行应用程序

我遇到了类似的错误,但在将ojdbc14.jar复制到lib文件夹后,没有其他异常。(从某处复制ojdbc14.jar并将其粘贴到WebContent内的lib文件夹中。)

我遇到了同样的问题,但通过执行以下操作可以修复它:

右键单击项目->属性,然后在部署程序集中添加JAR(odjbc6或14)文件。

我也得到了同样的结果 有点错误,但之后 复制 将ojdbc14.jar转换为lib 文件夹,没有了 例外情况(副本) 来自的ojdbc14.jar 在某处粘贴 将其保存到lib文件夹中 内部网络内容。)

团队! 要从Servlet执行SQL查询,您应该在文件夹中添加JDBCJAR库

WEB-INF/lib
在此之后,您可以调用驱动程序,例如:

Class.forName("oracle.jdbc.OracleDriver");
现在Y可以使用到DB服务器的连接


==>73

尝试通过服务器库“C:\apache-tomcat-7.0.47\lib”添加ojdbc6.jar


然后在eclipse中重新启动服务器。

是的,我复制了classes12.jar ad ojdbc14.jar您使用的是哪个oracle版本8i或10g我使用的是oracle 11g r2,然后使用ojdbc6.jar并删除classes12.jar和ojdbc14.jar以及Class.forName(“oracle.jdbc.OracleDriver”);看到这里,我将lib文件夹中的jar文件更改为ojdbc6,将class.forName更改为oracle.jdbc.OracleDriver,现在它还显示了java.lang.ClassNotFoundException:oracle.jdbc.oracledriverRoracedriver不包含main方法。如果没有相应的容器(如tomcat),则无法启动servlet。。。调用
java-oracle.jdbc.driver.OracleDriver
没有任何意义。+1这为我解决了问题。@Ravikumar D G:+1也为我解决了问题。事实上,这太棒了。。我的问题是解决了。你的答案涉及特定的IDE和设置,但我认为OP是不同的。他们似乎还将这个jar添加到了他们的类路径中。这对我来说很有效。我甚至从类路径中的不同位置引用了ojdbc6.jar文件,但是这个lib文件也必须有它的副本。不需要重新启动。
Class.forName("oracle.jdbc.OracleDriver");